Serial Receiver/Transmitter ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ This design demonstrates a UART transmitter/receiver on the basys3 board. ASKII values can be sent over USB to a putty terminal and characters from the Putty terminal can be sent back to the basys. To build the design first navigate to the additional_examples directory: .. code-block:: bash :name: additional-example cd additional_examples Then run make to compile the design: .. code-block:: bash :name: example-uarttx-rx-basys3 make -C uart_tx-rx At completion, the bitstream is located in the build directory: .. code-block:: bash cd uart_tx-rx/build/basys3 Now, you can upload the design with: .. code-block:: bash openocd -f ${INSTALL_DIR}/${FPGA_FAM}/conda/envs/${FPGA_FAM}/share/openocd/scripts/board/digilent_arty.cfg -c "init; pld load 0 top.bit; exit" Once the code has been downloaded to the board, open a Putty terminal and choose the correct serial connection line for your board. Also set the baud rate to 19200, data bits to 8, stop bits to 1, the parity to ODD, and the flow control to NONE. You can change these properties in Putty by looking under the serial settings on the left hand side. After configuring Putty, open a session and type some characters. The ASKII values of the keys you press will be shown on the two left most displays of the basys3 board in hex. The LEDs are used to notify of any reception errors. You can also transmit ASKII characters to putty by following the same procedures as in the uart_receiver example. The following is a visual example of the receiver/transmitter: .. image:: ../images/uart_tx.gif :align: center :width: 50%