You are previewing PIC32 Microcontrollers and the Digilent chipKIT.
O'Reilly logo
PIC32 Microcontrollers and the Digilent chipKIT

Book Description

PIC32 Microcontrollers and the Digilent chipKIT: Introductory to Advanced Projects will teach you about the architecture of 32-bit processors and the hardware details of the chipKIT development boards, with a focus on the chipKIT MX3 microcontroller development board. Once the basics are covered, the book then moves on to describe the MPLAB and MPIDE packages using the C language for program development. The final part of the book is based on project development, with techniques learned in earlier chapters, using projects as examples.

Each projectwill have a practical approach, with in-depth descriptions and program flow-charts with block diagrams, circuit diagrams, a full program listing and a follow up on testing and further development.

With this book you will learn:

  • State-of-the-art PIC32 32-bit microcontroller architecture
  • How to program 32-bit PIC microcontrollers using MPIDE, MPLAB, and C language
  • Core features of the chipKIT series development boards
  • How to develop simple projects using the chipKIT MX3 development board and Pmod interface cards
  • how to develop advanced projects using the chipKIT MX3 development boards


  • Demonstrates how to use the PIC32 series of microcontrollers in real, practical applications, and make the connection between hardware and software programming
  • Usage of the PIC32MX320F128H microcontroller, which has many features of the PIC32 device and is included on the chipKIT MX3 development board
  • Uses the highly popular chipKIT development boards, and the PIC32 for real world applications, making this book one of a kind

Table of Contents

  1. Cover
  2. Title page
  3. Table of Contents
  4. Copyright
  5. Preface
  6. Acknowledgments
  7. Chapter 1: Microcomputer Systems
    1. Abstract
    2. 1.1. Introduction
    3. 1.2. Microcontroller Systems
    4. 1.3. Microcontroller Features
    5. 1.4. Microcontroller Architectures
    6. 1.5. 8, 16, or 32 Bits?
    7. 1.6. Summary
    8. 1.7. Exercises
  8. Chapter 2: PIC32 Microcontroller Series
    1. Abstract
    2. 2.1. The PIC32MX360F512L Architecture
    3. 2.2. Summary
    4. 2.3. Exercises
  9. Chapter 3: PIC32 Microcontroller Development Tools
    1. Abstract
    2. 3.1. Software Development Tools
    3. 3.2. Hardware Development Tools
    4. 3.3. Summary
    5. 3.4. Exercises
  10. Chapter 4: The Cerebot MX3cK (chipKIT MX3) Development Board
    1. Abstract
    2. 4.1. The chipKIT MX3 Development Board
    3. 4.2. Pmod Peripheral Modules
    4. 4.3. Summary
  11. Chapter 5: The MPIDE Programming Environment and Programming in C
    1. Abstract
    2. 5.1. Installing MPIDE
    3. 5.2. The MPIDE
    4. 5.3. The C LANGUAGE
    5. 5.4. Functions
    6. 5.5. Microcontroller-Specific Features
    7. 5.6. Built-In Functions
    8. 5.7. Summary
    9. 5.8. Exercises
  12. Chapter 6: Microcontroller Program Development
    1. Abstract
    2. 6.1. Using the Program Description Language and Flow Charts
    3. 6.2. Examples
    4. 6.3. Representing <span xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" class="italic">for</span> Loops in Flow Charts Loops in Flow Charts
    5. 6.4. Summary
    6. 6.5. Exercises
  13. Chapter 7: Simple chipKIT MX3–Based Projects
    1. Abstract
    2. 7.1. Project 7.1 – Flashing LED
    3. 7.2. Project 7.2 – Alternately Flashing LEDs
    4. 7.3. Project 7.3 – Lighthouse Flashing LED
    5. 7.4. Project 7.4 – LED With Push-Button Switch
    6. 7.5. Project 7.5 – Wait Before Flashing the LED
    7. 7.6. Project 7.6 – LED With Two Push-Button Switches
    8. 7.7. Project 7.7 – Rotating LEDs
    9. 7.8. Project 7.8 – Random Flashing LEDs
    10. 7.9. Project 7.9 – Fading LED
    11. 7.10. Project 7.10 – Seven-Segment LED
    12. 7.11. Project 7.11 – Seven-Segment Single-Digit LED Counter
    13. 7.12. Project 7.12 – Using LCD Display
    14. 7.13. Project 7.13 – Scrolling LCD Display
    15. 7.14. Project 7.14 – Seconds Counter With LCD Display
    16. 7.15. Project 7.15 – Event Counter With LCD Display
    17. 7.16. Project 7.16 – External Interrupt–Driven Event Counter With LCD Display
    18. 7.17. Project 7.17 – Voltmeter
    19. 7.18. Project 7.18 – Temperature Measurement
    20. 7.19. Project 7.19 – Temperature Measurement With Serial Monitor Display
    21. 7.20. Project 7.20 – NPN Transistor Tester
    22. 7.21. Project 7.21 – Writing to SD Card
    23. 7.22. Project 7.22 – Reading From SD Card and Displaying on Serial Monitor
    24. 7.23. Project 7.23 – Temperature Data Logging on SD Card
    25. 7.24. Project 7.24 – Generating Sound Using a Buzzer
    26. 7.25. Project 7.25 – Generating Melody Using a Buzzer
    27. 7.26. Project 7.26 – Using an Audio Amplifier
    28. 7.27. Project 7.27 – Waveform Generation: Using DAC
    29. 7.28. Project 7.28 – Using a Keypad
    30. 7.29. Project 7.29 – Keypad Calculator
    31. 7.30. Project 7.30 – Using Graphics LCD
    32. 7.31. Project 7.31 – Creating an Image on the OLED
    33. 7.32. Project 7.32 – I<sup xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops">2</sup>C Thermometer With OLED DisplayC Thermometer With OLED Display
    34. 7.33. Project 7.33 – Using the GPS Module
    35. 7.34. Project 7.34 – Stepper Motors
  14. Appendix: Using the MPLAB IDE with the chipKIT Pro MX7 Development Board
  15. Index