You know what they say when you ASSUME, you make an ASS out of U and ME. That’s exactly what developers are doing when they...
Read More >>>Category Archives: C Concepts
Is the war between C and C++ Over?
Back when I was an engineering student and a budding young engineer, it wasn’t unusual to open (yes physically open) the latest edition of embedded...
Read More >>>Using Callbacks with Interrupts
On a weekly basis, I receive a fair number of emails with questions about how to design embedded systems. One question that seems to be...
Read More >>>5 Techniques to Delay Code Execution
An interesting problem that often comes up in embedded software implementation is figuring out how to delay code execution. Sometimes a developer might just want...
Read More >>>7 Steps to Create a Stack Monitor
One of the most painstaking bugs to hunt down in an embedded system is when the stack overflows its boundaries and starts to overwrite memory...
Read More >>>7 Steps to Create a Reusable Debounce Algorithm
A quick google search reveals that there are over 212,000 websites that examine how to debounce a button. After examining a number of them it...
Read More >>>Using strstr to Parse JSON Messages
When I first started to write embedded applications in C, microcontrollers were not very powerful, and we rarely ever parsed or worked with human readable...
Read More >>>10 Pain-free Steps to Configure an Interrupt Controller
Properly setting up interrupts on a microcontroller isn’t easy. The number of times an engineer has setup interrupts in their career doesn’t seem to make...
Read More >>>5 Tips for Getting Started with Digital Signal Processing (DSP) on Arm Cortex®-M CPUs
Digital signal processing (DSP) provides developers with the ability to clean-up and analyze complex signals...
Read More >>>The Hardware Abstraction Layer Design Process
Using a HAL is a great way to develop software that can be easily reused and ported from one application and platform to the next....
Read More >>>7 Tips for using assertions in C
One of the greatest bug squashing tools available to embedded software developers is the assert macro. Despite the power of assert, I rarely see it...
Read More >>>The Biggest Embedded Software Issue Is …
There are many different problems and challenges that embedded software developers are facing today. One of the biggest, and least spoken about issues that I...
Read More >>>