Programming 16-bit Microcontrollers in C, Learning to Fly the PIC24

PIC24SE cover small

The story goes that I wanted to write a book about one of the greatest passions in my life: flying!

I wanted to write a book that would convince other engineers like me to take the challenge and live the dream – learn to fly and become private pilots. The thing is that I knew the few hours of actual flying experience I had did not qualify me as a credible expert on the art of flying. So when I had an opportunity to write a book about Microchip’s new 16-bit PIC24 microcontrollers, I just could not resist the temptation to join the two things, programming and flying, in one project.

Depending your level and type of experience, you should be able to find something of interest in every chapter. I worked hard to make sure that every one of them contained both C programming techniques and new hardware peripherals details. Should you already be familiar with both, feel free to skip to the experts section at the end of the chapter, or consider the additional exercises, book references and links for further research/reading.

These are some of the things you will learn:

  • The structure of an embedded-control C program
  • Loops, loops and more loops
  • Basic timing and I/O operations
  • Basic embedded control multitasking in C, using the PIC24 interrupts
  • New PIC24 peripherals, including:
    • Input Capture
    • Output Compare
    • Change Notification
    • Parallel Master Port
    • Asynchronous Serial Communication
    • Synchronous Serial Communication
    • Analog-to-Digital conversion
  • How to control LCD displays
  • How to generate video signals
  • How to generate audio signals
  • How to access mass-storage media
  • How to share files on a mass-storage device with a PC

The Second Edition

After five years and almost 10,000 copies sold, the second edition expands the content of the book to include some of the most requested features among which:

  • I2C Interfaces
  • Peripheral Library usage examples
  • Peripheral Pin Select (PPS)
  • PIC24 GA1, GA2, GB1, GB2 families support
  • MPLAB X16 compatible projects
  • MPLAB X IDE tips and tricks

Notice that A CDROM is no more included, sign of the times, you will find all the source code for the book projects in the downloads page.