Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionLast revisionBoth sides next revision | ||
programmable-logic:basys-3:demos:keyboard [2021/08/26 21:32] – ↷ Links adapted because of a move operation Arthur Brown | programmable-logic:basys-3:demos:keyboard [2022/09/12 13:50] – changed forum.digilentinc.com to forum.digilent.com Jeffrey | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Basys 3 Keyboard Demo ====== | ||
- | <WRAP todo important> | ||
- | == Under Construction == | ||
- | </ | ||
- | |||
- | {{: | ||
- | |||
- | ===== 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:// | ||
- | |||
- | < |