Barr Group TwitterBarr Group Vimeo

With more than three decades of electrical circuitry and embedded software design experience, Nigel has helped a wide variety of clients develop products for the consumer electronics, industrial controls, and telecommunications industries.  End products he has worked on range from portable diesel burners to underwater rebreathers and exploration vehicles.  Industries of expertise include automotive, software, telecommunications, and television. He is a prolific blogger and has published more than a dozen magazine articles about the design of embedded systems.

How to Use Strings to Internationalize C Programs

 Printable PDF

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.

How to Use the C Preprocessor's #error Directive

 Printable PDF

One of the least used but potentially most useful features of the C preprocessor is the ANSI-specified #error directive. Here's a look at a couple of clever uses for #error that have proven invaluable in embedded software development.

The syntax of #error is very straightforward:

How to Create Jump Tables via Function Pointer Arrays in C and C++

 Printable PDF

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.

Pages