4 ms·
The Arduino hides a lot of its complexity through its libraries and software interface, but it is open source! This means you can learn a lot about embedded pro
by chas 14y ago
The Arduino hides a lot of its complexity through its libraries and software interface, but it is open source! This means you can learn a lot about embedded programming (that might be difficult to get from datasheets) from its source code. For instance https://github.com/arduino/Arduino/blob/master/hardware/arduino/cores/arduino/wiring_digital.c https://github.com/arduino/Arduino/blob/master/hardware/ardu... is a pretty good resource for learning how to do i/o on a microcontroller. In addition, the arduino environment is still running your code through avr-g++ so anything you can do on an ATMega328P (or whichever chip your Arduino is using) you can do on an Arduino by using the low-level interface directly. This means you can iteratively transition from completely relying on the Arduino to coding from scratch. Open source circuit schematics mean you can build your own circuits based on the Arduino and have a known good test platform as a reference.