The Ternary Operator Revisited

Several years ago, I wrote a blog post entitled Ternary Operator vs. if/else, which was supposed to be an interesting comparison between the two, except that I totally botched it! The premise is that the ternary operator and if/else statements should compile into identical, so why not just use if/else statements to make the code … Continue reading The Ternary Operator Revisited

5 Tips for Optimizing GUIs in Industrial Applications

Industrial applications have traditionally involved analog buttons, switches, and dials to interact with a user. As you are aware, times are changing, and industrial application users now need rich graphical user interfaces. Many interfaces are built on top of embedded systems, which are quite powerful, but they are still resource-constrained systems. They may be resource-constrained … Continue reading 5 Tips for Optimizing GUIs in Industrial Applications

3 Tips for Speeding Up Interrupt Handlers

Embedded software developers today are a bit spoiled. Many microcontrollers come with an ecosystem that includes peripheral drivers, an RTOS, middleware and even example application code. Many developers can spend most of their time in high-level application code, ignoring the software that meets the hardware. The problem is that while this prebuilt ecosystem can accelerate … Continue reading 3 Tips for Speeding Up Interrupt Handlers

7 Tips for Optimizing Embedded Software

In “5 Embedded System Characteristics Every Engineer Should Monitor”, I discussed key embedded system characteristics that in many cases require optimization. These characteristics include system timing, code size, RAM usage and energy consumption. Optimizing each characteristic typically requires different methods and techniques but there are several general tips developers can follow to optimize their embedded … Continue reading 7 Tips for Optimizing Embedded Software