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 is obvious that these implementations are not meant for reuse.  The implementations and strategies often lack scalability, the ability to debounce multiple buttons easily and portability.  They are tightly coupled … Continue reading 7 Steps to Create a Reusable Debounce Algorithm

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 a difference.  Configuring interrupts always has some gotcha hidden away that leaves the developer scratching their head and seeking answers in an obscure data sheet or online code snippet.  Thankfully … Continue reading 10 Pain-free Steps to Configure an Interrupt Controller

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 in a flexible and cost-efficient manner all from software. When developers typically think about DSP, they often picture expensive, dedicated processors, but modern microcontrollers, such as the Arm Cortex-M processors, now include DSP extensions that allow DSP algorithms to be … Continue reading 5 Tips for Getting Started with Digital Signal Processing (DSP) on Arm Cortex®-M CPUs