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:nexys-4-basic-user-demo:start [2017/03/14 20:04] – Andrew Holzerlearn:programmable-logic:tutorials:nexys-4-basic-user-demo:start [2022/10/04 11:38] (current) – external edit 127.0.0.1
Line 5: Line 5:
  
 ===== Overview ===== ===== Overview =====
-==== Features Used ==== 
- 
-|              ^ Not Used             ^ Used        ^ 
-^ 16 user switches   |    |  X  | 
-^ 16 user LEDs |    |  X  | 
-^ Two tri-color LEDs  |    |  X  | 
-^ 5 User Push Buttons    |    |  X  | 
-^ Two 4-digit 7-segment displays   |    |  X  | 
-^ 4 Pmod ports   |  X  |    | 
-^ Pmod for XADC signals   |  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  |    | 
-^ Micro SD card connector   |  X  |    | 
-^ PWM audio output   |    |  X  | 
-^ PDM microphone   |    |  X  | 
-^ 3-axis accelerometer   |  X  |    | 
-^ 16Mbyte CellularRAM   |  X  |    | 
-^ Temperature sensor   |  X  |    | 
-^ 10/100 Ethernet PHY   |  X  |    | 
  
 ==== Description ==== ==== Description ====
Line 45: Line 23:
 parity, and 1 stop bit. parity, and 1 stop bit.
  
 +==== Features Used ====
 +
 +|                                    ^ Not Used  ^ Used  ^
 +^ 16 user switches                   |           |   X   |
 +^ 16 user LEDs                       |           |   X   |
 +^ Two tri-color LEDs                 |           |   X   |
 +^ 5 User Push Buttons                |           |   X   |
 +^ Two 4-digit 7-segment displays     |           |   X   |
 +^ 4 Pmod ports                       |     X     |       |
 +^ Pmod for XADC signals              |     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     |       |
 +^ Micro SD card connector            |     X     |       |
 +^ PWM audio output                   |           |   X   |
 +^ PDM microphone                     |           |   X   |
 +^ 3-axis accelerometer               |     X     |       |
 +^ 16Mbyte CellularRAM                |     X     |       |
 +^ Temperature sensor                 |     X     |       |
 +^ 10/100 Ethernet PHY                |     X     |       |
  
 ------- -------
  
 ===== Prerequisites ===== ===== Prerequisites =====
- 
-===Skills=== 
-  * **Basic familiarity with Vivado** 
-    *  //This experience can be found by walking through our "Getting Started with Vivado" guide// 
  
 ===Hardware=== ===Hardware===
Line 60: Line 56:
  
 ===Software=== ===Software===
-  * **Vivado Design Suite 2015.X**  +  * **Vivado Design Suite 2016.4**  
-    * //Newer/older versions can be used, but the procedure may vary slightly//+    * //Newer versions can be used, but the procedure may vary slightly//
  
 ----- -----
  
 ===== Downloads ===== ===== Downloads =====
-Nexys4 Support Repository -- [[https://github.com/Digilent/Nexys4/archive/master.zip|ZIP]] [[https://github.com/Digilent/Nexys4|GIT Repo]]+Nexys 4 GPIO Demo Project Repository -- [[https://github.com/Digilent/Nexys-4-GPIO/releases/download/v2016.4-1/Nexys-4-GPIO-2016.4-1.zip|ZIP]] [[https://github.com/Digilent/Nexys-4-GPIO|GIT Repo]]
  
 ------- -------
-===== How to... ===== 
  
 +===== Download and Launch the Nexys 4 GPIO Demo =====
  
 +>1) Follow the [[:learn:programmable-logic:tutorials:github-demos:start|Using Digilent Github Demo Projects]] Tutorial. This is an HDL design project, and as such does not support Vivado SDK, select the tutorial options appropriate for a Vivado-only design. Return to this guide when prompted to check for extra hardware requirements and setup.
  
-==== 1. Generate the Project ==== +>2) In order to fully use the demo, you will need to connect a serial terminal to your Nexys 4. Plug your board into your computer with a Micro USB cable and make sure the board is turned on. Then open a serial terminal (such as TeraTerm) on your computer. In the terminal application, setup the serial port to connect to the appropriate port for your board, with a baud rate of 9600. Then return to the Github Projects Tutorial to finish programming and running the demo. 
- +> 
->1.1) Download the repository linked in the download section and unzip it in the location of your choosing. +>{{:learn:programmable-logic:tutorials:nexys-4-basic-user-demo:n4-gpio-tera-new.png?300|}} {{:learn:programmable-logic:tutorials:nexys-4-basic-user-demo:n4-gpio-tera-setup.png?300|}}
  
