did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

did-you-know? rent-now

Amazon no longer offers textbook rentals. We do!

We're the #1 textbook rental company. Let us show you why.

9780534391775

Introduction to Embedded Microcomputer Systems Motorola 6811/6812 Simulations

by
  • ISBN13:

    9780534391775

  • ISBN10:

    053439177X

  • Edition: 1st
  • Format: Hardcover
  • Copyright: 2002-08-02
  • Publisher: CL Engineering
  • View Upgraded Edition
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $199.95

Summary

Jonathan Valvano's new text provides students with an introduction to the field of microcomputer programming and interfacing using the Motorola 6811 and 6812 chips. The objective of this book is to present basic computer architecture, teach assembly language programming, and introduce microcomputer interfacing. Valvano develops these topics around the TExaS simulator. Included free with the book on CD, the TExaS simulator is a self-contained program for testing microcomputer hardware and software. The simulator shows activity internal to the chip so one can experience the architecture by observing activity inside the microcomputer. Also, TExaS provides the ability to connect external hardware devices like switches, LEDs, LCDs, keyboards, serial port devices, motors, and analog circuits. One can use TExaS to learn microcomputer programming and interfacing, develop software in assembly language using the TExaS assembler, and program in C using a cross-compiler. Compared with Valvano's more advanced book titled "Embedded Microcomputer Systems: Real Time Interfacing," this book contains more hands on use of the TExaS simulator and places less emphasis on theory.

Table of Contents

