====== USB104 A7 DSPI Demo ====== ===== Overview ===== This project demonstrates the implementation of DSPI on the USB104A7. ---- ===== Description ===== The simplified block diagram of the system implemented for this demo is shown below: {{ :reference:programmable-logic:usb104a7:dspidiagram.jpg?direct |}} The application running on the microblaze processor emulates some registers to read and write to. Register 0 is tied to the buttons, while register 1 is tied to the LEDs. A console application is used to communicate with the USB104A7 via DSPI. The process of writing a 4 to the LEDs is as follows: 1. Run the console application and program the USB104A7. 2. Send "write led 4" using the console application. Alternatively use "write 1 4". ===== Inventory===== ===Hardware=== * [[start|USB104A7]] * Including a **USB A cable** and **5V Power Supply** * NOTE: SW1 DDR voltage set to 1.5V ===Software=== * **Vivado Design Suite 2020.1** with **Vitis** and **Digilent Board Support Files** installed * Follow the [[vivado:installing-vivado:start]] guide on how to install Vivado and Digilent Board Support Files. * [[software/adept/start|Digilent Adept Runtime 2.20 or later installed]] * [[https://ttssh2.osdn.jp/index.html.en|Tera Term]] * Used to read debug messages from the FPGA. Follow the [[programmable-logic:guides:serial-terminals:start|Serial Terminal Emulator Guide]] for more information on installing and using Tera Term. ===Skills=== * **Basic familiarity with Vivado and Vitis** * //This experience can be found by walking through our "[[vivado/getting_started/2018.2|Getting Started with Vivado]]" guide// ===== Downloads ===== |Vivado Project Repository |[[https://github.com/Digilent/USB104A7-dspi|GIT Repo]]| |Vivado Project Repository |[[https://github.com/Digilent/USB104A7-dspi/releases|Releases]]| ------ ===== Demo Setup ===== ==== Hardware Setup ==== 1. Connect the 5V power supply to the USB104A7. Plug the USB104A7 into the PC using the USB A cable. ==== Software Setup ==== === Programming the FPGA === 1. Download the release files from the git repo [[https://github.com/Digilent/USB104A7-dspi/releases|releases]]. This includes the DSPI Console Application, the Vivado project, and the Vitis files. 2. Launch Xilinx Vitis. Select a folder for the workspace. 3. Click **File>Import**. Select Vitis project exported zip file and select the USB104A7-dspi-sw-*.zip. Check all of the boxes and click finish. 4. Build the project by clicking USB104-dspi_system and then clicking Build->Debug. 5. Program the FPGA by clicking **Xilinx>Program FPGA**. Click **Program**. 6. To receive debug messages, open Tera Term and connect to the COM port associated with the USB104A7. Set the baud rate to 115200. 7. Program the Microblaze processor with the elf file. In the Project Explorer view, select the **USB104A7_dspi_system** project. Click **Run>Run (Ctrl+F11)**. 8. Click **Launch on Hardware (System Debugger)** and then click **OK**. ---- ===== Operating the Demo ===== 1. Extract the USB104A7_dspi_DemoApp-*.zip folder. 2. Run USB104A7_dspi_DemoApp.exe. The application will start up and connect to the USB104A7's DSPI port. 3. Type "write led 3" to turn on LD0 and LD1. The Tera Term window should show debug information from the USB104A7. ---- ===== Final Notes ===== For more guides and example projects for your USB104A7, please visit its [[programmable-logic:usb104a7:start|Resource Center]]. For technical support, please visit the [[https://forum.digilent.com|Digilent Forums]]. {{tag>learn programmable-logic project usb104a7 dspi}}