Different tasks in an embedded system typically must share the same hardware and software resources or may rely on each other in order to function correctly. For these reasons, embedded OSs provide ...
Callbacks are references to executable code that higher levels of software pass into a function. These callbacks have the ability to greatly increase the portability and reuse of embedded software, ...
Heterogeneous multiprocessor (HMP) systems, using functionally asymmetric compute elements, such as application processors and microcontrollers integrated within the same SoCs, are now used ...
Potentially substantial performance gains from the use of multithreading and multiprocessing architectures have captured the attention of designers of consumer devices and other electronic products.
Interestingly, however, Embedded Research's Stewart points out that interrupts often do more harm than good in real-time systems. Most interrupt-driven systems, in fact, can be converted to one ...
Just as you can often treat device registers as a memory-mapped struct, you can treat an interrupt vector as a memory-mapped array. In my last column, I suggested that you use casts sparingly and with ...
In the last lesson, you encountered the concept of a Real-Time Operating System (RTOS), and you worked out a manual procedure of switching the context from one thread to another. In this lesson, ...
The I2C (Inter-Integrated Circuit) Bus invented in 1980 by Philips Semiconductors (NXP Semiconductors today) was a massive step forward in simplifying communications in embedded systems. It is a ...