Introduction to microcontrollers architecture, programming, and interfacing for the Freescale 68HC12 - Lipovski, G. Jack (Elsevier Academic Press, 2004)
Includes index
Cover -- Contents -- Preface -- List of Figures -- List of Tables -- Acknowledgments -- About the Author -- CHAPTER 1 Basic Computer Structure and the 6812 -- 1.1 Basic Computer Structure -- 1.2 The Instruction -- 1.3 A Few Instructions and Some Simple Programs -- 1.4 6812 Microcontroller Organizations -- 1.5 Variable Word Width -- 1.6 Summary and Further Reading -- CHAPTER 2 The Instruction Set -- 2.1 Move Instructions -- 2.2 Arithmetic Instructions -- 2.3 Logic Instructions -- 2.4 Edit Instructions -- 2.5 Control Instructions -- 2.6 Input/Output Instructions -- 2.7 Special Instructions -- 2.8 Remarks -- CHAPTER 3 Addressing Modes -- 3.1 Opcode Byte Addressing Modes -- 3.2 Post Byte Index Addressing Modes -- 3.3 Relative Addressing and Position Independence -- 3.4 Stack Index Addressing, Reentrancy, and Recursion -- 3.5 Architectural Notions of Addressing -- 3.6 Summary -- CHAPTER 4 Assembly-Language Programming -- 4.1 Introductory Example and Assembler Printout --
- 4.2 Assembler Directives -- 4.3 Mechanics of a Two-Pass Assembler -- 4.4 Character String Operations -- 4.5 A Simplified Two-Pass Assembler -- 4.6 Debugging Source Code Programs -- 4.7 Summary -- CHAPTER 5 Advanced Assemblers, Linkers, and Loaders -- 5.1 Cross-Assemblers and Downloaders -- 5.2 Relocatable Assemblers and Loaders -- 5.3 Conditional Assemblers -- 5.4 Macro Assemblers -- 5.5 Documentation -- 5.6 Summary -- CHAPTER 6 Assembly-Language Subroutines -- 6.1 Local Variables -- 6.2 Passing Parameters -- 6.3 Passing Arguments by Value, Reference, and Name -- 6.4 Calling and Returning Mechanisms -- 6.5 Summary -- CHAPTER 7 Arithmetic Operations -- 7.1 Multiplication and Division -- 7.2 Integer Conversion -- 7.3 From Formulas to Macro Programs -- 7.4 Simple Macro Expansions -- 7.5 Long Integer Arithmetic -- 7.6 Optimization -- 7.7 Floating-Point Arithmetic and Conversion -- 7.8 Fuzzy Logic -- 7.9 Summary -- CHAPTER 8 Programming in C and C++ -- 8.1 Compilers and Interpreters --
- 8.2 Operators and Assignment Statements -- 8.3 Conditional and Loop Statements -- 8.4 Constants and Variables -- 8.5 Procedures and Their Arguments -- 8.6 An Example -- 8.7 Object-Oriented Programming in C++ -- 8.8 Summary -- CHAPTER 9 Implementation of C Procedures -- 9.1 Global and Local Variables -- 9.2 Expressions and Assignment Statements -- 9.3 Conditional Statements -- 9.4 Loop Statements, Arrays, and Structs -- 9.5 Procedure Calls and Arguments -- 9.6 Examples from Character String Procedures -- 9.7 Summary -- CHAPTER 10 Elementary Data Structures -- 10.1 What a Data Structure Is -- 10.2 Indexable Data Structures -- 10.3 Sequential Data Structures -- 10.4 Linked List Structures -- 10.5 Summary -- CHAPTER 11 Input/Output -- 11.1 Input and Output Devices -- 11.2 Parallel Ports -- 11.3 Input and Output Software -- 11.4 Synchronization Hardware -- 11.5 Gadfly Synchronization -- 11.6 Interrupt Synchroniza
The perfect choice for your one-semester course on Microcontrollers!