Showing posts from November, 2022

The book: Practical Arduino C - complete text now free online

 My book on C for Arduinos has an audience and that is reflected in the sporadic (and partly seasonal) sales. Sometimes selling well but with some months figures making grim reading. I wrote the book to make the C (and C++) language a full partner with electronic skills for Arduino hobbyists and professionals. C skills complement hardware design skills and can potentially enable or enhance projects that might otherwise have failed to meet their design objectives. I wrote the book to be read and to act as an ongoing resource for its readers. To that end I am going to make the complete book available on line - and free to read.  The process of moving the book content to HTML is a little time consuming as I wanted the presentation to match the printed page as closely as possible (along with some web style page navigation). That task may take a while to complete. I have completed the first three full chapters and they are available now if you follow this link . Chapter three is a long one

Arduino OLED display

One obvious Arduino UI option that I had previously overlooked was a small OLED display device. While they have a small screen size these are inexpensive devices and easy to communicate with using the I2C 2 wire interface. Installing libraries I used the IDE library manager to look for suitable software to run an SSD1306 OLED display. I chose the Adafruit option as that included provision for a 128 x 32 device and the I2C interface. The installation prompted me to include a GFX and BusIO library as they were dependencies. I knew I wanted a GFX library to manage some basic graphics. Testing Then connected a good old basic Arduino Uno to the board using 4 jumper wires - 2 for power and the 2 for the I2C interface. Then I loaded the appropriate Adafruit supplied example program and watched it happily run through a great demonstration of the display's capabilities. The library supports a wide range of graphics drawing options alongside simple text. Next steps The next step for this lit