Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
This book has been written for undergraduate students of electrical, electronics and computer science engineering as well as for software engineers interested in system design and hardware engineers interested in interfacing the MCUs. The book starts from classic 8051 MCU and goes on to explain the concepts necessary for designing the embedded systems.
The first chapter begins with 8051 architecture and then its instructions, interrupt-servicing structure, programming and interfacing methods. The study of these concepts will help in developing systems based on MCUs like 8051, 80x96, 68HC11/12/16, and the latest, ARM-based, high performance, low power MCUs.
The organisation of each chapter is as follows:
Chapter 1 gives an introduction to the types of MCUs and lists the various examples of popular MCUs and their applications.
Chapter 2 describes and explains the architectural overview and introduces the MCU hardware onchip resources like memory, ports, timer devices, PWM, IO serial communication devices, DAC and ADC.
Chapter 3 explains 8051 MCU family architecture through a three-step approach. It describes 8051 on-chip resources—special function registers, SFR and internal RAM addresses and individual bitaddresses, internal program and data memory, external program and data memory, memory mapped on-chip ports, internal timers, serial communication and UART devices. It also describes the interrupt sources in 8051 and its special servicing features for the interrupts from internal and external devices. A description of extended 8051 variants and Philips novel 8051MX variant is also included.
Chapter 4 describes the instruction set of 8051. It explains the use of instructions for data transfer, data and bit manipulation, arithmetic and logic operations, and program-flow control and interrupt control.
Chapter 5 is an innovative presentation of interrupt structures in the microprocessors and MCUs. This chapter explicitly clarifies the interrupt vector, priorities and masking concepts and the ways of interrupt servicing in case of interrupts from multiple internal and external sources.
Chapter 6 deals with MCU timers, timer out-compare, input-capture, and the internal-timer applications. It also explains the interrupt latencies, density, and constraints. These concepts find extensive use in timer device application programming in the MCUs. These software timers and real time clock interrupts are also dealt with in detail.
Chapter 7 teaches the interfacing of peripheral ICs with the microprocessor and MCUs. It describes 8251, 8255, 7257 and 8259. The chapter also explains the ADC and DAC circuits and interfacing besides various other concepts.
Chapter 8 covers a very important aspect of interfacing keypad and display system—Mobile phone, PocketPC and PDA users. It starts with the basics of interfacing a single key and key bounces. It further covers LCD controllers and many important interfaces in industrial control systems, instrumentation, and robotics.
Chapter 9 describes programming framework provided by the registers, assemblers, structured assemblers, decision blocks and control structures in assemblers and C language.
Chapter 10 gives the concept of software building blocks for creating a strong programming framework. The aspect of parsing of keys is also explained here.
Chapter 11 describes the concept of RTOS with examples. An important aspect is the explanation of the pre emptive and round-robin scheduling and synchronisation of the multiple tasks.
Chapter 12 discusses the development tools, uses of IDE, ICE, target system, device programmer, and exemplary code generation and debugging tools.
Chapter 13 explains the Motorola MCU 68HC11, its architecture, internal memory, and devices. The description of its powerful timers and interrupt structure simplicity are the highlights of this chapter.
Chapter 14 describes the Intel MCU 80x96, its 16-bit architecture, internal memory, and devices. It also deals with the powerful high-speed outputs and inputs and vertical and horizontal windows in the page 0 memory space.
Chapter 15 discusses the latest high performance, but low power 32-bit MCU ARM. It has innovative RISC architecture and instruction sets. High-code density results from another innovative subset of the instructions, called Thumb instruction set. This chapter introduces the latest ARM architecture based MCUs from Philips, ST Electronics, and Samsung. These MCUs facilitate high-speed routers and Pocket PCs.
Appendices give important 8051 basic assembly programs and data compiled on 8051. The references and websites sources should enable the readers to understand and study various topics related to the microcontrollers.
Every effort has been made to give correct information in the book. Suggestions for further improvement of the book from teachers and scholars are welcome.
May 2005
Raj Kamal