Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
learn:programmable-logic:tutorials:basys-3-general-io:start [2017/05/01 20:20] – [1. Generate the Project] Andrew Holzerlearn:programmable-logic:tutorials:basys-3-general-io:start [2022/03/31 23:10] (current) Arthur Brown
Line 1: Line 1:
 +====== Basys 3 General I/O Demo (Redirect) ======
 +~~NOSEMANTIC~~
 +~~REDIRECT>/programmable-logic/basys-3/demos/gpio~~
 +{{tag>redirect}}
  
-====== Basys 3 General I/O Demo ====== 
- 
-{{:basys3:basic_edit.jpg?500|}} 
- 
-===== Overview ===== 
-==== Features Used ==== 
- 
-|              ^ Not Used             ^ Used        ^ 
-^ 16 User Switches      |  X  | 
-^ 16 User LEDs  |    |  X  | 
-^ 5 User Push Buttons    |    X  | 
-^ 4-digit 7-Segment Display      |  X  | 
-^ 4 Pmod Connectors    X  |    | 
-^ XADC Analog Input    X  |    | 
-^ 12-bit VGA Output      |  X  | 
-^ USB-UART Bridge      |  X  | 
-^ Serial Flash for Application Data    X  |    | 
-^ USB HID Host With Mouse      |  X  | 
-^ USB HID Host With Keyboard    X  |    | 
- 
-==== Description ==== 
- 
-Introductory level demonstration project for the Basys3, designed using Vivado 2014.2. 
- 
------ 
-===== Prerequisites ===== 
- 
-===Skills=== 
-  * **Basic familiarity with Vivado** 
-    *  //This experience can be found by walking through our "Getting Started with Vivado" guide// 
- 
-===Hardware=== 
-  * **Basys3 FPGA board** 
-  * **Micro-USB cable** 
-  * **Monitor with a VGA port**  
-  * **VGA cable** 
-  * **USB mouse** 
- 
-===Software=== 
-  * **Vivado Design Suite 2016.4**  
-    * //Newer versions can be used, but the procedure may vary slightly// 
- 
------ 
- 
-===== Downloads ===== 
- 
-Basys 3 Support Repository -- [[https://github.com/Digilent/Basys-3-GPIO/archive/master.zip|ZIP]] [[https://github.com/Digilent/Basys-3-GPIO|GIT Repo]] 
- 
------- 
-===== How to...  ===== 
- 
- 
-==== 1. Generate the Project ==== 
- 
->1.1) Download the repository linked in the download section and place it in the location of your choosing.  
- 
->1.2) Generate the **GPIO** project by following this guide before continuing: [[vivado:github|How to Generate a Project from Digilent's Github]] 
- 
-==== 2. Build the Project ==== 
- 
->2.1) Click **Generate Bitstream** on the left hand menu towards the bottom. Vivado will run through both Run Synthesis and Run Implementation before it generates the bitstream automatically.  
-> 
->Note: If you want, you can click each step by itself in the order of **Run Synthesis**, **Run Implementation** and then **Generate Bitstream**. 
-> 
->{{:basys3:buildflow.png?600|}} 
- 
-==== 3. Program the Board ==== 
- 
->3.1) Once you have generated your bit file, Click on the hardware manager and connect to your board by choosing the local server option. 
-> 
->{{:basys3:device_connected.png?600|}} 
- 
->3.2) Click program to load the project onto your Basys3. 
- 
-==== 4. Run the Project ==== 
- 
-To run all the features of this demo, you will need the Basys3 board, a monitor with a VGA cable and a USB mouse. 
- 
->4.1) Using the Switches with Leds 
-> 
->For this section, all the switches are tied to their corresponding led. Every time a switch is toggled, the led directly above it will toggle with it. 
-> 
->{{:basys3:basic_edit.jpg?200|}} {{:basys3:leds_edited.jpg?200|}} 
- 
->4.2) Using the buttons with The Seven Segment Display 
-> 
->The seven segment display is counting all digits from 0 to 9 when no buttons are pressed. If BTNU is pressed, the first digit on the seven segment display is blacked out. BTNL blacks out the second digit, BTNR blacks out the third, and BTND eliminates the fourth. BTNC blacks out all the digits. 
-> 
->{{:basys3:btnu_edit.jpg?200|}} {{:basys3:btnr_edit.jpg?200|}} {{:basys3:btnl_edit.jpg?200|}} {{:basys3:btnd.jpg?200|}} 
- 
->4.3) Plugging in a monitor to the VGA port 
-> 
->To use the VGA output demo, plug in your monitor to the Basys3 VGA port. The monitor screen will have series of moving patterns as seen below.  
-> 
->{{:basys3:basic_edit.jpg?200|}} {{:basys3:20141030_122816.jpg?200|}} 
-> 
- 
->4.4) Plugging in and using a USB mouse 
-> 
->To see the USB mouse portion of the demo, plug a USB mouse into J2 on the Basys3 with the monitor still connected. On the screen, you should be able to see your mouse pointer and move it around.  
- 
->4.5) UART Communication 
-> 
->To see the UART communication channel, open a terminal program on your computer set to 9600 baud, 8 data bits, no parity bit and 1 stop bit. On reset or BTNC, the Basys3 will print BASYS3 GPIO/UART DEMO! to the terminal. On a button press other than BTNC, the terminal will print Button press detected! 
-> 
->{{:basys3:button_press_terminal.png?600|}} 
- 
-{{tag>learn programmable-logic tutorial basys-3}}