16-bit PIC® and dsPIC® Microcontrollers

16-bit PIC® Microcontrollers
PIC24F/H, dsPIC30F, dsPIC33F/E

  • Ideal for Low Power, Motor Control and Digital Power Applications
  • Performance that meet your application needs ranging from lowest power up to 70 MIPS
  • Complete portfolio from 4 kB to 512 kB of program memory and 256 kB to 96 kB RAM as your code requirements grow
  • Upward compatible architectures to preserve investment in code development
  • Pin compatibility in multiple packages facilitates drop-in replacement from 14 to 144 pins
Click image to enlarge.

 Self-Paced Training

The material in these training modules exists elsewhere on this site in a general reference format. However, the training modules present it in an organized, step-by-step sequence to help you learn the topic from the ground up.

 Projects and Examples

 Frequently Asked Questions

XC16 Compiler Warnings: "Optimization may eliminate reads and/or writes to register variables"
How do you select which PIC® device to use on the MCP3911 evaluation board?
Why can't I drive my MOSFET when connected to PWM?
What is the instruction size of a PIC® MCU?
What happens when software break instructions are executed in release (non-debug) mode on 16-bit devices?
What does the "-ICD" suffix on an MCU mean?
Using MLA with freeRTOS® on dsPIC33EP - Tips and Tricks
U6RX Pin Not Found in the Pin Table of PIC24FJ256GB406's Datasheet
Trouble Shooting I²C on PIC24FJ32GA102
Software/Programming - MCU16 - Address Error Trap with EDAC Instruction and Incorrect Result by MAC Instruction
How do you synchronize the primary and secondary time bases on a dsPIC33EP PWM Module?
How do I get the dsPIC33EP32MC204 to sample 8 ADC channels at 500 ksps?
Generating a PWM Signal with High Speed PWM Module Fails on dsPIC33EP Family
Enabling PWM Module Removes PPS Mapping of the SDI2 in dsPIC33EP512MC202
dsPIC33/PIC24 - ECAN, FNRB (FIFO Next Read Buffer Pointer bits) Not Resetting as Expected
dsPIC33FJ64MC804 - ECAN Filters Not Working as Expected
dsPIC33EP - PWM Outputs are Disabled when I²C is Enabled
Do the device pin tables show which pins are 5V tolerant?
16-bit Motor Control PWM - Overriding Complementary Pairs
Using the Alternate Interrupt Vector Table (AIVT) on PIC24FJ
How can I create a Programmable Gain Amplifier (PGA) using an OP Amp and DAC output from a PIC® MCU?
Getting Into and Out of Deep Sleep on PIC24FJxxxGCxxx Family Parts
Problems Programming Auxiliary Space Using PICKit™ 3 Programmer-To-Go
Polling a PWM Fault Pin on a dsPIC® Digital Signal Controllers (DSCs)
Impact of Ripple on Vdd when using a Microchip Microcontroller
Example Projects for ADC and I²C for dsPIC30F2012
Does PIC24FJ256DA210 contain ADC bandgap reference and temperature sensing?
Differences between dsPIC33FJ256GP710A and dsPIC33FJ256GP710 devices
Problems with Slave Select Control on dsPIC33/PIC24 Family
Problems setting PPS Digital Inputs on the dsPIC33EP512MU810
PIC24FJ64GB004 - What is the purpose of the series resistor in the VBUS line?
PIC24FJ128GC010 - Select CVref Pins for Comparator Voltage Reference
PIC24FJ - Setting Input Pins as Analog for Comparator
Measuring Temperature with a dsPIC® Digital Signal Controller (DSC) CTMU
How can I find a pin-to-pin compatible microcontroller to migrate my project?
dsPIC33/PIC24 - ECAN Transmission Doesn't Work
dsPIC33E USB Starter Kit Compatibility with PIC32 I/O Expansion Board
For dsPIC® Digital Signal Controllers (DSCs), how can the FFT be used with data block lengths that are not a power of two?
Can the RTCC on a PIC® MCU without a VBAT run off a battery?
What is the most common problem encountered when communicating with a PIC® MCU SPI module?
What is the maximum size FFT that can be used on a dsPIC®?
General Tips for Troubleshooting Input Capture and Example Code
Code Examples of an SD Card Implementation
Can the ADC measure 5 V if the VDD is 3.3 V?
Which PIC® can I use to implement RS485 Modbus®?
Can I use the Charge Time Measurement Unit for Internal Temperature Sensing in a PIC®?
Will I damage the peripheral on my 3.3 V device if I'm using it in a 5 V system?
Where can I find the ADC voltage reference?
What should I do with an unused Vbat pin?
Interface a dsPIC® to a LAN9352 via SPI
dsPIC33EP - Why does the dedicated timer of Input Capture 2/4/6 not reset?
Can the PIC24F perform I2C clock stretching?
16-bit PMP - What are the differences between the dsPIC33FJ and dsPIC33EP PMP modules?
Why can't I program the Explorer 16 with a USB cable?
© 2024 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.