->1.2) Generate the **GPIO** project in the Projects folder by following this guide before continuing: [[vivado:github|How to Generate a Project from Digilent's Github]]+===== Using the Nexys 4 GPIO Demo =====
  
-==== 2. Build the Project ====+==== 1. Using the Switches with LEDs ====
  
->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. +>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. If the center push button is pressed, all the LEDs will be tied to ground 
 > >
->Note: If you want, you can click each step by itself in the order of **Run Synthesis**, **Run Implementation** and then **Generate Bitstream**. +>{{:nexys:nexys4:20141118_142412.jpg?300|}} {{:nexys:nexys4:20141118_142440.jpg?300|}}
-> +
->{{:basys3:buildflow.png?600|}}+
  
-==== 3. Program the Board ====+==== 2. Seven Segment Display ====
  
->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.+>The 7-segment display counts from 0 to 9 on each of its 8 digits. This count is reset when the center button is pressed. Also, single anodes of the 7-segment display are blanked by holding BTNU, BTNL, BTND, or BTNR. Holding the center button blanks all the 7-Segment anodes.
 > >
->{{:nexys4-ddr:deviceconnected.jpg?600|}}+>{{:nexys:nexys4:gpio9.jpg?250|}}{{:nexys:nexys4:gpio8.jpg?250|}}{{:nexys:nexys4:gpio11.jpg?250|}}{{:nexys:nexys4:gpio13.jpg?250|}}{{:nexys:nexys4:gpio12.jpg?250|}}
  
->3.2) Click program to load the project onto your Nexys4.+==== 3. Tri-color LEDs ====
  
-==== 4. Run the Project ====+>The two tri-color LEDs are set to gradually change colors at all times. The user cannot affect them in this demonstration.
  
-This portion will help you run the demo and observe all its features.+==== 4. Microphone to PWM Output ====
  
->4.1) Using the Switches with Leds+>The microphone which is next to Pmod connector JC, records audio data and sends it to the mono audio output located at J8. To listen to the mics output, you will need to plug in headphones or a speaker. 
 > >
->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. If the center push button is pressed, all the Leds will be tied to ground  +>{{:nexys:nexys4:gpio14.jpg?300|}}
-> +
->{{:nexys:nexys4:20141118_142412.jpg?300|}} {{:nexys:nexys4:20141118_142440.jpg?300|}}+
  
->4.2 Seven Segment Display +==== 5. UART Messages ====
-> +
->The 7-Segment display counts from 0 to 9 on each of its 8 digits. This count is reset when the center button is pressed. Also, single anodes of the 7-Segment display are blanked by holding BTNU, BTNL, BTND, or BTNR. Holding the center button blanks all the 7-Segment anodes. +
-> +
->{{:nexys:nexys4:gpio9.jpg?250|}}{{:nexys:nexys4:gpio8.jpg?250|}}{{:nexys:nexys4:gpio11.jpg?250|}}{{:nexys:nexys4:gpio13.jpg?250|}}{{:nexys:nexys4:gpio12.jpg?250|}}+
  
->4.3) Tri-color Leds +>On startup or reset of the demo, the message "NEXYS4 GPIO/UART DEMO!" is sent over UART to your serial terminal application. Whenever the right, left, up, or down button is pressed, the message "Button press detected!" will be sent.
->   +
->The two tri-color leds are set to gradually change colors at all times. The user cannot affect them in this demonstration. +
- +
->4.4) Microphone to PWM Output+
 > >
->The microphone which is next to Pmod connector JC, records audio data and sends it to the mono audio output located at J8. To listen to the mics output, you will need to plug in headphones or a speaker.  +>{{:learn:programmable-logic:tutorials:nexys-4-basic-user-demo:n4-gpio-tera.png?400|}}
-> +
->{{:nexys:nexys4:gpio14.jpg?300|}}+
  
-{{tag>learn programmable-logic tutorial nexys-4}}+{{tag>learn programmable-logic project nexys-4}}