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
programmable-logic:arty-a7:demos:xadc [2022/09/12 12:43] – changed forum.digilentinc.com to forum.digilent.com Jeffreyprogrammable-logic:arty-a7:demos:xadc [2023/08/24 22:47] (current) Arthur Brown
Line 1: Line 1:
 +====== Arty A7 XADC Demo ======
  
 +{{:reference:programmable-logic:arty-a7:demos:arty_xadc1.jpg?400|}}
 +
 +----
 +===== Description =====
 +
 +
 +This simple XADC Demo project demonstrates a simple usage of ARTY A7'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.
 +
 +----
 +===== Inventory =====
 +
 +  * Arty A7 with a MicroUSB Programming Cable
 +  * Vivado installation compatible with the latest release of this demo (2022.1)
 +    * //See [[programmable-logic:guides:installing-vivado-and-vitis|Installing Vivado, Vitis, and Digilent Board Files]] for installation instructions.//
 +  * Wires and a circuit to measure
 +
 +----
 +===== Download and Usage Instructions =====
 +
 +First and foremost, releases - consisting of a set of files for download - are only compatible with a specific version of the Xilinx tools, as specified in the name of the release (referred to as a //release tag//). In addition, releases are only compatible with the specified variant of the board. For example, a release tagged "20/DMA/2020.1" for the Zybo Z7 is only to be used with the -20 variant of the board and Vivado 2020.1.
 +
 +The latest release version for this demo is highlighted in green.
 +
 +**Note:** //Releases for FPGA demos from before 2020.1 used a different git structure, and used a different release tag naming scheme.//
 +
 +^ Board Variant  ^ Release Tag                  ^ Release Downloads                                                                              ^ Setup Instructions                                                                       ^
 +
 +| Arty A7-35     | @#C0EEBD: 35/XADC/2022.1-1   | {{https://github.com/Digilent/Arty-A7/releases/download/35/XADC/2022.1-1/Arty-A7-35-XADC-hw.xpr.zip|Arty-A7-35-Pmod-VGA-hw.xpr.zip}}     | See //Using the Latest Release//, below                                                  |
 +| Arty A7-100    | @#C0EEBD: 100/XADC/2022.1-2  | {{https://github.com/Digilent/Arty-A7/releases/download/100/XADC/2022.1-2/Arty-A7-100-XADC-hw.xpr.zip|Arty-A7-100-Pmod-VGA-hw.xpr.zip}}  | See //Using the Latest Release//, below                                                  |
 +| Arty A7-35     | 35/XADC/2021.1-1             | {{https://github.com/Digilent/Arty-A7/releases/download/35/XADC/2021.1-1/Arty-A7-35-XADC-hw.xpr.zip|Arty-A7-35-XADC-hw.xpr.zip}}         | See //Using the Latest Release//, below                                                  |
 +| Arty A7-100    | 100/XADC/2021.1-1            | {{https://github.com/Digilent/Arty-A7/releases/download/100/XADC/2021.1-1/Arty-A7-100-XADC-hw.xpr.zip|Arty-A7-100-XADC-hw.xpr.zip}}      | See //Using the Latest Release//, below                                                  |
 +| Arty A7-35     | 35/XADC/2020.1-1             | {{https://github.com/Digilent/Arty-A7/releases/download/35/XADC/2020.1-1/Arty-A7-35-XADC-hw.xpr.zip|Arty-A7-35-XADC-hw.xpr.zip}}         | See //Using the Latest Release//, below                                                  |
 +| Arty A7-100    | 100/XADC/2020.1-1            | {{https://github.com/Digilent/Arty-A7/releases/download/100/XADC/2020.1-1/Arty-A7-100-XADC-hw.xpr.zip|Arty-A7-100-XADC-hw.xpr.zip}}      | See //Using the Latest Release//, below                                                  |
 +| Arty A7-35     | v2018.2-1                    | [[https://github.com/Digilent/Arty-A7-35-XADC/releases/tag/v2018.2-1|Release ZIP Downloads]]   | [[https://github.com/Digilent/Arty-A7-35-XADC/tree/v2018.2-1|v2018.2-1 Github README]]   |
 +| Arty A7-100    | v2018.2-1                    | [[https://github.com/Digilent/Arty-A7-100-XADC/releases/tag/v2018.2-1|Release ZIP Downloads]]  | [[https://github.com/Digilent/Arty-A7-100-XADC/tree/v2018.2-1|v2018.2-1 Github README]]  |
 +
 +**Note for Advanced Users:** //GitHub sources for this demo can be found in the [[https://github.com/digilent/arty-a7/tree/35/XADC/master|35/XADC/master]] and [[https://github.com/digilent/arty-a7/tree/100/XADC/master|100/XADC/master]] branches of the Arty-A7 repository. Further documentation on the structure of this repository can be found on this wiki's [[programmable-logic:documents:git]] page.//
 +
 +----
 +Instructions on the use of the latest release can be found in this dropdown:
 +
 +--> Using the Latest Release ^#
 +
 +<WRAP group>
 +
 +{{page>programmable-logic:guides:using-github-releases#hardware_only_release_before_programming&noheader}}
 +
 +--> Set up the Arty A7 #
 +
 +Plug the microUSB programming cable into the Arty A7's PROG/UART port. Set up your circuit. In our case, we used a resistor ladder comprised of 8 1k ohm resistors. 
 +
 +----
 +<--
 +
 +{{page>programmable-logic:guides:using-github-releases#hardware_only_release_programming&noheader}}
 +
 +At this point, the demo is now running on your board. Refer to the [[#description|Description]] and [[#functionality|Functionality]] sections of this document for more information on what it does.
 +</WRAP>
 +
 +<--
 +
 +----
 +===== Functionality =====
 +==== Applying a voltage to the XADC port ====
 +>
 +>For this demo, A0-A5 are single ended analog pins while A6-A7, A8-A9, and A10-A11 are differential ports.
 +>
 +<WRAP round center important>
 +**Warning:** Take care not to drive analog inputs below the Arty A7's ground or above 1.0V (for differential inputs) or above 3.3V (for single-ended inputs). 
 +</WRAP>
 +
 +==== LEDs ====
 +>
 +>The LEDs turn on from right to left then wrap around the bottom as the input voltage increases.
 +>
 +>{{:reference:programmable-logic:arty-a7:demos:arty_xadc0.jpg?200|}}{{:reference:programmable-logic:arty-a7:demos:arty_xadc1.jpg?200|}}{{:reference:programmable-logic:arty-a7:demos:arty_xadc2.jpg?200|}}
 +
 +==== Selecting a channel ====
 +>
 +>To display a different channel on the display and LEDs, change the user switches to the desired channel, as seen in the table below.
 +
 +^ Channel Pin/s  ^ SW3    ^ SW2   ^ SW1   ^ SW0   |
 +| A0             | Down   | Down  | Down  | Down  |
 +| A1             | Down   | Down  | Down  | Up    |
 +| A2             | Down   | Down  | Up    | Down  |
 +| A3             | Down   | Down  | Up    | Up    |
 +| A4             | Down   | Up    | Down  | Down  |
 +| A5             | Down   | Up    | Down  | Up    |
 +| A6-A7          | Down   | Up    | Up    | Down  |
 +| A8-A9          | Down   | Up    | Up    | Up    |
 +| A10-A11        | Up     | Down  | Down  | Down  |
 +| V_P-V_N        | Up     | Down  | Down  | Up    |
 +
 +----
 +
 +===== Additional Resources =====
 +
 +All materials related to the use of the Arty A7 can be found on its [[..:start|Resource Center]].
 +
 +For a walkthrough of the process of creating a simple HDL project in Vivado, see [[programmable-logic:guides:getting-started-with-vivado]]. Information on important parts of the GUI, and indirect discussion of the steps required to modify, rebuild, and run this demo in hardware can also be found here.
 +
 +For technical support, please visit the [[https://forum.digilent.com/forum/4-fpga/|FPGA]] section of the Digilent Forum.
 +
 +----