Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revision | |||
| programmable-logic:basys-3:demos:keyboard [2022/09/12 13:50] – changed forum.digilentinc.com to forum.digilent.com jeff.greenberg_ni.com | programmable-logic:basys-3:demos:keyboard [2022/10/04 11:38] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | ====== Basys 3 Keyboard Demo ====== | ||
| + | |||
| + | {{: | ||
| + | |||
| + | ===== Description ===== | ||
| + | The Keyboard Demo project demonstrates a simple usage of the Basys3' | ||
| + | USB-HID and USB-UART ports. The behavior is as follows: | ||
| + | |||
| + | * The user presses a key on the keyboard, this sends a keyboard PS/2 scan code to the Basys3 over the USB-HID port. This scan code is read and transmitted to a terminal application via the USB-UART bridge. When the key is released, a scan code of F0XX is transmitted, | ||
| + | |||
| + | ---- | ||
| + | ===== Inventory ===== | ||
| + | |||
| + | * Basys 3 with a MicroUSB Programming Cable | ||
| + | * Vivado installation compatible with the latest release of this demo (2020.1) | ||
| + | * //See [[programmable-logic: | ||
| + | * Serial Terminal application to receive messages printed by the demo | ||
| + | * //See [[programmable-logic: | ||
| + | * USB Keyboard | ||
| + | |||
| + | ---- | ||
| + | ===== Download and Usage Instructions ===== | ||
| + | |||
| + | First and foremost, releases - consisting of a set of files for download - are only compatible with a specific version of the Xilinx tools, as specified in the name of the release (referred to as a //release tag//). In addition, releases are only compatible with the specified variant of the board. For example, a release tagged " | ||
| + | |||
| + | The latest release version for this demo is highlighted in green. | ||
| + | |||
| + | **Note:** //Releases for FPGA demos from before 2020.1 used a different git structure, and used a different release tag naming scheme.// | ||
| + | |||
| + | ^ Release Tag ^ Release Downloads | ||
| + | | @#C0EEBD: Keyboard/ | ||
| + | | v2018.2-3 | ||
| + | | v2018.2-2 | ||
| + | | v2018.2-1 | ||
| + | |||
| + | **Note for Advanced Users:** //All demos for the Basys 3 are provided through the [[https:// | ||
| + | ---- | ||
| + | Instructions on the use of the latest release can be found in this dropdown: | ||
| + | |||
| + | --> Using the Latest Release # | ||
| + | |||
| + | <WRAP group> | ||
| + | |||
| + | {{page> | ||
| + | |||
| + | --> Set up the Basys 3 # | ||
| + | |||
| + | Plug the Basys 3 into the computer using the microUSB cable. Also plug the keyboard into the Basys 3. | ||
| + | |||
| + | ---- | ||
| + | <-- | ||
| + | |||
| + | {{page> | ||
| + | |||
| + | At this point, the demo is now running on your board. Refer to the [[# | ||
| + | </ | ||
| + | |||
| + | <-- | ||
| + | ---- | ||
| + | |||
| + | ===== Functionality ===== | ||
| + | ==== 1. Key Press ==== | ||
| + | |||
| + | >When a button is pressed, the value of the scan code will be converted to ASCII and transmitted to the terminal. In the picture, ' | ||
| + | > | ||
| + | > | ||
| + | |||
| + | ==== 2. Key Release ==== | ||
| + | |||
| + | >When the ' | ||
| + | > | ||
| + | > | ||
| + | |||
| + | ==== 3. Multiple Key Presses ==== | ||
| + | |||
| + | >When multiple keys are pressed their scan codes are sent over UART in order. In this case, Q (" | ||
| + | > | ||
| + | > | ||
| + | |||
| + | ===== Additional Resources ===== | ||
| + | |||
| + | All materials related to the use of the Basys 3 can be found on its [[..: | ||
| + | |||
| + | For a walkthrough of the process of creating a simple HDL project in Vivado, see [[programmable-logic: | ||
| + | |||
| + | For technical support, please visit the [[https:// | ||

