Home Page -------------------
[Home Page] - [Reviews Main]
-------------------

Book Review
Serial Communications in C and C++ by Mark Goodwin
Recommended
ISBN: : 1-55828-203-3       Publisher: MIS Press (Pitman)       Pages: 319 pp + disk       Price: £4.95
Categories:   networks     advanced c++     advanced c    
Reviewed by unknown in Overload OL4 (Feb 1994)
Serial communications is one of those subjects that programmers find second nature, or is a black hole in their knowledge. This book is useful for its toolbox of communications functions and classes that could, if necessary be used without too much understanding of the serial interface. The book opens with a comprehensive introduction to the jargon used, what an RS-232 interface is and an overly detailed look at the registers of the 8250 and 16550 UART's used to implement the PC's RS-232 interface.

The modem is the subject of the next chapter, and covers some of the international standards, a brief explanation of the "Hayes-Compatible " AT commands, error correction and data compression, flow control and null modems.

There then follows an example program of how to use the ROM BIOS INT 14H calls to control the serial port and illustrates just how inadequate this method is. The author then proceeds to develop an interrupt driven serial communications toolbox. This is written in assembler for the low level character i/o to and from the serial port and the interrupt handler routines. The routines used to set and retrieve the configuration of the baud rates, numbers of stop and data bits, parity and flow control are all written in C. The author then combines the separate C functions into an easy to use serial port object. At each stage of development, so far, he has illustrated the use of the methods discussed by means of a dumb-terminal example.

File transfer protocols are next on the list, and a series of X- and Y-modem protocol functions (together with the X- 1K and the Y- G variants). He then derives a simple to use file transfer port class from the previous serial port class.

ANSI terminal C routines and an equivalent C++ class is then developed together with a comprehensive list of all the ANSI terminal escape sequences, what they mean and how to use them.

The final chapter takes you through the stages of writing simple communications programs in C and C++ that are capable of file transfer over a modem. The final 80 pages form a comprehensive appendix of both the C and C++ functions and classes presented throughout the book. This appendix is useful and will probably be well dog-eared by any programmers using the communications tool kit code.

I don't think the initial chapters are strong enough on introductory material, and the register maps of the UART's would probably be better consigned to the appendices. This aside, it is a very good book for the sadist wishing to play with communications on the PC.


Other Authors with the same surname

Goodwin
Graphical User Interfaces in C++ & Object Oriented Programming by Mark Goodwin  (Reviewed Nov 1991)


Last Update - 13 May 2001.

To link to this review, please use the URL: http://www.accu.org/bookreviews/public/reviews/s/s001131.htm

Copyright © The Association of C & C++ Users 1998-2000. All rights reserved.

Mirrored from http://www.accu.org/