PIC24 Tutorial

The PIC24F is a very versatile piece of hardware. I use it at work all the time. Along with the MPLAB IDE and the free C30 compiler, these products from Microchip make for a powerful combination. You can pretty much do anything on the lower end of the frequency spectrum. I would like to share with the web, some of the intricacies of the microcontroller as I have become somewhat familiar with the chip. Most of these resources will apply to the other processors from Microchip 16-bit series. If you have any questions, feel free the comment or email. Come back to this page often as I will be adding features and code for all of the web to see.

1. Introduction
2. Getting Started
3. First Program
4. Configuration
5. Inputs and Outputs
6. Oscillator and Timing
7. Interrupts
8. Timers
9.1. UART Setup
9.2. UART Usage
10.1 I2C Basics
10.2 I2C Basic Functions
10.3 I2C Advanced Functions
11. ADC
12.1 SPI Basics
12.2 SPI Master usage
14.1 USB, An Introduction
14.2 More on USB
14.3 Setting up the USB Framework
14.4 USB HID Joystick
14.5 USB Debugger – Protocol Design
14.6 USB Debugger – Implementation
14.7 Composite Device

58 Responses to PIC24 Tutorial

  1. Amanda says:

    Thank you for this. I chose the PIC24H64GP502 for my capstone project, and while the documentation for it was helpful, it didn’t really piece all of it together. But this tutorial certainly did!

  2. jliu83 says:

    @Amanda. I’m glad it was helpful. Thanks for your kind words.


  3. Stefan says:

    Thanks for this great tutorial! It helped me a great deal when moving to the PIC24 series.

  4. Manigopal says:

    Dude will you please add firmware code for Ethernet

  5. jliu83 says:

    @Manigopal. Hmm, I’ve seen projects with Ethernet. We’ll see if this pops up in my future projects, but right now there’s no plans for a section on the ethernet stack. Sorry.


  6. m121212 says:

    I would love to see a tutorial on how to use the DMA when doing ADC reads. There’s plenty of documentation, but I still haven’t been able to figure out the big-picture view. In my pic, I have a single read buffer (ADC1BUF0), and need to read out four ADC channels. The recommended method is to use DMA.

  7. Simo says:

    Great website, I did some PIC programming at the university, 10 years ago and unfortunately forgot everything, but this tutorial refreshed my memory.


  8. shivanand says:

    hi sir/madam i impressed by ur pic tutorial & even pcb also.now i working on PIC24FJ128GC010 especially for generating voltage using dac please guide me ,

Leave a Reply

Your email address will not be published. Required fields are marked *