EmbeddedRelated.com
The 2026 Embedded Online Conference

C++ on microcontrollers 4 – input pins, and decoding a rotary switch

Wouter van OoijenWouter van Ooijen November 12, 20112 comments

Wouter van Ooijen shows how to extend a small C++ I/O library for microcontrollers to support input pins and mixed I/O, and how to decode a rotary switch reliably. The post walks through a safe class hierarchy for input, output, and bidirectional pins, then builds a quadrature decoder with a saturating counter and an HC595 seven-segment demo you can run on LPCXpresso hardware.


C++ on microcontrollers 3 – a first shot at an hc595 class with 8 output pins

Wouter van OoijenWouter van Ooijen November 2, 2011

A simple HC595 wrapper turns into a nice C++ lesson in how to build reusable I/O abstractions for microcontrollers. Wouter van Ooijen shows how to expose all eight shift-register outputs as regular output pin objects, then generalizes the same pattern to MCU ports and even daisy-chained HC595 chips. Along the way, he runs into a classic class dependency problem and resolves it with forward declarations and out-of-class method definitions.


C++ on microcontrollers 1 - introduction, and an output pin class

Wouter van OoijenWouter van Ooijen October 9, 20117 comments

Wouter van Ooijen shows how small C++ abstractions make GPIO code portable and reusable. Starting from a simple output_pin interface he implements concrete pins for an LPC2148 GPIO and a 74HC595 shift register, then composes behaviors with wrappers like tee and invert. The post demonstrates virtual methods, references, and constructor initialization lists to build drivers you can reuse across boards.


STM32 B-CAMS-OMV Walkthrough

Peter McLaughlinPeter McLaughlin April 30, 20231 comment

Want to prototype embedded vision quickly? This walkthrough shows how the STM32 B-CAMS-OMV camera module pairs with the STM32H747I-DISCO discovery kit and the FP-AI-VISION1 function pack to get you running in minutes. The video covers the camera connection interface, key software functions to control and process data, and the ISP features that let image processing run inside the camera. The STM32 H7 project with B-CAMS-OMV drivers is available on GitHub.


Data Validity in Embedded Systems

Stephen FriederichsStephen Friederichs October 5, 20131 comment

Real-world sensors and serial links often deliver garbage, and embedded software must recognize and handle invalid inputs before they cause failures. In this post Stephen Friederichs walks through practical validity checks, from simple range tests and sentinel values to hardware status flags and timing checks for stale data. He also outlines safe responses, from graceful degradation to fail-safe shutdowns, so firmware behaves predictably in the unexpected.


Handling latency in data acquisition systems

Fabien Le MentecFabien Le Mentec November 8, 2015

In recent projects, I found myself working with data acquisition systems. For instance: PCIe/10GbE readouts for 2D XRay detectors (RASHPA slides, RASHPA paper) instruments mixing 1D signal acquisition and triggering, microcontroller based system for audio transmission: (NRF spearker)


The 2026 Embedded Online Conference