Motorola's Background Debug Mode is one of a variety
of on-chip debug technologies. Collectively, they offer some of
the best features of debug monitors and in-circuit emulators—with
far less headache and cost.
The address resolution protocol provides a necessary
bridge between physical and logical addresses on a TCP/IP network.
Every system on a TCP/IP network has two addresses, one physical
and one logical. The address resolution protocol (ARP) provides
a necessary bridge between these two addresses.
In 1998, the UK's Motor Industry Software
Reliability Association established a set of 127 guidelines for
the use of C in safety-critical systems. Here's a look at the
rules, what they mean, and how they can work for you.
C's seldom-used offsetof()
macro can actually be a helpful addition to your bag of tricks.
Here are a couple of places in embedded systems where the macro
is indispensable, including packing data structures and describing how EEPROM
data are stored.
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.
The 8051, 68HC11, and Microchip PIC are popular
microcontrollers, but they aren’t necessarily easy to program. This article
shows how the use of ANSI C and compiler-specific constructs can
help generate tighter code.
For embedded software developers, the most significant improvements to the C programming language made in the ISO C99 standard update are in the new <stdint.h> header file. Learn the typedef names for the new fixed width integer data types, to make hardware interfacing in C easier.
Computer programmers don't always care how wide an integer is when held by the processor. For example, when we write:
As engineers design more and more products with embedded computer systems that require connections
of one sort or another, we've got to pay attention to the ease
with which these connections can be made. Short-range wireless protocols offer
an attractive alternative to wired connections.
Jump tables, also called branch tables, are an efficient means of handling similar events in software. Here's a look at the use of arrays of function pointers in C/C++ as jump tables.
Whenever you connect two or more computers together with
the intent of exchanging information, you assume that the exchange
will take place without errors. But what if some of the data is
lost or corrupted in transit? Communication protocols usually
attempt to detect such errors automatically. To do that they use
checksums.