About This Textbook¶
This intelligent textbook was created to provide students with a hands-on, interactive introduction to embedded systems programming using the PIC24FJ64GA002 microcontroller by Microchip.
The book blends traditional explanations with modern tools like Markdown, interactive prompts, and MicroSims to reinforce deep learning and experimentation.
Learning Objectives¶
By the end of this textbook, learners should be able to:
- Understand the architecture of the PIC24FJ64GA002 microcontroller
- Write and debug assembly code for core operations (branching, loops, stack management)
- Use timers, interrupts, and peripheral modules (UART, SPI, I2C, ADC)
- Read datasheets and configure registers for real-time control
- Translate embedded concepts into working C/assembly implementations
Intended Audience¶
This resource is designed for:
- Undergraduate students in Computer Engineering, Electrical Engineering, or Embedded Systems
- Makers, hobbyists, and developers interested in microcontrollers
- Anyone learning real-time programming with resource-constrained devices
Approach¶
The structure of this book mirrors a lab-based embedded systems course. Each chapter builds incrementally:
- Assembly concepts and syntax →
- Control structures and memory →
- Peripherals, interrupts, and real-world interfacing
Interactive elements such as quizzes, prompt challenges, and simulations are embedded to reinforce key ideas.
Author & Acknowledgements¶
This project was developed by Irving Garcia as part of a university-level embedded systems curriculum.
Special thanks to:
- Dan McCreary who inspired this structure
- Microchip for documentation and tools
- Open-source developers of MkDocs and Material for MkDocs
This book is open to future contributions and improvements. If you'd like to help, check the GitHub repository for open issues or submit your suggestions.