Cover image for Microcontrollers : From Assembly Language to C Using the PIC24 Family.
Microcontrollers : From Assembly Language to C Using the PIC24 Family.
Title:
Microcontrollers : From Assembly Language to C Using the PIC24 Family.
Author:
Reese, Robert B.
ISBN:
9781584506331
Personal Author:
Physical Description:
1 online resource (865 pages)
Contents:
Contents -- Acknowledgments -- About the Authors -- Introduction -- Part I: Digital Logic Review and Computer Architecture Fundamentals -- 1 Number System and Digital Logic Review -- Binary Data -- Unsigned Number Conversion -- Binary and Hex Arithmetic -- Combinational Logic Functions -- Combinational Building Blocks -- Sequential Logic -- Sequential Building Blocks -- Encoding Character Data -- Summary -- Review Problems -- 2 The Stored Program Machine -- Problem Solving the Digital Way -- Finite State Machine Design -- A Stored Program Machine -- Modern Computers -- Summary -- Review Problems -- Part II: PIC24 μC Assembly Language Programming -- 3 Introduction to the PIC24 Microcontroller Family -- Introduction to Microprocessors and Microcontrollers -- The PIC24 Microcontroller Family -- Data Transfer Instructions and Addressing Modes -- Basic Arithmetic and Control Instructions -- A PIC24 Assembly Language Program -- The Clock and Instruction Execution -- Summary -- Review Problems -- 4 Unsigned 8/16-Bit Arithmetic, Logical, and Conditional Operations -- Bitwise Logical Operations, Bit Operations -- The Status Register -- Shift and Rotate Operations -- Mixed 8-Bit/16-Bit Operations, Compound Operations -- Conditional Execution Using Bit Tests -- Unsigned Conditional Tests -- Complex Conditional Expressions -- Looping -- Summary -- Review Problems -- 5 Extended Precision and Signed Data Operations -- Extended Precision Operations -- Signed Number Representation -- Operations on Signed Data -- Branch Instruction Encoding -- Summary -- Review Problems -- 6 Pointers and Subroutines -- An Introduction to C Pointers -- PIC24 Indirect Addressing Modes -- Arrays and Pointers in C -- Subroutines -- The Stack and Call/Return, Push/Pop -- Implementing Subroutines in Assembly Language -- Stack Frames for Function Parameters and Local Variables.

Program Space Visibility and Global Variable Initialization -- Summary -- Review Problems -- 7 Advanced Assembly Language: Higher Math -- Multiplication -- Division -- Fixed-Point and Saturating Arithmetic -- Floating-Point Number Representation -- BCD Arithmetic -- ASCII Data Conversion -- Summary -- Review Problems -- Part III: PIC24 μC Interfacing Using the C Language -- 8 The PIC24HJ32GP202: System Startup and Parallel Port I/O -- High-Level Languages versus Assembly Language -- C Compilation for the PIC24 μC -- PIC24HJ32GP202 Startup Schematic -- ledflash.c-The First C Program for PIC24HJ32GP202 Startup -- echo.c-Testing the Serial Link -- Datasheet Reading-A Critical Skill -- Configuration Bits -- Clock Generation -- Power-on Reset Behavior and Reset Sources -- Watchdog Timer, Sleep, Idle, Doze -- The reset.c Test Program -- Parallel Port Operation -- LED/Switch I/O and State Machine Programming -- Interfacing to an LCD Module -- The PIC24H versus the PIC24F Family -- Summary -- Review Problems -- 9 Interrupts and a First Look at Timers -- Interrupt Basics -- PIC24 μC Interrupt Details -- ISR Functions in C -- Change Notification Interrupts -- INTx External Interrupts, Remappable Pins -- Periodic Timer Interrupts -- LED/Switch I/O and Semaphores -- A Rotary Encoder Interface -- A Keypad Interface -- On Writing and Debugging ISRs -- Summary -- Review Problems -- 10 Asynchronous and Synchronous Serial I/O -- I/O Channel Basics -- Synchronous, Asynchronous Serial I/O -- THE PIC24 UART -- Using the PIC24 UART with C -- Library Functions -- Interrupt-Driven I/O with the PIC24 UART -- The RS-232 Standard -- The Serial Peripheral Interface (SPI) -- SPI Example: The MCP41xxx Digital Potentiometer -- SPI Example: PIC24 μC Master to DS1722 Thermometer -- SPI Example: PIC24 μC Master to PIC24 μC Slave -- The I2C Bus -- I2C on the PIC24 μC.

I2C Example: PIC24 μC Master to DS1631 Thermometer -- I2C Example: PIC24 μC Master to 24LC515 Serial EEPROM -- Ping-Pong Buffering for Interrupt-Driven Streaming Data -- Summary -- Review Problems -- 11 Data Conversion -- Data Conversion Basics -- Analog-to-Digital Conversion -- The PIC24 Analog-to-Digital Converter -- Digital-to-Analog Conversion -- External Digital-to-Analog Converter Examples -- Summary -- Review Problems -- 12 Timers -- Pulse Width Measurement -- Pulse Width, Period Measurement Using Input Capture -- Application: Using Capture Mode for an Infrared Decoder -- The Output Compare Module -- Pulse Width Modulation -- PWM Application: DC Motor Speed Control and Servo Control -- A PWM DAC -- Time Keeping Using Timer1, RTCC -- Summary -- Review Problems -- Part IV: Advanced Interfacing and Programming Topics -- 13 Advanced Hardware Topics -- Direct Memory Access -- Using the PIC24 μC as an I2C Slave -- Bus Arbitration for the I2C Bus -- The Controller Area Network (CAN) -- The PIC24 ECAN Module -- The Universal Serial Bus (USB) -- Run-Time Self-Programming -- Comparator -- Parallel Master Port and CRC Generator -- Summary -- Review Problems -- 14 Operating Systems for Embedded Systems -- Operating System Concepts -- Embedded Systems Operating System for the Microchip PIC24 μC -- Design: Adding an ESOS Service for I2C -- Summary -- Review Problems -- Part V: Capstone Examples -- 15 Capstone Projects -- Design of an Audio Record/Playback System -- Implementation of an Audio Record/Playback System -- A Solder Reflow Oven -- A Small, Autonomous Robot -- Other Microcontroller Families from Microchip -- A Brief Survey of Non-PIC Microcontrollers -- Summary -- Suggested Survey Topics -- Appendix A: PIC24 Architecture and Instruction Set Summary -- Appendix B: Software Tools Overview -- Appendix C: Suggested Laboratory Exercises.

Appendix D: Notes on the C Language and the Book's PIC24 Library Functions -- Appendix E: Circuits 001 -- Appendix F: References -- Appendix G: Problem Solutions -- Index -- A -- B -- C -- D -- E -- F -- G -- H -- I -- J -- K -- L -- M -- N -- O -- P -- Q -- R -- S -- T -- U -- V -- W -- X -- Y -- Z.
Local Note:
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2017. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
Added Author:
Electronic Access:
Click to View
Holds: Copies: