
| Foreword Preface 1.Introduction What Is an Embedded System Variations on a Theme Embedded Design Examples Life As an Embedded Software Developer The C Language: The Lowest Common Denominator A Few Words About Hardware 2.Getting to Know the Hardware Understanding the Big Picture Hardware Basics Examine the Landscape Learn How to Communicate Getting to Know the Processor Study the External Peripherals Initialize the Hardware 3.Your First Embedded Program Hello, World! The Blinking LED Program The Role of the Infinite Loop 4.Compiling, Linking, and Locating The Build Process Building the Blinking LED Program A Quick Look at Makefiles 5.Downloading and Debugging Downloading the Blinking LED Program Remote Debuggers Emulators Other Useful Tools Dig into the Hardware 6.Memory Types of Memory Direct Memory Access Endian Issues Memory Testing Validating Memory Contents Using Flash Memory 7.Peripherals Control and Status Registers The Device Driver Philosophy Device Driver Design 8.Interrupts Overview Interrupt Map Interrupt Service Routine The Improved Blinking LED Program Summary of Interrupt Issues 9.Putting It All Together Application Overview Working with Serial Ports Command-Line Interface Processing 10.Operating Systems History and Purpose he Scheduler Task Synchronization Message Passing Other Functionality Interrupt Handling Real-Time Characteristics To Use or Not to Use an RTOS Additional Resources 11.eCos Examples Introduction Task Mechanics Mutex Task Synchronization Semaphore Task Synchronization Message Passing eCos Interrupt Handling 12.Embedded Linux Examples Introduction Accessing Hardware in Linux Task Mechanics Mutex Task Synchronization Semaphore Task Synchronization Message Passing 13.Extending Functional Common Peripherals Networking for All Devices Great and Small 14.Optimization Techniques Increasing Code Efficiency Decreasing Code Size Problems with Optimizing Compilers Reducing Memory Usage Power-Saving Techniques Limiting the Impact of C++ Index |
商品评论(0条)