Publisher: O'Reilly Media Released: January 1999 Pages: 200
Embedded software is in almost every electronic device designed today. There is software hidden away inside our watches, microwaves, VCRs, cellular telephones, and pagers; the military uses embedded software to guide smart missiles and detect enemy aircraft; communications satellites, space probes, and modern medicine would be nearly impossible without it. Of course, someone has to write all that software, and there are thousands of computer scientists, electrical engineers, and other professionals who actually do. Each embedded system is unique and highly customized to the application at hand. As a result, embedded systems programming is a widely varying field that can take years to master. However, if you have some programming experience and are familiar with C or C++, you're ready to learn how to write embedded software. The hands-on, no-nonsense style of this book will help you get started by offering practical advice from someone who's been in your shoes and wants to help you learn quickly. The techniques and code examples presented here are directly applicable to real-world embedded software projects of all sorts. Even if you've done some embedded programming before, you'll still benefit from the topics in this book, which include: - Testing memory chips quickly and efficiently
- Writing and erasing Flash memory
- Verifying nonvolatile memory contents with CRCs
- Interfacing to on-chip and external peripherals
- Device driver design and implementation
- Optimizing embedded software for size and speed
So whether you're writing your first embedded program, designing the latest generation of hand-held whatchamacalits, or simply managing the people who do, this book is for you. |
-
Chapter 1 Introduction -
What Is an Embedded System? -
Variations on the Theme -
C: The Least Common Denominator -
A Few Words About Hardware -
Chapter 2 Your First Embedded Program -
Hello, World! -
Das Blinkenlights -
The Role of the Infinite Loop -
Chapter 3 Compiling, Linking, and Locating -
The Build Process -
Compiling -
Linking -
Locating -
Building das Blinkenlights -
Chapter 4 Downloading and Debugging -
When in ROM ... -
Remote Debuggers -
Emulators -
Simulators and Other Tools -
Chapter 5 Getting to Know the Hardware -
Understand the Big Picture -
Examine the Landscape -
Learn How to Communicate -
Get to Know the Processor -
Study the External Peripherals -
Initialize the Hardware -
Chapter 6 Memory -
Types of Memory -
Memory Testing -
Validating Memory Contents -
Working with Flash Memory -
Chapter 7 Peripherals -
Control and Status Registers -
The Device Driver Philosophy -
A Simple Timer Driver -
Das Blinkenlights, Revisited -
Chapter 8 Operating Systems -
History and Purpose -
A Decent Embedded Operating System -
Real-Time Characteristics -
Selection Process -
Chapter 9 Putting It All Together -
Application Overview -
Flashing the LED -
Printing “Hello, World!” -
Working with Serial Ports -
The Zilog 85230 Serial Controller -
Chapter 10 Optimizing Your Code -
Increasing Code Efficiency -
Decreasing Code Size -
Reducing Memory Usage -
Limiting the Impact of C++ -
Appendix Arcom’s Target188EB -
Glossary -
Bibliography -
Colophon |
- Title:
- Programming Embedded Systems in C and C++
- By:
- Michael Barr
- Publisher:
- O'Reilly Media
- Formats:
-
- Print
- Safari Books Online
- Print:
- January 1999
- Pages:
- 200
- Print ISBN:
- 978-1-56592-354-6
- | ISBN 10:
- 1-56592-354-5
|
-
Michael Barr Michael Barr has been an editor of Embedded Systems Programming since 1999 and a contributor since 1997; he is currently that magazine's editor-in-chief. His book about embedded software development -- Programming Embedded Systems in C and C++ (O'Reilly, 1999) -- has taught tens of thousands of engineers the subject and been translated into several languages. He is also the author of CMP Book's Embedded Systems Dictionary (2003). Michael is a lecturer at the University of Maryland and a popular Embedded Systems Conference instructor and advisor. Software he wrote helps run millions of systems around the world, ranging from satellite base stations to physical therapy equipment. Through the Netrino Consultants Network, Michael provides design advice and training. He holds MS and BS degrees in electrical engineering. View Michael Barr's full profile page. |
Colophon Our look is the result of reader comments, our own experimentation, and feedback from distribution channels. Distinctive covers complement our distinctive approach to technical topics, breathing personality and life into potentially dry subjects. The insects on the cover of Programming Embedded Systems in C and C++ are ticks. There are approximately 850 species of these small to microscopic, blood-feeding parasites distributed worldwide. They are particularly abundant in tropical and subtropical regions. There are two main families of tick: hard ticks, whose mouth parts are visible from above, and soft ticks, whose mouth parts are hidden. In both hard and soft ticks, the mouth is made up of three major parts: the palps, the chelicerae, and the hypostome. It is the hypostome that is inserted into the host's skin while the tick is feeding. A series of backward-facing projections on the hypostome make it difficult to remove the tick from the skin. Most ticks also secrete a sticky substance that glues them into place. This substance dissolves when the tick is done feeding. Their external body surface expands from 200 to 600 percent to accommodate the blood that is ingested. Ticks go through three life stages: larva, nymph, and adult. At each stage they feed on a mammal, reptile, or bird host. Ticks wait for a host by perching on leaves or other surfaces with their front two legs extended. When a host brushes up against them they latch on and attach themselves. Adult female hard ticks lay a single batch of thousands of eggs and then die. Adult male ticks also die after a single mating. As parasites go, ticks can be very nasty. They transmit more disease than any other blood-sucking parasite, including Lyme disease, Rocky Mountain spotted fever, and relapsing fever. They can also cause excessive blood loss. Some ticks secrete nerve poisons that can potentially cause death. A tick can be removed from skin by grasping it with a tweezer or a special tick-removing device as close to the skin as possible, and pulling in one steady motion. Do not squeeze the tick. Immediately flush it down the toilet or place it in a sealed container and hold onto it for one month, in case you develop symptoms of a disease. Edie Freedman designed the cover of this book, using a 19th-century engraving from the Dover Pictorial Archive. The cover layout was produced with Quark XPress 3.3 using the ITC Garamond font. The inside layout was designed by Edie Freedman and implemented in FrameMaker by Mike Sierra. The text and heading fonts are ITC Garamond Light and Garamond Book. The illustrations that appear in the book were created in Macromedia Freehand 7.0 by Robert Romano. This colophon was written by Clairemarie Fisher O'Leary. |
|
Description
|
Table of Contents
|
Product Details
|
About the Author
|
Colophon
|
 |
|
 |
|
|
|
Recommended for You
|
Recently Viewed
|
 |
|
By Josh Beggs, Dylan Thede
January 2001
By Jennifer Fleming
September 1998
By Dan Connolly
October 1997
|
Customer Reviews
9/4/2003 (7 of 8 customers found this review helpful) 1.0Programming Embedded Systems in C and C++ Review By Sohail from Undisclosed 7/17/2001 (8 of 9 customers found this review helpful) 4.0Programming Embedded Systems in C and C++ Review By James Ftizsimons from Undisclosed 2/4/2001 (1 of 2 customers found this review helpful) 4.0Programming Embedded Systems in C and C++ Review 10/19/2000 (4 of 4 customers found this review helpful) 3.0Programming Embedded Systems in C and C++ Review By Andy Douglas from Undisclosed 7/10/2000 (2 of 3 customers found this review helpful) 4.0Programming Embedded Systems in C and C++ Review By vijay rajan from Undisclosed
|
|
|