Microchip logo
  • All
  • Products
  • Documents
  • Applications Notes

Legacy PIC24 MCU & dsPIC DSC Peripheral Library

The PIC24 MCU / dsPIC DSC Peripheral Library  (or PLIB) provides a set of functions for setting up and controlling the operation of all the peripheral modules available in the PIC24, dsPIC30F and dsPIC33 devices, as well as functions for interfacing with an external LCD. In the past, the PLIB was integrated into the XC16 Compiler, but has been separated from the compiler info the files at the bottom of this page in the download section.  Microchip plans to move support for set-up and configuration all of the PIC24 and dsPIC33EP devices in the MPLAB Code Configurator Tool.  Eventually PLIB support will be phased out.  For legacy support, the PLIBs are available on this webpage.  For the latest peripheral and product support, please visit and download the MPLAB Code Configurator.

The Peripheral Library serves as a convenient layer of abstraction over the specific details of the peripherals and their associated control and status registers. The Peripheral Library supports the following hardware peripheral modules:

    • Timers
    • Input Capture
    • Output Compare
    • Quadrature Encoder Interface (QEI)
    • Motor Control PWM
    • I/O Ports and External Interrupts
    • Reset
    • UART
    • SPI
    • I2C™
    • Data Converter Interface (DCI)
    • CAN (Standard and Enhanced)
    • 10-bit A/D Converter
    • 12-bit A/D Converter
    • Real-time Clock & Calendar (RTCC)
    • Cyclic Redundancy Check (CRC)
    • Parallel Master Port (PMP)
    • Comparator
    • Direct Memory Access (DMA)
    • Functions for controlling an external LCD through configurable I/O Port pins are also provided

Key features of the PIC24 MCU /dsPIC DSC Peripheral Library include:

    • The Peripheral Library contains a library file for each individual device from the PIC24 MCU / dsPIC DSC family. The library file for each device includes functions corresponding to peripherals present in that particular device.

    • The Peripheral Library also contains C include files that enable a user to take advantage of pre-defined constants for passing parameters to various library functions. There is an include file for each peripheral module.

    • Since the functions are in the form of pre-compiled libraries, they may be called from a user application program written in either C or assembly language.

    • The C source code is also included, so users can customize the functions to suit their specific application requirements if needed.

    • The pre-defined constants in the C include files eliminates the need to refer to the details and structure of every Special Function Register while initializing peripherals or checking status bits.

Resource Requirements

    • Program Memory: The Peripheral Library functions have been optimized for reduced Program Memory usage. Since the functions are in the form of libraries, the actual Program Memory requirements depend on the functions being called by the application, as well as on the specific PIC24/dsPIC30F/dsPIC33 device being used.

    • Data Memory: The vast majority of the functions do not use RAM at all. Each of the remaining functions uses less than 10 bytes of RAM.

• The PLIB package requires XC16 compier to be installed in order for the download of legacy PLIB to work.

Current Peripheral Library

16-bit PIC24F MCUs: MPLAB Code Configurator

More PIC24 and dsPIC33 devices will be added in each release of MCC


KB Size
Updated as of
Legacy - PIC24/dsPIC Peripheral Libraries v2.00 - MAC OS
Legacy - PIC24/dsPIC Peripheral Libraries v2.00 - Windows
Legacy - PIC24/dsPIC Peripheral Libraries v2.00 - Linux