How-to articles about designing safe, reliable, and secure embedded systems.
Posted: Fri, 2002-02-01 00:00 - Niall Murphy
Memory leaks can be particularly risky for long-running embedded systems. Here are some tools to identify, track, and analyze memory leaks in embedded C and C++ programs.
Posted: Tue, 2002-01-01 00:00 - Michael Barr
Some human languages are read and written from left to right; others from right to left. A similar issue arises in the field of computers, involving the representation of numbers.
Posted: Mon, 2001-10-01 00:00 - Michael Barr
For those embedded systems that can't be constantly watched by a human, watchdog timers may be the solution.
Posted: Sat, 2001-09-01 00:00 - Michael Barr
Pulse width modulation (PWM) is a powerful technique for controlling analog circuits with a processor's digital outputs. PWM is employed in a wide variety of applications, ranging from measurement and communications to power control and conversion.
Posted: Sun, 2001-07-01 00:00 - Nigel Jones
The proper use of C's volatile keyword is poorly understood by many programmers. This article will teach you the proper way to do it.
Posted: Fri, 2001-06-01 00:00 - Niall Murphy
The format of non-volatile data may change with a new version of software. Carefully planning data layouts and using data version numbers can make these upgrades easier.
Posted: Tue, 2001-05-01 00:00 - Michael Barr
SRAM or DRAM? EEPROM or flash? What types of memory will you use in your next embedded systems design?
Posted: Sun, 2001-04-01 00:00 - Niall Murphy
Embedded systems programmers often value the assert() macro. This article explores the underlying definition of this handy macro, to show you how to roll your own.
Posted: Thu, 2001-03-01 00:00 - Niall Murphy
The assert() macro is one of those simple tools that would not seem to merit an entire article, but I have come across an alarming number of engineers who have not heard of it or do not use it.
Posted: Thu, 2001-02-01 00:00 - Nigel Jones
Products destined for use in multiple countries often require user interfaces that support several human languages. Sloppy string management in your programs could result in unintelligible babble.
Pages