Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
learn:programmable-logic:tutorials:zedboard-dma-audio-demo:start [2016/08/25 19:03] – [2. Generate the Project] Sam Lowe | learn:programmable-logic:tutorials:zedboard-dma-audio-demo:start [2018/10/29 20:00] (current) – [Features Used] jon peyron | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Zedboard DMA Audio Demo ====== | ====== Zedboard DMA Audio Demo ====== | ||
+ | {{ : | ||
+ | |||
----- | ----- | ||
===== Overview ===== | ===== Overview ===== | ||
+ | |||
+ | ===== Description ===== | ||
+ | |||
+ | The audio demo records a 5 second sample from microphone(J12) or line in (J13) and plays it back on headphone out(J10) or line out (J12). Recording and playback are started by push buttons. | ||
+ | |||
==== Features Used ==== | ==== Features Used ==== | ||
Line 20: | Line 27: | ||
^ 128×32 OLED Display | ^ 128×32 OLED Display | ||
^ Audio Codec | | ^ Audio Codec | | ||
- | ^ SD Card Port | + | ^ SD Card Port |
- | + | ||
- | ===== Description ===== | + | |
- | + | ||
- | The audio demo records a 5 second sample from microphone(J12) or line in (J13) and plays it back on headphone out(J10) or line out (J12). Record and playback is started by push buttons: | + | |
- | ^ Button | + | |
- | ^ BTNL | play on Line out | | + | |
- | ^ BTNR | record from line in | | + | |
- | ^ BTNU | record from microphone | + | |
- | ^ BTND | playback on headphone | + | |
- | + | ||
- | For example, with the push of BTNU this demo records 5 | + | |
- | seconds of audio data from the MIC (J12) input. Consequently by pressing BTND the demo plays on the HPH OUT (J10) the recorded samples. | + | |
- | + | ||
===== Prerequisites ===== | ===== Prerequisites ===== | ||
- | |||
- | ===Skills=== | ||
- | * **Basic familiarity with Vivado** | ||
- | * //This experience can be found by walking through our " | ||
===Hardware=== | ===Hardware=== | ||
Line 50: | Line 39: | ||
===Software=== | ===Software=== | ||
- | * **Vivado Design Suite 2016.X** | + | * **Vivado Design Suite 2016.4** |
- | * //Newer/ | + | * //Newer versions can be used, but the procedure may vary slightly// |
- | + | * Xilinx SDK 2016.4 must be included in the installation | |
- | + | * **Digilent Board Support Files for Vivado** | |
- | ==== 1. Setup ==== | + | * Follow |
- | + | ||
- | Plug in your microphone or aux input into the respective jack on your Zedboard. Plug your speakers/ | + | |
===== Downloads ===== | ===== Downloads ===== | ||
- | Genesys2 Support | + | Zedboard Project |
------ | ------ | ||
- | ===== How to... ===== | ||
- | ==== 1. Download the Project | + | ===== Download |
- | >1.1) Download | + | > |
- | >1.2) If you want to generate | + | > |
- | + | ||
- | ==== 2. Generate the Project ==== | + | |
- | >2.1) If not already installed, install the Vivado Board Files for the Genesys 2 by following this guide: [[vivado: | + | |
- | + | ||
- | >2.2) Generate the **dma** project | + | |
- | + | ||
- | ==== 3. Build the Project ==== | + | |
- | + | ||
- | >3.1) Click **Generate Bitstream** | + | |
> | > | ||
- | >Note: If you want, you can click each step by itself in the order of **Run Synthesis**, | + | >{{:learn:programmable-logic: |
- | > | + | |
- | >{{:basys3:buildflow.png?600|}} | + | |
- | + | ||
- | + | ||
- | ==== 4. Export to SDK ==== | + | |
- | >4.1) Export the microblaze project by going to **File-> | + | >3) Turn on your board and open a serial terminal (such as TeraTerm) on your computer |
> | > | ||
- | >4.2) Skip to step 6. | + | ><WRAP round tip 660px> |
- | + | ===Tip=== | |
- | ==== 5. Open Xilinx SDK and create a workspace ==== | + | To make sure that you don't miss any startup messages, you can connect your serial terminal to your board before the board is programmed. If the demo is already running, you can restart the demo in SDK to make sure you get these messages. |
- | + | </ | |
- | >5.1) Open up Xilinx | + | |
> | > | ||
- | >{{:genesys2:1.jpg?500|}} | + | >{{:learn:programmable-logic: |
- | ==== 6. Import | + | ===== Using the Zedboard DMA Audio Demo ===== |
- | >6.1) In your project Explorer window on the left side, click **File-> | + | ==== 1. Controls ==== |
- | > | + | |
- | > | + | |
- | >6.2) Navigate to where you saved the downloaded project, select the **sdk** folder, | + | Audio playback |
- | > | + | |
- | > | + | |
- | >6.3) Import the projects by clicking //Finish//. You can ignore the warnings that may pop up. | + | ^ Button |
- | > | + | ^ BTNL | play on line out | |
- | > | + | ^ BTNU | record from mic in | |
- | + | ^ BTND | play on hph out | |
- | ==== 7. Program the FPGA ==== | + | ^ BTNR | record from line in | |
- | + | ||
- | >7.1) Click **Xilinx Tools-> | + | |
- | > | + | |
- | > | + | |
- | + | ||
- | ==== 8. Program the Microblaze processor ==== | + | |
- | + | ||
- | >8.1) Right click on the **demo** folder and click **Run as-> | + | |
- | > | + | |
- | > | + | |
- | + | ||
- | ===== Running the Genesys 2 DMA Audio Demo ===== | + | |
- | + | ||
- | This portion will help you run the demo and observe all its features. | + | |
- | ==== 1. Recording from an input ==== | + | ==== 2. Recording from an input ==== |
- | To record from the microphone input, press btnu. To record from the line input, press btnr. Once the recording is activated, the message "Start Recording..." | + | To record from the microphone input, press **BTNU**. To record from the line input, press **BTNR**. Once the recording is activated, the message "Start Recording..." |
- | ==== 2. Playing to an output ==== | + | ==== 3. Playing to an output ==== |
- | To play to the microphone input, press btnd. To play to the line output, press btnl. Once the playback is activated, | + | To play to the headphone output, press **BTND**. To play to the line out, press **BTNL**. Once the playback is activated, the message "Start Playback..." |
- | {{tag> | + | {{tag> |