Embedded Programming
Embedded Programming
This week's homework requires us to program a board to do something meaningful. We could design a new circuit, mill the board, and sell the components, as we have done. Electronic design, among others....
During this week, I dove into the world of embedded programming. I spent several hours studying the ATtiny412 datasheet, which was a steep learning curve but essential for understanding the chip's architecture, memory map, and pinout functions.
Key findings from the datasheet:
- VCC/GND: Operating voltage 1.8V to 5.5V.
- CPU: up to 20 MHz.
- UPDI: Unified Program and Debug Interface for programming.
For the programming workflow, I used the **Arduino IDE** with the **megaTinyCore** support. I wrote a simple script to control the LED and button I added in Week 7. I learned how to use `pinMode()`, `digitalWrite()`, and `digitalRead()` to interact with the hardware.
Right now, I feel like Sisyphus carrying a rock on top of me up the hill, not quite sure I'll make it to the top before the rock rolls again!
I hope this is just a very steep learning curve, which I will eventually manage to climb. The plan for tomorrow is to cover many pages of the 'Data Sheet' in the hope that it might help things fall into place.
I started going through the data sheet and started having a LOT of questions! Although the presentation screenshot cleared things up a bit, I soon felt like I needed to understand more about the abbreviations I was reading. Especially the ones that looked like hieroglyphics to me so I wrote down their abbreviations and did some Google searches which gave me the various results.
Program used: Arduino
Now that I am a little calmer and downloaded the "Arduino" software.
Documentation of the week:
semana 9 de Cindy Marilyn
References