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:arty-z7-xadc-demo:start [2017/03/22 12:31] – [Downloads] Monica Ignatlearn:programmable-logic:tutorials:arty-z7-xadc-demo:start [2022/10/04 11:38] (current) – external edit 127.0.0.1
Line 6: Line 6:
 ===== Overview ===== ===== Overview =====
  
-A project that instantiates the XADC IP Core and measures an analog voltage+==== Description ==== 
 + 
 + 
 +A project that instantiates the XADC IP Core and measures an analog voltage, this simple XADC demo is a Verilog project made to demonstrate the ADC functionality of the Arty Z7. 
 +  
 +  * The LED associated with a specific channel brightens when the read voltage goes up. 
 +  * The two user switches enable two XADC channels to be read from. 
 + 
 +This demo uses the chipKIT Analog connector, which has differential ports 1, 2, and 3 connected to the XADC pins 12, 0, and 8, respectively. This can be seen in the schematic below. 
 + 
 +{{:learn:programmable-logic:tutorials:arty-z7-xadc-demo:an.png?300|}} 
 ==== Features Used ==== ==== Features Used ====
  
Line 12: Line 23:
 ^ 2 user switches                    |           |   X   | ^ 2 user switches                    |           |   X   |
 ^ 2 user LEDs                        |           |   X   | ^ 2 user LEDs                        |           |   X   |
-^ 2 user RGB LEDs                    |           |   X   |+^ 2 user RGB LEDs                    |    X      |       |
 ^ 4 user push buttons                |    X      |       | ^ 4 user push buttons                |    X      |       |
 ^ USB-UART Bridge                    |    X      |       | ^ USB-UART Bridge                    |    X      |       |
Line 24: Line 35:
 ^ chipKIT connector for XADC signals |           |   X   | ^ chipKIT connector for XADC signals |           |   X   |
 ^ USB HID Host                       |    X      |       | ^ USB HID Host                       |    X      |       |
- 
- 
-==== Description ==== 
- 
-This simple XADC demo is a verilog project made to demonstrate the ADC functionality of the Arty Z7 
-  
-  * The LED associated with a specific channel brightens when the read voltage goes up. 
-  * The two user switches enable two XADC channels to be read from. 
- 
-This demo uses the chipKIT Analog connector, which has differential ports 1, 2, and 3 connected to the XADC pins 12, 0, and 8, respectively. This can be seen in the schematic below. 
- 
-{{:learn:programmable-logic:tutorials:arty-z7-xadc-demo:an.png?300|}} 
- 
  
 ------- -------
Line 58: Line 56:
  
 ===== Downloads ===== ===== Downloads =====
-Arty Z7-10 XADC Project Repository --[[https://github.com/Digilent/Arty-Z7-10-XADC/releases/download/v2016.4-2/Arty-Z7-10-xadc-2016.4-2.zip]] [[https://github.com/Digilent/Arty-Z7-10-XADC.git|GIT Repo]] +Arty Z7-10 XADC Project Repository --[[https://github.com/Digilent/Arty-Z7-10-XADC/releases/download/v2016.4-2/Arty-Z7-10-xadc-2016.4-2.zip|ZIP]] [[https://github.com/Digilent/Arty-Z7-10-XADC.git|GIT Repo]] 
-------- + 
-Arty Z7-20 XADC Project Repository --[[https://github.com/Digilent/Arty-Z7-10-XADC/releases/download/v2016.4-2/Arty-Z7-20-xadc-2016.4-2.zip]] [[https://github.com/Digilent/Arty-Z7-20-XADC.git|GIT Repo]]+Arty Z7-20 XADC Project Repository --[[https://github.com/Digilent/Arty-Z7-20-xadc/releases/download/v2016.4-3/Arty-Z7-20-xadc-2016.4-3.zip|ZIP]] [[https://github.com/Digilent/Arty-Z7-20-XADC.git|GIT Repo]]
 ------- -------
-===== How to...  ===== 
  
-==== 1. Generate the Project ====+===== Download and Launch the Arty Z7 XADC Demo  =====
  
->1.1) Download the repository linked in the download section and place it in the location of your choosing. +>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. Since you do not need to set up your circuit until your board is already programmed, you do not need to return to this guide until programming is complete.
  
->1.2) Generate the **XADC** project in the Projects folder by following this guide before continuing: [[vivado:github|How to Generate a Project from Digilent's Github]]+===== Using the Arty Z7 XADC Demo =====
  
-==== 2. Build the Project ====+==== 1. LEDs and Switches ====
  
->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.  +>The demo reads analog data in from each enabled XADC channel (set the associated switch to the high position to enable that channel) and sets the brightness on the associated led linearly. Higher voltage = brighter led. 
-> +
->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 ====+==== 2. Setting up the Circuit ====
  
->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.+>As seen below, this demo was tested using a resistor ladder to show the different brightness values the demo puts out. This demo can be used to measure any voltage between 0 and 1 volt. The brighter the led, the closer to 1 the voltage is. The voltages below are 0.5V and 0.1V. The circuit below uses a chain of ten 1KOhm resistors in series with two parallel 47KOhm resistors tied to the 3V3 and GND pins of the XADC Pmod header to create these voltages.
 > >
->{{:basys3:device_connected.png?600|}} 
- 
->3.2) Click program to load the project onto your Arty Z7. 
- 
-==== 4. Run the Project ==== 
- 
-This portion will help you run the demo and observe all its features. The demo reads analog data in from each enabled xadc channel (set the associated switch to the high position to enable that channel) and sets the brightness on the associated led linearly. Higher voltage = brighter led.  
- 
->4.1 Setting up the circuit 
->The pictures below used a resistor ladder to show the different brightness values the demo puts out. This demo can be used to measure any voltage between 0 and 1 volt. The brighter the led, the closer to 1 the voltage is. The voltages below are 0.5V and 0.1V. The circuit below uses a chain of ten 1KOhm resistors in series with two parallel 47KOhm resistors tied to the 3V3 and GND pins of the XADC Pmod header to create these voltages. 
 >{{:learn:programmable-logic:tutorials:arty-z7-xadc-demo:xadc_setup.jpg?500|}} >{{:learn:programmable-logic:tutorials:arty-z7-xadc-demo:xadc_setup.jpg?500|}}
  
-{{tag>learn programmable-logic tutorial arty-z7}}+{{tag>learn programmable-logic project arty-z7}}