Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| basys3:xadcdemo [2015/03/02 00:50] – [2. Load the Vivado Project] Sam Lowe | basys3:xadcdemo [2022/10/04 11:38] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 2: | Line 2: | ||
| ====== Basys3 XADC Demo ====== | ====== Basys3 XADC Demo ====== | ||
| - | {{ :basys3_overview.png?nolink | + | {{:basys3: |
| - | ----- | + | ===== Overview ===== |
| - | ===== Features Used ===== | + | ==== Features Used ==== |
| | ^ Not Used ^ Used ^ | | ^ Not Used ^ Used ^ | ||
| Line 21: | Line 21: | ||
| - | ===== Description | + | ==== Description ==== |
| This simple XADC Demo project demonstrates a simple usage of the Basys3' | This simple XADC Demo project demonstrates a simple usage of the Basys3' | ||
| Line 30: | Line 30: | ||
| * sw0 and sw1 select which channel to read from | * sw0 and sw1 select which channel to read from | ||
| - | ===== How to Build and Program ===== | ||
| - | You will need...\\ | + | ==== A Note About The XADC Port ==== |
| - | 1. Vivado installed on your computer\\ | + | On the Basys3, the XADC Pmod connector houses 4 differential analog pairs. The corresponding XADC channels are 6, 7, 14, and 15. Below is a picture of the pinout of the Pmod Header. |
| - | 2. Nexys4-DDR board from digilent\\ | + | |
| - | 3. Wires and a voltage to measure\\ | + | |
| + | {{: | ||
| + | The differential pairs are grouped by columns. Looking at the number above, 1 corresponds to XA1_P and XA1_N, column 2 routes to XA2_P and XA2_N, 3 routes to XA3_P and XA3_N, and 4 routes to XA4_P and XA4_N. Below is from the Basys3 schematics that will show the internal connections of these signals. | ||
| - | ==== 1. Download the Project ==== | + | {{: |
| - | Download | + | From the schematic we can see XA1 is connected to XADC channel 6, XA2 is connected to XADC channel 14, XA3 is connected to XADC channel 7, and XA4 is connected to XADC channel 15. |
| + | ------- | ||
| - | ==== 2. Load the Vivado Project | + | ===== Prerequisites ===== |
| - | In your now unzipped project, open the file basys3XADC.xpr. | + | ===Skills=== |
| + | * **Basic familiarity with Vivado** | ||
| + | * //This experience can be found by walking through our " | ||
| - | {{: | + | ===Hardware=== |
| + | * **Basys3 FPGA board** | ||
| + | * **Micro-USB cable** | ||
| + | * **Wires and a voltage to measure** | ||
| - | ==== 3. Synthesize, Implement and Generate Bitstream ==== | + | ===Software=== |
| + | * **Vivado Design Suite 2015.X** | ||
| + | * // | ||
| - | To complete this step all that you need to do is click **Generate Bitstream** on the left hand menu towards the bottom. Vivado will run through both Run Synthesis and Run Implementation before it generates the bitstream automatically. If you want, you can click each step by itself in the order of **Run Synthesis**, | + | ----- |
| - | {{: | + | ===== Downloads ===== |
| - | ==== 4. Connect and Program the Basys3 | + | Basys 3 Support Repository -- [[https:// |
| - | Once you have generated your bit file, Click on the hardware manager and connect | + | ------ |
| + | ===== How to... ===== | ||
| - | {{: | + | ==== 1. Generate the Project ==== |
| - | After your board is connected, just click program to load the GPIO demo onto your Basys3. | + | >1.1) Download the repository linked in the download section and place it in the location of your choosing. |
| - | ===== Running | + | >1.2) Generate |
| - | To run all the features of this demo, you will need the Basys3 board, a monitor with a VGA cable and a USB mouse. | + | ==== 2. Build the Project ==== |
| - | ==== 1. Using the Switches with Leds ==== | + | >2.1) Click **Generate Bitstream** on the left hand menu towards the bottom. Vivado will run through both Run Synthesis and Run Implementation before it generates |
| + | > | ||
| + | >Note: If you want, you can click each step by itself in the order of **Run Synthesis**, | ||
| + | > | ||
| + | > | ||
| - | For this section, all the switches are tied to their corresponding led. Every time a switch is toggled, | + | ==== 3. Program |
| - | {{: | + | >3.1) Once you have generated your bit file, Click on the hardware manager and connect to your board by choosing the local server option. |
| + | > | ||
| + | >{{:basys3:device_connected.png?600|}} | ||
| - | ==== 2. Using the buttons with The Seven Segment Display ==== | + | >3.2) Click program to load the project onto your Basys3. |
| - | The seven segment display is counting all digits from 0 to 9 when no buttons are pressed. If BTNU is pressed, | + | ==== 4. Run the Project ==== |
| + | This portion will help you run the demo and observe all its features. | ||
| - | {{: | + | >4.1) Applying a voltage to the XADC port |
| + | > | ||
| + | >For this demo, the AD6, 7, 14 and 15 pins are used on the JXADC header. We hooked up a signal generator to our pins. All of the other pins were grounded to avoid coupling. | ||
| + | > | ||
| + | >{{:basys3:xadc3.jpg?300|}}{{: | ||
| - | ==== 3. Plugging in a monitor to the VGA port ==== | ||
| - | To use the VGA output demo, plug in your monitor to the Basys3 VGA port. The monitor screen will have series of moving patterns | + | >4.2) Seven Segment Display and LEDs |
| + | > | ||
| + | >The 7-Segment display shows the current voltage across | ||
| + | > | ||
| + | > | ||
| - | {{: | + | >4.3) Selecting |
| - | + | > | |
| - | + | >To display | |
| - | ==== 4. Plugging in and using a USB mouse ==== | + | |
| - | + | ||
| - | To see the USB mouse portion of the demo, plug a USB mouse into J2 on the Basys3 with the monitor still connected. On the screen, you should be able to see your mouse pointer | + | |
| - | + | ||
| - | ==== 5. UART Communication ==== | + | |
| - | + | ||
| - | To see the UART communication channel, open a terminal program on your computer set to 9600 baud, 8 data bits, no parity bit and 1 stop bit. On reset or BTNC, the Basys3 will print BASYS3 GPIO/UART DEMO! to the terminal. On a button press other than BTNC, the terminal will print Button press detected! | + | |
| - | + | ||
| - | | + | |
| | | ||
| - | |||