Introduction to Embedded Microcomputer Systems
1(17)
Overview
1(3)
Attitude
4(2)
Basic Components of an Embedded System
6(1)
Flowcharts and Structured Programming
7(3)
Product Development Cycle
10(3)
Quality Programming
13(1)
Quantitative Performance Measurements
13(1)
Qualitative Performance Measurements
14(1)
Tutorial 1. Getting Started
14(1)
Homework Assignments
15(3)
Information
18(58)
Hexadecimal Representation
19(1)
Boolean Information
20(1)
8-bit Numbers
21(6)
8-bit Unsigned Numbers
21(2)
8-bit Signed Numbers
23(2)
Character Information
25(1)
8-bit Binary Coded Decimal (BCD)
26(1)
Extended Precision Numbers
27(3)
6-bit Unsigned Numbers
27(1)
16-bit Signed Numbers
27(1)
Big and Little Endian
28(1)
Arbitrary Length Integers
29(1)
Binary Coded Decimal (BCD)
30(1)
Programming Numbers in Assembly Language
30(1)
Logical Operations
31(7)
Shift Operations
38(3)
Arithmetic Operations
41(16)
Conversions
57(4)
Fixed-Point Numbers
61(3)
*Floating-Point Numbers
64(4)
Tutorial 2. Arithmetic and Logical Operations
68(3)
Homework Assignments
71(5)
Microcomputer Architecture
76(66)
Introduction
76(5)
Common Architecture of the 6811 and 6812
81(17)
Registers
81(1)
Terminology
82(1)
Addressing Modes
83(4)
6811 Machine Language Execution
87(3)
Simulated 6812 Machine Language Execution
90(3)
*Actual 12 Machine Language Execution
93(5)
Introduction to Programming
98(16)
Memory and Register Transfer Operations
98(2)
Arithmetic Operations
100(3)
Shift Operations
103(1)
Logical Operations
104(1)
Subroutines and the Stack
105(5)
Branch Operations
110(4)
6811 Architecture
114(6)
MC68HC11 Family
114(2)
The E Series 6811
116(1)
MC68HC711D3
117(1)
Expanded Mode
118(1)
6811 Indexed Addressing Mode
119(1)
6812 Architecture
120(10)
MC68HC812A4
120(3)
MC68HC912832
123(1)
MC68HC12D601/MC68HC912D60
124(1)
MC68HCl2DG128/MC68HC912DG128
125(1)
Additional Addressing Modes on the 6812
125(5)
Memory Allocation
130(3)
Tutorial 3. Building a Microcomputer and Executing Machine Code
133(3)
Homework Assignments
136(3)
Laboratory Assignments
139(3)
Assembly Language Programming
142(34)
Introduction
142(4)
Assembly Language Development
142(3)
*Running on an Evaluation Board
145(1)
Simulation
146(1)
TExaS Help System
146(4)
TExaS Editor
150(1)
Assembly Language Syntax
151(14)
Overall Structure
151(1)
Label Field
152(1)
Operation Field
152(1)
Operand Field
153(1)
Expressions
154(2)
Comment Field
156(2)
Assembly Listing
158(1)
Assembly Errors
158(1)
Assembler Pseudo-ops
159(6)
S-19 Object Code
165(1)
Tutorial 4. Editing and Assembling
166(1)
Homework Assignments
167(3)
Laboratory Assignments
170(6)
I/O Programming
176(39)
Basic Concept of an I/O Port Address and Direction Register
176(4)
Parallel Port I/O Programming
180(3)
Serial Communications Interface, SCI
183(7)
Transmitting in Asynchronous Mode
183(1)
Receiving in Asynchronous Mode
184(2)
6811 SCI Details
186(1)
6812 SCI Details
187(1)
SCI I/O Programming
188(2)
Synchronous Peripheral Interface, SPI
190(7)
SPI Fundamentals
190(2)
6811 SPI Details
192(1)
6812 SPI Details
193(1)
SPI DAC Interface
194(3)
ADC Converters
197(5)
6811 ADC Details
198(1)
6812 ADC Details
199(2)
ADC Software
201(1)
16-bit Timer
202(2)
6811 Timer Details
202(1)
6812 Timer Details
203(1)
Fixed Time Delay Software Using the Built-in Timer
203(1)
Pulse Accumulator
204(4)
6811 Pulse Accumulator Details
204(1)
6812 Pulse Accumulator Details
205(1)
Frequency Measurement
206(1)
Pulse Width Measurement
207(1)
Tutorial 5. I/O Programming
208(2)
Homework Problems
210(1)
Laboratory Assignments
211(4)
Microcomputer Interfacing
215(39)
Introduction
215(1)
Switch Interfacing
216(1)
LED Interfacing
217(2)
Serial Port Interfacing
219(2)
LCD Interfacing
221(4)
Analog Interfacing
225(1)
Scanned Key Pad Interfacing
226(5)
DC Motor Interfacing
231(5)
Infrared Remote Interfacing
236(5)
Hitachi HD44780 LCD Display
241(3)
Stepper Motor
244(1)
Tutorial 6. Microcomputer-Based Lock
245(5)
Homework Problems
250(1)
Laboratory Assignments
251(3)
Debugging
254(21)
Debugging Theory
254(2)
*Hardware Debugging Tools
256(2)
TExaS ViewBox
258(2)
Functional Debugging
260(3)
Single Stepping
260(1)
Breakpoints without Filtering
260(1)
Conditional Breakpoints
260(1)
Instrumentation: Print Statements
261(1)
Instrumentation: Dump into Array without Filtering
261(1)
Instrumentation: Dump into Array with Filtering
262(1)
Monitor Using the LED Display
262(1)
Performance Debugging
263(3)
Instrumentation Measuring with an Independent Counter, TCNT
263(1)
Instrumentation Output Port
263(1)
Measurement of Dynamic Efficiency
263(3)
Profiling
266(1)
Profiling Using a Software Dump to Study Execution Pattern
266(1)
Profiling Using an Output Port
266(1)
*Thread Profile
267(1)
*Reentrant Behavior
267(1)
Tutorial 7. Debugging Techniques
267(3)
Homework Problems
270(2)
Laboratory Assignments
272(3)
Program Structures
275(74)
Local Variables
275(6)
Introduction
275(3)
Implementation
278(2)
Stack Frames
280(1)
Parameter Passing
281(13)
Parameter Passing in C
281(2)
Parameter Passing in Assembly Language
283(5)
C Compiler Implementation of Local and Global Variables
288(5)
*Recursion
293(1)
Control Structures
294(6)
Conditional if-then-else Statements
295(2)
Switch Statements
297(2)
For Loops
299(1)
Extended Precision Calculations
300(12)
Addition and Subtraction
300(3)
Shift Operations
303(2)
Mathematical instructions on the 6812
305(2)
Multiplication and Division
307(3)
Table Lookup and Interpolation
310(2)
Expression Evaluation
312(2)
OS Calls Using Software Interrupts
314(4)
Finite State Machines with Statically-allocated Linked Structures
318(10)
Abstraction
318(1)
Stepper Motor Controller
319(2)
Traffic Light Controller
321(2)
A Mealy FSM
323(2)
FSM Implementation of a Vending Machine
325(3)
*6812 Paged Memory
328(2)
Tutorial 8. Software Abstraction
330(1)
Homework Problems
331(8)
Laboratory Problems
339(10)
Advanced Programming Techniques
349(29)
Modular Design
349(7)
Definition and Goals
350(1)
2 Dividing a Software Task into Modules
351(1)
Visualizing the System Using Call-graphs
352(2)
Hierarchical Programming
354(1)
Inappropriate I/O and Portability
355(1)
Layered Software Systems
356(1)
Naming Convention
357(2)
Assemble Language Style Guidelines
359(2)
*C Language Style Guidelines
361(9)
Code File Structure, the *.c File
361(2)
Header File Structure, the *.h File
363(1)
Formatting
364(2)
Code Structure
366(4)
*Relocatable Code
370(2)
Comments
372(1)
Tutorial 9. Layered Programming
373(1)
Homework Problems
374(1)
Laboratory Assignments
375(3)
Elementary Data Structures
378(44)
Memory Allocation and Initialization
378(2)
Arrays
380(3)
Strings
383(1)
Matrices
384(6)
Structures
390(1)
Tables
391(2)
Multiple Access Circular Queues
393(1)
First In First Out Queue and Double Buffers
394(3)
Trees
397(4)
*Dynamically Allocated Data Structures
401(4)
Fixed Block Memory Manager
401(2)
Linked List FIFO
403(2)
Tutorial 10. Command Interpreters
405(6)
Homework Problems
411(5)
Laboratory Assignments
416(6)
Interrupt Synchronization
422(59)
Basic Concepts
422(2)
First In First Out Queue
424(6)
Interthread Communication and Synchronization
430(4)
Reentrant Programming
434(4)
Interrupts on the 6811/6812
438(7)
General Concepts
438(2)
6811 Interrupts
440(2)
6812 Interrupts
442(3)
External Edge Interrupt
445(3)
MC68HC11 STRA Interrupt
445(1)
MC68HC812A4 Key Wakeup Interrupts
446(2)
Serial Port Interface Using Interrupt Synchronization
448(8)
6811 SCI Details
448(2)
6812 SCI Details
450(2)
Interrupting SCI Interface
452(2)
*Distributed Systems
454(2)
Periodic Interrupts
456(9)
Periodic Polling
457(1)
6811 Periodic Interrupts
457(4)
6812 Periodic Interrupts
461(3)
Real-time Data Acquisition
464(1)
Polled Versus Vectored Interrupts
465(1)
Tutorial 11. Profiling
466(2)
Homework Problems
468(2)
Laboratory Assignments
470(11)
Appendix 1. Embedded System Development Using TExaS 481(24)
A1.1 Introduction to TExaS
482(3)
A1.2 Major Components of TExaS
485(4)
A1.3 Developing Assembly Software
489(5)
A1.3.1 Running an Existing Assembly Language Program
492(1)
A1.3.2 Modifying an Existing Assembly Language Program
493(1)
A1.3.3 Developing an Assembly Program from Scratch
494(1)
A1.4 *Developing C Language Software
494(2)
A1.4.1 Running an Existing C Program
494(1)
A1.4.2 Adapting an Existing C Program
495(1)
A1.4.3 Developing a C Program from Scratch
496(1)
A1.5 Tutorial A1. Getting Started
496(9)
Appendix 2. Glossary of Terms 505(14)
Appendix 3. Solutions Manual 519(30)
A3.1 Checkpoint Solutions
519(18)
A3.2 Tutorial Solutions
537(12)
Index 549

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program