Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
basys3:abacus [2015/12/03 03:31] – [How to Build and Program] Sam Lowe | basys3:abacus [2018/06/12 21:33] (current) – Arthur Brown | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Basys3 Abacus Demo ====== | + | ====== Basys3 Abacus Demo (Legacy) |
- | {{ :basys3_overview.png?nolink | + | <WRAP round important 660px> |
+ | === Important! === | ||
+ | This is a legacy demo, see the updated version of this demo [[learn: | ||
+ | </ | ||
+ | |||
+ | {{:basys3: | ||
- | ----- | ||
===== Overview ===== | ===== Overview ===== | ||
==== Features Used ==== | ==== Features Used ==== | ||
Line 20: | Line 24: | ||
^ USB HID Host with mouse | ^ USB HID Host with mouse | ||
^ USB HID Host with keyboard | ^ USB HID Host with keyboard | ||
+ | |||
+ | |||
==== Description ==== | ==== Description ==== | ||
Line 25: | Line 31: | ||
Abacus demonstration project that implements several arithmetic operations using the Basys3' | Abacus demonstration project that implements several arithmetic operations using the Basys3' | ||
- | {{ http://www.youtube.com/v/6_GxkslqbcU? | + | {{youtube>6_GxkslqbcU? |
+ | |||
+ | |||
+ | ------- | ||
===== Prerequisites ===== | ===== Prerequisites ===== | ||
Line 38: | Line 47: | ||
===Software=== | ===Software=== | ||
- | * **Vivado Design Suite 2015.1** | + | * **Vivado Design Suite 2015.X** |
* // | * // | ||
Line 49: | Line 58: | ||
------ | ------ | ||
- | ===== How to Build and Run the Demo ===== | + | ===== How to... ===== |
Line 56: | Line 65: | ||
==== 1. Generate the Project ==== | ==== 1. Generate the Project ==== | ||
- | > | + | >1.1) Download the repository |
- | > | + | |
- | > | + | |
- | >**Tcl Script Format** | + | |
- | > | + | |
- | >If you are unfamiliar with how to run projects in this new format, see the [[http:// | + | |
+ | >1.2) Generate the **Abacus** project in the Projects folder by following this guide before continuing: [[vivado: | ||
- | |||
- | >1.2) Within the project folder there will be two subfolders named " | ||
- | > | ||
- | > | ||
- | > | ||
- | |||
- | |||
- | >1.3) Open a new Vivado window and enter the letters ' | ||
- | > | ||
- | > | ||
- | > | ||
- | > | ||
- | >As in the image above, once you have copied there may be a pop-up with a suggested ' | ||
- | > | ||
- | >Again, as illustrated in the images, type in " | ||
- | > | ||
- | > | ||
==== 2. Build the Project ==== | ==== 2. Build the Project ==== | ||
- | >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 the bitstream automatically. | + | >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 the bitstream automatically. |
> | > | ||
>Note: If you want, you can click each step by itself in the order of **Run Synthesis**, | >Note: If you want, you can click each step by itself in the order of **Run Synthesis**, | ||
Line 89: | Line 77: | ||
> | > | ||
- | ==== 3. Connect and Program the Basys3 | + | ==== 3. Program the Board ==== |
- | >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. | + | >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. |
> | > | ||
> | > | ||
- | >3.2.) Click program to load the abacus demo onto your Basys3. | + | >3.2) Click program to load the abacus demo onto your Basys3. |
- | ==== 4. Running | + | ==== 4. Run the Project |
To run all the features of this demo, all you will need is your programmed Basys3. The abacus can preform 4 arithmatic functions on two 8-bit numbers. Switches 15-8 represent input A. Switches 7-0 represent input B. The abacus works by setting the slide switches to your desired operands and then selecting an operation with the buttons. The result will be displayed on the 7 segment display. On startup, the display will read 0. | To run all the features of this demo, all you will need is your programmed Basys3. The abacus can preform 4 arithmatic functions on two 8-bit numbers. Switches 15-8 represent input A. Switches 7-0 represent input B. The abacus works by setting the slide switches to your desired operands and then selecting an operation with the buttons. The result will be displayed on the 7 segment display. On startup, the display will read 0. | ||
Line 104: | Line 92: | ||
- | >4.1.) Subtraction (BTNU) | + | >4.1) Subtraction (BTNU) |
> | > | ||
>When BTNU is pressed down, this activates subtraction. This function uses the formula A - B. While the button is held down, the display will show a static number that will also display whether it is positive or negative. When BTNU is released, the result will start to scroll through the LEDs. | >When BTNU is pressed down, this activates subtraction. This function uses the formula A - B. While the button is held down, the display will show a static number that will also display whether it is positive or negative. When BTNU is released, the result will start to scroll through the LEDs. | ||
Line 110: | Line 98: | ||
> | > | ||
- | >4.2.) Multiplication (BTND) | + | >4.2) Multiplication (BTND) |
> | > | ||
>When BTND is pressed down, this activates multiplication. This function uses the formula A * B. While the button is >held down, the display will show the product until the user releases BTND. The display will then return to whatever >was last scrolling. | >When BTND is pressed down, this activates multiplication. This function uses the formula A * B. While the button is >held down, the display will show the product until the user releases BTND. The display will then return to whatever >was last scrolling. | ||
Line 118: | Line 106: | ||
>The abacus calculating 3*3 | >The abacus calculating 3*3 | ||
- | >4.3.) Division (BTNR) | + | >4.3) Division (BTNR) |
> | > | ||
>When BTNR is pressed down, this activates division. This function uses the formula A / B. While the button is held down, the display will show the quotient until the user releases BTNR. The display will then return to whatever was last scrolling. | >When BTNR is pressed down, this activates division. This function uses the formula A / B. While the button is held down, the display will show the quotient until the user releases BTNR. The display will then return to whatever was last scrolling. | ||
Line 126: | Line 114: | ||
>The abacus calculating 16 / 2 | >The abacus calculating 16 / 2 | ||
- | >4.4.) Modulo/ | + | >4.4) Modulo/ |
> | > | ||
>When BTNL is pressed down, this activates modulo. This function uses the formula A % B. While the button is held down, the display will show the remainder until the user releases BTNL. The display will then return to whatever was last scrolling. | >When BTNL is pressed down, this activates modulo. This function uses the formula A % B. While the button is held down, the display will show the remainder until the user releases BTNL. The display will then return to whatever was last scrolling. | ||
Line 133: | Line 121: | ||
> | > | ||
>The abacus calculating 17 % 2 | >The abacus calculating 17 % 2 | ||
+ | |||
+ | {{tag> |