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
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:
• Input Capture
• Output Compare
• Quadrature Encoder Interface (QEI)
• Motor Control PWM
• I/O Ports and External Interrupts
• 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)
• 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:
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.
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.
• 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.
More PIC24 and dsPIC33 devices will be added in each release
Current Peripheral Library
16-bit PIC24F MCUs: MPLAB Code Configurator