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-xadc-demo:start [2017/03/01 17:41] – [Prerequisites] sbobrowiczlearn:programmable-logic:tutorials:arty-xadc-demo:start [2017/10/23 21:13] (current) Arthur Brown
Line 5: Line 5:
  
 ===== Overview ===== ===== Overview =====
 +
 +==== Description ====
 +
 +This simple XADC Demo project demonstrates a simple usage of ARTY's XADC pin capability. The behavior is as follows:
 +  * The 8 User LEDs increment from top right to left then bottom left to right as the voltage difference on the selected XADC pins gets larger.
 +  * The four switches select which channel to read from.
 +
 +-----
 +
 ==== Features Used ==== ==== Features Used ====
  
Line 13: Line 22:
 ^ 4 User Push Buttons                |  X        |       | ^ 4 User Push Buttons                |  X        |       |
 ^ 4 Pmod Connectors                  |  X        |       | ^ 4 Pmod Connectors                  |  X        |       |
-^ XADC Analog Input                  |               |+^ XADC Analog Input                  |               |
 ^ USB-UART Bridge                    |  X        |       | ^ USB-UART Bridge                    |  X        |       |
 ^ Serial Flash for Application Data  |  X        |       | ^ Serial Flash for Application Data  |  X        |       |
  
  
-==== Description ==== 
  
-This simple XADC Demo project demonstrates a simple usage of ARTY' 
-XADC pin capability. The behavior is as follows: 
-  
-  * The 8 User LEDs increment from top right to left then bottom left to right as the voltage difference on the selected XADC pins gets larger. 
-  * The four switches select which channel to read from  
- 
------ 
 ===== Prerequisites ===== ===== Prerequisites =====
  
Line 37: Line 38:
   * **Vivado Design Suite 2016.4**    * **Vivado Design Suite 2016.4** 
     * //Newer versions can be used, but the procedure may vary slightly//     * //Newer versions can be used, but the procedure may vary slightly//
-  * **Digilent Board Support Files for Vivado** +  * **Digilent Board Support Files for Vivado**
     * Follow the [[vivado:boardfiles|Vivado Board Files for Digilent 7-Series FPGA Boards]] guide on how to install Board Support Files for Vivado.     * Follow the [[vivado:boardfiles|Vivado Board Files for Digilent 7-Series FPGA Boards]] guide on how to install Board Support Files for Vivado.
- 
  
 ----- -----
Line 45: Line 45:
 ===== Downloads ===== ===== Downloads =====
  
-Arty Support Repository -- [[https://github.com/Digilent/Arty-XADC/archive/master.zip|ZIP]] [[https://github.com/Digilent/Arty-XADC|GIT Repo]]+Arty XADC Project Repository -- [[https://github.com/Digilent/Arty-XADC/releases/download/v2016.4-3/Arty-XADC-2016.4-3.zip|ZIP Archive]] [[https://github.com/Digilent/Arty-XADC|GIT Repo]]
  
 ------ ------
-===== How to...  ===== 
  
 +===== Download and Launch the Arty XADC Demo  =====
  
-==== 1Generate the Project ====+Follow the [[:learn:programmable-logic:tutorials:github-demos:start:|Using Digilent Github Demo Projects]] TutorialThis is an HDL design project, and as such does not support Vivado SDK, select the tutorial options appropriate for a Vivado-only design. Your circuit to be measured does not need to be connected to the Arty before programming, so you do not need to return to this guide until you finish the tutorial.
  
->1.1) Download the repository linked in the download section and place it in the location of your choosing. +===== Using the Arty XADC Demo ====
  
->1.2Generate the **XADC_Demo** project in the Projects folder by following this guide before continuing: [[vivado:github|How to Generate a Project from Digilent's Github]] +>1) Applying a voltage to the XADC port
- +
-==== 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 wantyou can click each step by itself in the order of **Run Synthesis****Run Implementation** and then **Generate Bitstream**.+>For this demoA0-A5 are single ended analog pins while A6-A7, A8-A9, and A10-A11 are differential ports.
 > >
->{{:basys3:buildflow.png?600|}}+><WRAP round important 660px> 
 +===Important=== 
 +Voltages to be measured should only be in the range of 0 to 1 Volt. 
 +</WRAP>
  
-==== 3. Program the Board ==== +>2LEDs
- +
->3.1Once 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|}} +>The LEDs turn on from right to left then wrap around the bottom as the input voltage increases.
- +
->3.2) Click program to load the project onto your Arty. +
- +
-==== 4. Run the Project ==== +
- +
-This portion will help you run the demo and observe all its features. +
- +
->4.1) Applying a voltage to the XADC port+
 > >
->For this demo, A0-A5 are single ended analog pins then A6-A7, A8-A9, and A10-A11 are differential ports+>{{:arty:img_1585.jpg?direct&200|}}{{:arty:img_1586.jpg?direct&200|}}{{:arty:img_1587.jpg?direct&200|}}
  
->4.2LEDs+>3Selecting a channel
 > >
->The  LEDs turn on from right to left then wrap around the bottom as the input voltage increases. +>To display a different channel on the display and LEDs, change the user switches to the desired channel, as seen in the table below.
-+
->{{:arty:img_1585.jpg?direct&200|}}{{:arty:img_1586.jpg?direct&200|}}{{:arty:img_1587.jpg?direct&200|}}+
  
->4.3) Selecting a channel +| Channel Pin/s ^ SW0 ^ SW1 ^ SW2 ^ SW3 ^ 
-> +^ A0 ^ Down ^ Down ^ Down ^ Down | 
->To display a different channel on the display and LEDs, change sw0, sw1, and sw2 to the desired channel.+^ A1 ^ Up ^ Down ^ Down ^ Down | 
 +^ A2 ^ Down ^ Up ^ Down ^ Down | 
 +^ A3 ^ Up ^ Up ^ Down ^ Down | 
 +^ A4 ^ Down ^ Down ^ Up ^ Down | 
 +^ A5 ^ Up ^ Down ^ Up ^ Down | 
 +^ A6-A7 ^ Down ^ Up ^ Up ^ Down | 
 +^ A8-A9 ^ Up ^ Up ^ Up ^ Down | 
 +^ A10-A11 ^ Down ^ Down ^ Down ^ Up |
  
-{{tag>learn programmable-logic tutorial example arty}}+{{tag>learn programmable-logic project arty}}