Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| programmable-logic:cmod-a7:demos:oob [2022/09/12 12:19] – changed forum.digilentinc.com to forum.digilent.com jeff.greenberg_ni.com | programmable-logic:cmod-a7:demos:oob [2022/10/04 11:38] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Cmod A7 Out-of-Box Demo ====== | ||
| + | <WRAP round todo> | ||
| + | === Under Construction === | ||
| + | </ | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ---- | ||
| + | ===== Description ===== | ||
| + | |||
| + | This simple User Demo project is a Microblaze project that tests the SRAM on the Cmod A7 and features the basic I/O on the device. | ||
| + | |||
| + | * The SRAM is tested and the results can be seen through the UART port. | ||
| + | * The RGB LED cycles through different colors while BTN1 is pressed. | ||
| + | * The User LEDs display a 2 bit binary counter while BTN1 is pressed. | ||
| + | |||
| + | ---- | ||
| + | ===== Inventory ===== | ||
| + | |||
| + | * Cmod A7 with MicroUSB programming cable | ||
| + | * Vivado and Vitis installations compatible with the latest release of this demo (2020.1) | ||
| + | * //See [[programmable-logic: | ||
| + | * Serial Terminal application to receive messages printed by the demo | ||
| + | * //See [[programmable-logic: | ||
| + | |||
| + | ---- | ||
| + | ===== 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 " | ||
| + | |||
| + | The latest release version for this demo is highlighted in green. | ||
| + | |||
| + | ^ Board Variant | ||
| + | | Cmod A7-15T | ||
| + | | Cmod A7-35T | ||
| + | | Cmod A7-15T | ||
| + | | Cmod A7-35T | ||
| + | | Cmod A7-15T | ||
| + | | Cmod A7-35T | ||
| + | |||
| + | **Note for Advanced Users:** //All demos for the Cmod A7 are provided through the [[https:// | ||
| + | ---- | ||
| + | Instructions on the use of the latest release can be found in this dropdown: | ||
| + | |||
| + | --> Using the Latest Release # | ||
| + | <WRAP group> | ||
| + | |||
| + | {{page> | ||
| + | |||
| + | --> Apply Fix for Vitis 2020.1 Bug # | ||
| + | <WRAP round important> | ||
| + | Due to a bug in the 2020.1 version of Xilinx' | ||
| + | </ | ||
| + | <WRAP group>< | ||
| + | After importing the project, open the **.sprj** file. In the System Project Settings, select a platform by clicking on the **'' | ||
| + | </ | ||
| + | {{: | ||
| + | </ | ||
| + | ---- | ||
| + | <WRAP group>< | ||
| + | Right click on the **.prj** file and select **Properties**. In the opened window, go into **C/C++ Build** and select **Settings**, | ||
| + | </ | ||
| + | {{: | ||
| + | </ | ||
| + | ---- | ||
| + | Also found in the C/C++ Build Settings, select **Directories** under **MicroBlaze gcc compiler** and edit the listed path to change it to '' | ||
| + | |||
| + | Click Yes when prompted to rebuild the index. | ||
| + | |||
| + | Click Apply and Close. | ||
| + | The project is now imported correctly. | ||
| + | ---- | ||
| + | <-- | ||
| + | |||
| + | --> Build a Vitis Application # | ||
| + | <WRAP group> | ||
| + | {{page> | ||
| + | </ | ||
| + | <-- | ||
| + | |||
| + | --> Set up the Cmod A7 # | ||
| + | |||
| + | Plug the microUSB programming cable into the Cmod A7's PROG/UART port. | ||
| + | ---- | ||
| + | <-- | ||
| + | |||
| + | {{page> | ||
| + | |||
| + | At this point, the demo is now running on your board. Refer to the [[# | ||
| + | ---- | ||
| + | Additional steps beyond here present how you can use the other archive provided in the release, containing the hardware project, to rebuild the Vivado project, and use a newly exported XSA file to update the platform in Vitis. | ||
| + | ---- | ||
| + | {{page> | ||
| + | |||
| + | |||
| + | </ | ||
| + | <-- | ||
| + | |||
| + | ---- | ||
| + | ===== Functionality ===== | ||
| + | ==== 1. Observing the LEDs ==== | ||
| + | |||
| + | For this demo, every time **BTN1** is pressed, the LED state changes. The user LEDs create a 2 bit binary counter that increments every time the button is pressed. The RGB LED changes color every time the button is pressed. | ||
| + | |||
| + | {{: | ||
| + | ---- | ||
| + | ==== 2. UART Messages ==== | ||
| + | |||
| + | Whenever the demo is started from Vivado SDK, the board will go through a memory test and will print out the result. If the memory is working, the following message will appear. | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Whenever a button is pressed, the message " | ||
| + | |||
| + | {{: | ||
| + | ===== Additional Resources ===== | ||
| + | |||
| + | All materials related to the use of the Cmod A7 can be found on its [[..: | ||
| + | |||
| + | For a walkthrough of the process of creating a simple baremetal software project in Vivado and Vitis, see [[programmable-logic: | ||
| + | |||
| + | For technical support, please visit the [[https:// | ||
| + | |||
| + | ---- | ||
| + | < | ||

