We’re in 2018 and the number of persons who think they know how to write micro-controller firmware is constantly growing. Let me get this straight: Writing a firmware that will work on a prototype is one problem, regardless of what this firmware is achieving. Ensuring this firmware will work on thousands of circuit boards and never endure sporadic system failure is a whole other story, and this is what this eBook is all about.
In this document, I won’t be explaining the basics of programming, I’ll even assume you already know how to code in C, and that you have already dug your way through several embedded firmwares.
This eBook will help you to organize your code to be stable and robust. It will show you how to design the firmware in such a way that allows it to grow without breaking up at some point. A firmware is something that is often meant to evolve and needs to be easily maintained.
It’s also worth noting that I am presenting a proven method of designing robust firmware according to my personal experience during the past 15 years. I am not saying it’s the best method nor the only one.
Finally, please note that I won’t be using any real time OS in this eBook. Only “bare metal” programming. It’s a choice that can be discussed, but I’ve always preferred to have full understanding and control over the code I’m writing in a microcontroller. I consider that being so close to the hardware is a privilege you don’t have when working on non-embedded software.
This eBook is brought to you by:
Ikalogic is a French company focused on the ergonomics of test and measurement instruments. Ikalogic allows you to concentrate on your creativity by taking frustration away from the debugging and diagnostic process. With a strong engineering background, Ikalogic is able to provide ground breaking solutions in the test and measurement industry. In 2017 Q3, Ikalogic introduced IkaScope , a wireless oscilloscope probe that will surprise you by its simplicity and performance.
IkaScope will display measured signals on any connected screen like a smartphone, a tablet, a laptop or desktop computer. Being battery operated, IkaScope is galvanically isolated from the mains.
Ikalogic is also providing logic analyzers (ScanaQuad series) that are perfectly adapted to the debugging and diagnostic of serial protocols like I2C, SPI, RS232, CAN, 1-Wire, etc. Intuitive ScanaStudio software runs on all major platforms (Win/Mac/Linux) and lets you perform in depth analysis on captured logic signals. With ScanaStudio, you can even modify existing protocol decoders or write your own proprietary decoder.
Ikalogic is actively working on new software updates as well as new products, so check the website often!