This project was not simple, but I really enjoyed it.
Throughout the project, I learned many different skills and aquired useful lessons.
C
Learned how C++ and C are different. Was able to successfully build and design my program using C.
ARM Assembly
Learned the differences between ARM assembly and MIPS assembly. Was able to successfully convert parts of the C code to ARM assembly.
SPI
Learned how to use the four physical signals: MISO, MOSI, SCK, and CS.
UART
Learned how transmiting and recieving signals work using the physical signals RXD and TXD.
I2C
Learned how the data is transfered using the signals SDA(serial data) and SCL(serial clock).
Flags
Learned how use flags and interrupts in order to prevent race conditions from occurring.