One of the least used but potentially
most useful C preprocessor directives is #error.
Here's a look at a couple of clever uses for #error that have proven
invaluable in embedded software development.
#error is an ANSI-specified
feature of the C preprocessor (cpp). Its syntax is very straightforward:
With all the automation available
today, it's easy for programmers to overlook costly overhead introduced into machine code by the compiler. Interrupt handlers are one key area worthy of a closer inspection.
If ever there was a piece of embedded software ripe for
reuse it's the memory test. This article shows how to test for
the most common memory problems with a set of three efficient,
portable, public-domain memory test functions.
What is the Design by Contract programming philosophy, what can it do
for you, and why should all embedded software developers care?
If you were to single out just one most effective programming technique
for delivering high-quality code, what would you choose? Object-oriented
programming? Generic programming? Design patterns? Software
components? Frameworks? UML? CASE tools?
This next installment of enforceable coding standards for
embedded systems offers bug-killing rules for using certain C keywords and
naming global variables.