README.md (1559B)
1 # Projects in Embedded Software 2 ## Hardware 3 For these projects, an Arduino Every with an ATmega4809 microcontroller was used. The microcontroller was mounted on a custom adapter board to allow compatibility with Arduino UNO R3 Shields. A custom board was attached to the adapter, which included 10 LEDs, 1 potentiometer, 2 buttons, and 1 variable frequency generator. 4 5 ## Software 6 All software was written in C, using interrupts for all timer based features. 7 8 ## Project 1 9 **Cylon animation with voltage reading** 10 11 The board is programmed to do the following 12 - Show a cylon animation (See [appendix 1](https://ww1.microchip.com/downloads/en/DeviceDoc/ATmega4808-4809-Data-Sheet-DS40002173A.pdf)). 13 - When a button on the board is held, show voltage reading from potentiometer. 14 - Every 16 seconds, show a split view, voltage on the right, and cylon on the left. 15 - If voltage reading <= 3V, set cylon animation speed to 0.125S. 16 - If voltage reading > 3V, set cylon animation speed to 0.5S. 17 18 All time based functionality was implemented using interrupts. 19 20 ## Appendix 21 ### Appendix 1: Cylon 22 A cylon is a sequential activation of the LED:s. 23 1. Turn on LED 1 24 2. Turn off LED 1, and turn on LED 2. 25 3. Turn off LED 2, and turn on LED 3. 26 4. Repeat until you reach the end. 27 5. Reverse procedure 28 29 ### Appendix 2: ATmega 4809 30 For more information, see [datasheet](https://ww1.microchip.com/downloads/en/DeviceDoc/ATmega4808-4809-Data-Sheet-DS40002173A.pdf). 31 32 ### Appendix 3: Adapter board 33 