Contents—
Overview
SECTION 1 BEGINNINGS
Section I covers C and assembly, for the 8051 family. It will help to have
some previous experience programming. To keep the examples simple, this
section uses only parallel ports.
Chapter 1 introduces the 8051 microcontroller and sets it in the context
of other micros.
Chapter 2 describes computer architecture in general and that of the
8051 family specifically. It describes kinds of memory and explains how in-
formation travels over a bus, The way the central processing unit (CPU)
does math and logical operations is described here.
Chapter 3 goes through af! the machine instructions of the 8051 fam-
ily. While brief examples are given, the following chapters are the place to
learn programming.
Chapter 4 introduces assembly language and C. The different kinds of
variables and the different types of memory space in the 8051 are described.
The chapter covers the logical and arithmetic operations that are important
to embedded applications. The precedence of operators is shown in a table.
Chapter 5 covers the branching and looping constructs, which are es-
sential to any structured programming approach. The idea of structured pro-
gramming is explained as well as the ditference between a loop test at the
start or end of a loop.vi Contents—-Overviow
Chapter 6 gets ito arrays, pointers, and based variables, which are
fundancntal to functions (and usually come at the end of a programming
course). This chapter also goes into structures,
SECTION If FUNCTIONS, MODULES, AND DEVELOPMENT
Chapter 7 covers functions and subroutines—the pieces that contribute to
modular, understandable programs. This chapter also goes into passing val-
ves tw and trum routines.
‘Chapter 8 goes into scope of variables, using multiple files in develop-
ing sofware and the mixing of Tanyuages. The modular approach is: no
Jonger just a technique for switching to ussembly when a high-level tan-
guage becumes tov slow—it is the key 10 well-organized. easily maintained
programs,
Chapter 9 introduces the “integrated development environment” and
software tools from Keil that come with the book. jt shows the development
process und then how to sel up the environment so you can type in progeams
and have then compiled (or assembled) (0 the final form, There is muteriad
‘on the two monitor programs thet come with the available development
boards as well
SECTION Sl MULTITASKING
TE you ane going to write efficient embedded applications code. you must
ure forth on new way of thiaking in which your controller does iwultipte
she same time,” This should be the heart of any real-time contcol
projects.
Chapter 10 imenduces the task and related terms of mubitasking.
Chapter 11 introduces the Ger sind inrervupe hardware of the 8051
funily that are the Key to real-time interrupts and most multitasking,
Chapter 12 develops a form of multitasking sysiem—the scheduler, I
shows how the real-time interrupt makes programming of wuftic Kights sat
other cyclic controlfers quite straightforward.
Chapter 13 categorizes and describes real-time operating, systems as
commnunication between tasks on the same contruler, In addition to the sim-
plest methous using flugs aud shared variables, this chapler describes signal-
ing, message passing and resource management in the Various multitasking
operating systems.Contents—Overview
Chapter 14 goes through a specific example showing the plan
hardware choives, and the software development. It shows how timers and
interrupts allow a sort of mullitasking.
SECTION IV APPENDICES
AL gives both numeric and alphabetic-order lists of assembly language
structions for the 8051. This ix useful if you are hund-disussembling.
chine code,
A2 covers developiacnt ander DOS as well as deseribing some of the
batch files for developing sofware for use with « monitor.
AS gives language-switching hints—8085 to 8051 assembly ay well as
ANSE-standard C tw C with 8051 extensions,
‘Ad describes hank switching as well us covering the design and use a
the two featured development bourds.
AS fists all the known vendors of 805 -refated products with current
addresses und phone numbers.