Embedded Microcomputer Systems: Real Time Interfacing provides an in-depth discussion of the design of real-time embedded systems using 9S12 microcontrollers. This book covers the hardware aspects of interfacing, advanced software topics (including interrupts), and a systems approach to typical embedded applications. This text stands out from other microcomputer systems books because of its balanced, in-depth treatment of both hardware and software issues important in real time embedded systems design. It features a wealth of detailed case studies that demonstrate basic concepts in the context of actual working examples of systems. It also features a unique simulation software package on the bound-in CD-ROM (called Test Execute and Simulate, or TExaS, for short) – that provides a self-contained software environment for designing, writing, implementing, and testing both the hardware and software components of embedded systems.
Table of Contents
1. MICROCOMPUTER BASED SYSTEMS.
Computer Architecture. Embedded Computer Systems. The Design Process. Digital Logic and Open Collector. Digital Representation of Numbers. Common Architecture of the 9S12. 9S12 Architecture Details. Phase-Lock Loop (PLL). Parallel I/O Ports. Choosing a Microcontroller.
2. DESIGN OF SOFTWARE DEVELOPMENT.
Quality Programming. Assembly Language Programming. Self-Documenting Code. Abstraction. Modular Software Development. Layered Software Systems. Device Drivers. Object-Oriented Interfacing. Threads. Recursion. Debugging Strategies.
3. INTERFACING METHODS.
Introduction. Key Wake-Up. Blind Cycle Counting. Synchronization. Gadfly or Busy-Wait Synchronization. Parallel I/O Interface Examples. Serial Communications Interface (SCI) Device Driver. Parallel Port LCD Interface with the HD44780 Controller.
4. INTERRUPT SYNCHRONIZATION.
What are Interrupts? Reentrancy and Critical Sections. First-In-First-Out Queue. General Features of Interrupts on the 9S12. Interrupt Vectors and Priority. External Interrupt Design Approach. Polled vs. Vectored Interrupts. Pseudo-Interrupt Vectors. Key Wake-Up Interrupt Examples. Power System Interface Using XIRQ Synchronization. Interrupt Polling Using Linked Lists. Interrupt Priority. Round-Robin Polling. Periodic Interrupts. Low Power Design.
5. REAL-TIME OPERATING SYSTEMS.
Introduction. Round-Robin Scheduler. Semaphores. Thread Synchronization and Communication. Fixed Scheduling. OS Considerations for I/O Devices.
6. TIMING GENERATION AND MEASURMENTS.
Input Capture. Output Compare. Frequency Measurement. Conversion Between Frequency and Period. Pulse Accumulator. Pulse-Width Modulation on the MC9S12C32.
7. SERIAL I/O DEVICES.
Introduction and Definitions. RS232 Specifications. RS422/USB/RS423/RS485 Balanced Differential Lines. Other Communication Protocols. Serial Communications Interface. Synchronous Transmission and Receiving Using the SPI. Inter-Integrated Circuit (I2C) Interface. Logic Level Conversion. Universal Serial Bus (USB).
8. PARALLEL PORT INTERFACES.
Input Switches and Keyboards. Output LEDs. Liquid Crystal Displays. Transistors Used for Computer-Controlled Current Switches. Computer-Controlled Relays, Solenoids, and DC Motors. Stepper Motors. Servo Motors.
9. MEMORY INTERFACING.
Introduction. Address Decoding. General Memory Bus Timing. External Bus Timing. General Approach to Interfacing. 9S12 Paged Memory. Programming Flash EEPROM. Dynamic RAM (DRAM).
10. HIGH SPEED I/O INTERFACING.
The Need For Speed. High-Speed I/O Applications. General Approaches to High-Speed Interfaces. Fundamental Approach to DMA. LCD Graphics. Secure Digital Card Interface. File System Management.
11. ANALOG INTERFACING.
Resistors and Capacitors. Operational Amplifiers (Op Amps). Analog Filters. Digital-to-Analog Converters. Analog-to-Digital Converters. Sample and Hold. BiFET Analog Multiplexer. ADC System. Power. Multiple-Access Circular Queue. Internal ADCs.
12. DATA ACQUISITION SYSTEMS.
Introduction. Transducers. DAS Design. Analysis of Noise. Data Acquisition Case Studies.
13. MICROCOMPUTER-BASED CONTROL SYSTEMS.
Introduction to Digital Control Systems. Open-Loop Control Systems. Simple Closed-Loop Control Systems. PID Controllers. Fuzzy Logic Control.
14. SIMPLE NETWORKS.
Introduction. Communication Systems Based on the SCI Serial Port. Design and Implementation of a Controller Area Network (CAN). Wireless Communication. Modem Communications.
15. DIGITAL FILTERS.
Basic Principles. Simple Digital Filter Examples. Impulse Response. High-Q 60-Hz Digital Notch Filter. Effect of Time Jitter on Digital Filters. Discrete Fourier Transform. FIR Filter Design. Direct-Form Implementations.