UART0: Serial Communication

Reference: http://darcy.rsgc.on.ca/ACES/Datasheets/ATMEGA328P.pdf#page=170
Purpose: An assembly level replacement for the Hardware Serial classenable Serial Monitor confirmation of the remaining development stages.

Filenames: UARTDrawBox.ino, UARTDrawBox.S

Task.

The backbone of the AVR's Serial Communication is the U(S)ART. A description of its capabilities can be found in Chapter 20 of the ATmega328p Datasheet. To support what lies ahead in this project it is advantageous to gain familiarity with Serial I/O at the register level, avoiding the dependency of the Hardware Serial class. Once achieved, motivated ACES can take this approach down to the assembly level.

  1. Develop the register-level sketch UARTDrawBox.ino that allows the user to specify the number of columns and rows for a box to be drawn in the Serial Monitor. Concepts of consequence include,

  2. Convert your register-level UARTDrawBox.ino to the AVR Assembly language equivalent, UARTDrawBox.S. Here is the sample output,