• 0

Digilent Basys 3



Pardon me if my questions are silly but I am very new to FPGA. I need to measure Environment temperature and light intensity using Basys3 board. I used vivado design suite to run sample program given in the digilent site.  it's working fine!

My questions are:

1.       May I know what is the difference between master.adc and *** .v file

2.       Do I need to use VHDL or verilog programming language

3.       Can I use Xilinx software to do the coding?

Thanks in advance

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

Hi Muthupriya,

I think I may have the answers you are looking for.

1) Do you mean a .xdc file? the .xdc files are the constraints for the board; so the file will define the labels for the ball locations of the basys3 board. It pretty much is defining the board locations to the software. This file is case sensitive so watch out for your typing. The .v files are the actual project files for Vivado. .v files are the Verilog programming language files.

2) You can use either VHDL or verilog to program the Basys3. They can be interchangeable but it is best to keep to one language at a time. You can choose which ever one you're more comfortable with but it's always good to try your hand at something new. 

3) The Basys3 is exclusively made to be used in Vivado design suite. Vivado is made by Xilinx though so that's another answer to your question.

I hope these answered some of your questions. If you have any other questions feel free ask. We do have a FPGA forum section if you would like to browse through there. Also check out the wikipage for more on the Basys3. https://reference.digilentinc.com/doku.php?id=basys3:basys3#documentation

Good luck,


Link to comment
Share on other sites

Dear Muthupriya,

I don't have any code for what you are asking for but I can point you in the right direction. 

Check out the reference manual for the Basys3. Page 13 is where the seven segment display starts.


Also check out Learn section of our website. We have a lot of tutorials on lots of subjects. I'll link the Digital section of the tutorials. You can find a couple sections about seven segment displays there.


Also I think what would help is if you made a truth table of the inputs and outputs of what you are trying to do. It may simplify what you're trying to do. Also try poking around on the web for more tutorials about VHDL. Sorry but that's the best I can do for you. I hope you get the seven segment display working.


Link to comment
Share on other sites

Hi Priya,

The ADC that is behind JXADC is part of the FPGA, and only reads from 0V to  1V - don't connect 10V to it!

It is a bit of a complex beast, so best thing is to look up the details in http://www.xilinx.com/support/documentation/user_guides/ug480_7Series_XADC.pdf

the - "7 Series FPGAs and Zynq-7000 All Programmable SoC XADC Dual 12-Bit 1 MSPS Analog-to-Digital Converter User Guide"

The ADCs have a nominal analog input range from 0V to 1V. In unipolar mode (default), the analog inputs of the ADCs produce a full scale code of FFFh (12 bits) when the input is 1V. Thus, an analog input signal of 200 mV in unipolar mode produces and outputs code of Equation 1-1. Equation 1-1 In bipolar mode, the ADCs use two’s complement coding and produces a full scale code of 7FFh with +0.5V input and 800h with –0.5V input.

Even when in bipolar mode, the the pins must be in a sensible range, with the maximum rating for the device being -0.5V to 2.0V (see page 2 of http://www.xilinx.com/support/documentation/data_sheets/ds181_Artix_7_Data_Sheet.pdf )

Link to comment
Share on other sites


This topic is now archived and is closed to further replies.