- Download previous versions of MPLAB X and MPLAB 8 (Link updated 12-Sep-2017) (Link updated again 5-Jan-2024)
- MAPS - Microchip Advanced Part selector
- DTS - Development Tools Selector
- Shop online at Microchip Direct
- The easy way to set CONFIG bits in your source using MPLABX (on Microchip Wiki)
- PIC24/dsPIC Legacy Peripheral Libraries
- MPLAB C18 to XC8 C Compiler Migration Guide - Microchip
- Appnote: Transmit infra-red commands using RC5 or SIRC.
- Hardware Tool Debug Features by Device
- AC zero cross detection. TB3013 supersedes AN521.
- Backup of DM160215 software (USB to DALI interface project)
- What's new in XC8 v2.0 (on Microchip Developer website)
- Moving from XC8 v1.xx to v2.0
- How to fix "Could not connect to tool hardware: PICkit3PlatformTool - The debugger could not be started. Terminating debug session"
- MPLAB-X-MCC-plugin--MCC-Core-and-MCC-Harmony-Core-versions-and-compatibility
- PICkit4 overshoot modification
Useful FAQ posts on THIS board
Useful FAQ posts on the Microchip forum
- RMW (Read Modify Write) problem explained
- RMW and solutions for it (A compilation of Read-Modify-Write solutions collated by Stefan Uhlemayr)
- Flying with SoftWare Favorites Gallery List
- Random USB freezes when using Microsoft CDC driver
- Lost clock CAL value in PIC12F675 chips
- ICSP wiring recommendations.
- PIC programmers. Which ones work, and which to avoid. Created by Ian.M
- ASM30 no longer supplied with MPLABX, use XC16 instead.
- Crystal Oscillator FAQ
- What MPLABX requires to see a folder as a project
- How to reliably initialise character LCD displays.
- How to install XC8 version 1.34 and later into MPLAB8.
- Why your code should not write to EEPROM straight after power on
- Why unoptimised output from C compiler is so bloated.
- Optimal routines to convert 16 bit hex to BCD on 8 bit PICs. (i1ctg and 1and0 together created a masterpiece) (Link fixed 1-Feb-2024)
- XC8 Table Array Workaround for PIC18FXXK40, Silicon Rev A3 (Array init failing)
- Fix PICkit3 unreliable communication by disabling Enhanced Power Management in Windows Registry
- Initialise and read 14 bit data from FLASH on PIC16F devices using XC8.
- Ability of some Microchip tools to read FLASH/EEPROM memory in debug mode (also https://www.microchip.com/forums/FindPost/1043101 )
- Why XC8 does not support the PIC18 Extended Instruction set (XINST)
- Never enable "Local code generation" in XC8 and background from the horse's mouth here
- C code for 16x16 to 32 bit signed int multiply
- PIC-AS examples
Third Party
- Gooligum Tutorials for base and mid-range PICs.
- PIC Development Tools from "Embed Inc" (Olin Lathrop)
- Frequently Asked Questions (FAQ) about C on the Microchip PIC (Hitech C, XC8 and C18 suggestions from jtemples)
- Using The Same I/O Pin For Input And Output from Joseph Watson
- Simple yet powerful serial terminal program for Windows PCs
- Debouncing Contacts and Switches in Embedded Systems
- why-adc-1024-is-correct-and-adc-1023-is-just-plain-wrong
- Organizing Code Files in C and C++ (Ignore the C++ specific bits)
- What Every Computer Scientist Should Know About Floating-Point Arithmetic
- Reason of Multiple GND and VCC on an IC.
- Generate precise software delays on any PIC16 or PIC18 chip (from PICLIST.COM)
- RS422 and RS485 Standards Overview (TI appnote)
15-Dec-2014 Added link to RMW at http://www.mikroe.com
7-Jan-2014 Added "PIC programmers. Which ones work, and which to avoid"
8-Jan-2015 Added "why-adc-1024-is-correct-and-adc-1023-is-just-plain-wrong"
22-Jan-2015 Updated link to "Gooligum Tutorials"
18-Feb-2015 Added Microchip wiki link documenting how to set CONFIG bits in MPLABX
22-Jul-2015 Added ASM30/XC16 note
28-Jul-2015 Added Crystal Oscillator FAQ
29-Jul-2015 Added MPLABX project info
31-Dec-2015 Added LCD init link.
30-Apr-2016 Added link to "Don't write to EEPROM straight after power on"
22-May-2016 added link to "What Every Computer Scientist Should Know About Floating-Point Arithmetic"
26-May-2016 added link to "Universal assembly language ISR code for XC8 for all standard midrange PICs."
21-Sep-2016 added link to ]"PIC24/dsPIC Legacy Peripheral Libraries"
12-Oct-2016 added link to "Why unoptimised output from C compiler is so bloated"
23-Nov-2016 added link to "Optimal routines to convert 16 bit hex to BCD on 8 bit PICs"
17-Jan-2017 added link to "XC8 Table Array Workaround for PIC18FXXK40, Silicon Rev A3"
24-Jan-2017 added link to "Appnote: Transmit infra-red commands using RC5 or SIRC"
14-Mar-2017 added link to "Fix PK3 by disabling enhanced power management"
29-Mar-2017 added link to "Hardware Tool Debug Features by Device"
14-Aug-2017 added link to "AC zero cross detection. TB3013 supersedes AN521"
1-Feb-2018 fixed faulty URL on "Microsoft CDC driver" link
26-Apr-2018 added link to backup of USB/DALI software
12-Jul-2018 added link to "What's new in XC8 v2.0"
8-Aug-2018 added link to "Moving to XC8 v2.0"
1-Apr-2019 added link to "Reason of Multiple GND and VCC on an IC."
30-Oct-2019 added link to "Access 14 bit data on PIC16F in XC8"
29-Aug-2021 added link to "Generate fotware delays" at piclist.com
16-Sep-2021 added links to "No XINST in XC8", "Don't enable local code generation", and int16 x int16 -> int32 C code.
21-Jan-2022 added link to "PICkit3PlatformTool-The-debugger-could-not-be-started-Terminating-debug-session" solution
24-Apr-2022 added link to "PIC-AS examples".
22-Dec-2022 added link to TI RS422/485 appnote
5-Jun-2023 updated link to Gooligum Tutorials