logo slogan

Title:  Embedded C

Review Date:April 2002
Author:  Michael Pont
Pub: Addison Wesley
ISBN:  0-201-79523
Cover: soft
Pages 294
Keywords: Embedded programming C 8051
Recommendation: none
Source: - direct from publisher


This is another from the prolific Michael Pont. This tome is a little lighter than the last one!  Unfortunately, the book has been retiled from the draft manuscript I saw.  The title then was Embedded C for the 8051.  The "for the 8051" caveat has been removed thus misleading the prospective purchaser.


C is portable but try moving a C program from Unix to MS Windows. Or even an MS Windows program from Borland to the MS C… Now that is for compilers all running on the same platform with the same OS.   The 8051 is an 8 bit micro (with only one 16 bit register), Harvard architecture (ie separate CODE and DATA spaces), usually no operating system at all (you interface directly to the hardware). It has (single bit) bit types because the hardware has a region of bit addressable memory. It has a serial port but no COM ports… In short the C used on the 8051 is specialised. In addition because there is no ISO standard for the C extensions 8051 compilers [1] tend to implement slightly differently. 


This means anyone wanting a general embedded C book will be disappointed. It is an oxymoron.  So, given the caveat that this is an 8051 C book how does it stand up? Like the parson's nose: good and bad, in parts. 


The author still insists, despite my suggestions to the contrary to have all the source code printed in the book.  It should be put (only) onto the CD this would save many pages, though there is less printed source in this book that previous works by the same author.  By the way the source code really was fully tested by the author. Every last line of it!


Whilst we are on the topic of the source code the book does not make it clear that the Keil compiler included is the EVALUATION VERSION limited to 2K CODE space starting at address 0x800. Apart from reviewing the first draft manuscript, I also supplied the Keil compilers for the CD so any problems email me at cah@keil.co.uk.  


When the source code is ignored, the amount of text is quite light. However it says what it needs to. I get the feeling that this is almost "course notes" where you have to go and fill in the details yourself.  However, as an entry to C on the 8051 it covers the basic topics (with working source, a compiler and simulator.)  If 8051 is you interest you could do worse….


My feeling is that the author should have combined this book with the last one (also on 8051), left all of the source code on the CD (not on the printed page) and produced one good 8051 book instead of 2 not so good ones.  Quality not quantity. Either the number of books or page count. K&R only produced the one slim book, two editions. It is a classic. The author should take note.


[1] Note in the term "8051 compiler" the 8051 is used to denote the target.  Most Software Engineers understand this but I have found novice PC programmers think it means a compiler running on the 8051. I have several PowerPC compilers again the "PPC" indicates the target not the host. This is an industry wide convention that I discovered that some PC programmers seem oblivious to.  The host is another matter. It can be MS, Unix, Linux etc running on many different types of hardware.  In most compiler vendors catalogues (other than pure PC compiler vendors) you will see wxy compiler hosted on abc. I have a PPC compiler that runs under Linux on x86 and produces code for a different Linux for the target.   I had the same Power PC compiler that ran on  a Sparc-Unix machine and there is a "native" version that runs under Unix on PPC hardware.