This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
resources:fpga:xilinx:pmod:ad7303 [01 Oct 2013 09:25] – [Functional Description] Alexandru.Tofan | resources:fpga:xilinx:pmod:ad7303 [09 Jan 2021 00:49] (current) – user interwiki links Robin Getz | ||
---|---|---|---|
Line 9: | Line 9: | ||
* A design which shows how to used the **AD7303 DAC** by outputting square and a sawtooth waveforms | * A design which shows how to used the **AD7303 DAC** by outputting square and a sawtooth waveforms | ||
* **HW Platform(s): | * **HW Platform(s): | ||
- | * [[http://www.xilinx.com/products/ | + | * [[xilinx>products/ |
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
Line 26: | Line 26: | ||
==== Required Hardware ==== | ==== Required Hardware ==== | ||
- | * [[http://www.xilinx.com/products/ | + | * [[xilinx>products/ |
* [[http:// | * [[http:// | ||
* [[http:// | * [[http:// | ||
Line 37: | Line 37: | ||
==== Running Demo (SDK) Program ==== | ==== Running Demo (SDK) Program ==== | ||
- | <WRAP center round tip 80%>If you are not familiar with LX9 and/or Xilix tools, please visit\\ [[http://www.xilinx.com/products/ | + | <WRAP center round tip 80%>If you are not familiar with LX9 and/or Xilix tools, please visit\\ [[xilinx>products/ |
If you are not familiar with Nexys™3 and/or Xilix tools, please visit\\ [[http:// | If you are not familiar with Nexys™3 and/or Xilix tools, please visit\\ [[http:// | ||
If you are not familiar with ZedBoard and/or Xilix tools, please visit\\ [[http:// | If you are not familiar with ZedBoard and/or Xilix tools, please visit\\ [[http:// | ||
Line 167: | Line 167: | ||
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
- | * [[https:// | + | * [[https:// |
* [[https:// | * [[https:// | ||
* [[https:// | * [[https:// | ||
| | ||
</ | </ | ||
+ | <wrap hide> | ||
+ | ====== Linux Device Driver ====== | ||
+ | |||
+ | Connect PmodDA1 to the JB1 connector of the ZedBoard (upper row of pins). | ||
+ | |||
+ | ===== Preparing the SD Card ===== | ||
+ | |||
+ | In order to prepare the SD Card for booting Linux on the ZedBoard: | ||
+ | * Download the device tree: [[https:// | ||
+ | * Follow the instructions on the following wiki page, but use the device tree downloaded on the previous step | ||
+ | * [[/ | ||
+ | |||
+ | Make sure you have an HDMI monitor connected to the ZedBoard, plug in the SD Card and power on the board. | ||
+ | If everything is correct, the system should boot up. If you don't have an HDMI monitor, connect to the board via UART, Baud Rate 115200. | ||
+ | |||
+ | There are 2 ways to test the driver. | ||
+ | * Using the terminal window | ||
+ | * Using the ADI IIO Oscilloscope | ||
+ | |||
+ | ===== Using the terminal window ===== | ||
+ | |||
+ | Open a new terminal window by pressing **Ctrl+Alt+T**. | ||
+ | |||
+ | Navigate to the location of the device and identify it using the following commands: | ||
+ | < | ||
+ | cd / | ||
+ | ls | ||
+ | iio:device0 iio:device1 trigger0 | ||
+ | cd iio\: | ||
+ | cat name | ||
+ | ad7303 | ||
+ | </ | ||
+ | |||
+ | If the **cat name** command doesn' | ||
+ | < | ||
+ | cd .. | ||
+ | cd iio\: | ||
+ | cat name | ||
+ | </ | ||
+ | |||
+ | To see the list of options that the AD7303 driver provides, type: | ||
+ | < | ||
+ | ls | ||
+ | buffer | ||
+ | dev | ||
+ | name out_voltage1_powerdown | ||
+ | </ | ||
+ | |||
+ | To set the raw output voltage, type: | ||
+ | < | ||
+ | echo 120 > out_voltage0_raw | ||
+ | </ | ||
+ | |||
+ | To check that the raw output voltage has been set, you can type: | ||
+ | < | ||
+ | cat out_voltage0_raw | ||
+ | 120 | ||
+ | </ | ||
+ | |||
+ | If you want to set the voltage for the second channel, replace out_voltage0_raw with out_voltage1_raw. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | The commands written above can also be used if not using an HDMI monitor and a wireless keyboard, by using a serial terminal, and typing the commands after the system boot-up is complete. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ===== Using the ADI IIO Oscilloscope ===== | ||
+ | |||
+ | Install the ADI IIO Oscilloscope using the instructions from the following wiki page: | ||
+ | * [[/ | ||
+ | |||
+ | Launch the ADI IIO Oscilloscope. | ||
+ | |||
+ | Open the **Settings** menu and select **Impulse generator** submenu. A popup window will appear and allow you to select an impulse generator (a high resolution timer) and its frequency. The conversions for both the ADC and the DAC are started by the impulses of the generator. Click the **OK** button. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | If the **Impulse generator** option is not available, you can configure the timer manually using the following commands: | ||
+ | |||
+ | < | ||
+ | cd / | ||
+ | ls | ||
+ | iio: | ||
+ | cd trigger0 | ||
+ | echo 1000 > frequency | ||
+ | cat frequency | ||
+ | 1000 | ||
+ | </ | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Select **AD7303** tab from the top options. Click on **Single value output**, type in the desired value, and click **Save** at the bottom of the window. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | Select **AD7303** tab from the top options. Click on **Waveform output**, select the type of waveform, configure the desired **Amplitude**, | ||
+ | |||
+ | {{: | ||
====== AD7303 Pmod and AD7476 Pmod Reference Design ====== | ====== AD7303 Pmod and AD7476 Pmod Reference Design ====== | ||
{{page> | {{page> | ||
+ | </ | ||
====== More information ====== | ====== More information ====== | ||
* [[ez> | * [[ez> | ||
* Example questions: {{rss> | * Example questions: {{rss> |