My latest book has now become available on Amazon. Still Far Inside The Arduino continues the theme of Far Inside The Arduino and the Nano Every Supplement by using programming techniques and drivers more advanced than what Arduino promotes. Topics include: Distinctions among the various general purpose Arduino boards: ATmega328P based like the Arduino Uno …
Finally I finished the first draft of my next book Son of Far Inside The Arduino* along with writing and testing about 35 example programs, almost all of which had to be tested on Arduino boards using the four different AVR microcontrollers the book covers. I think I spent more time on the example programs …
Most I/O in a microcontroller (like in an Arduino board) consists of transactions. The microcontroller sends a command or a command plus data to a peripheral device and then, perhaps after a short delay, the device sends a response of status and data back to the microcontroller. The Arduino library tends to have only blocking …
My final dice game example for the new book uses FreeRTOS. There are three independent (non communicating) tasks, to keep things simple, rather than breaking down the game itself into multiple communicating tasks. There is the game task, a flashing light (“blinky”) task, and a background task used to measure performance, like I did with …
In looking at the different general purpose Arduino boards available today, I’ve been thinking of how to tie them all together. So I’ve delved as well as I can into the history of Arduino boards. Frankly, it isn’t particularly easy to do. But I did find what appears to be the starting point — the …
It’s been a great past few days for progress on the book. I decided to tackle the Configurable Custom Logic. While I’m familiar with logic and FPGAs, I’ve never had a microcontroller with this feature before. I needed to study what it could do and come up with some reasonable example programs. Frankly, it doesn’t …
Both the ATmega328 and ATmega4809 based Arduino boards have a built in temperature sensor that can be used to measure the temperature of the part, and roughly the ambient temperature. Note that the ATmega2560 in the Arduino Mega does not have this capability. In an ATmega328 based Arduino, such as the Uno or Nano, the …