This PR adds a driver and module for the flash memory. The flash memory module uses the flash memory driver to abstract the utilities we need to read/write data to/from the flash memory into a coherent API.
It also corrects small but critical bugs in the SPI library, the altimeter driver, Timer.c, and main.c. It adds a file to allow for drivers to safely access variables larger than 1 byte that are modified by an ISR.
This PR adds a driver and module for the flash memory. The flash memory module uses the flash memory driver to abstract the utilities we need to read/write data to/from the flash memory into a coherent API.
It also corrects small but critical bugs in the SPI library, the altimeter driver, Timer.c, and main.c. It adds a file to allow for drivers to safely access variables larger than 1 byte that are modified by an ISR.