chipKIT® Development Platform

Inspired by Arduino™

Programming Uno32 with Pickit3 and MPLABX

Created Fri, 22 Apr 2016 13:20:48 +0000 by pierre


Fri, 22 Apr 2016 13:20:48 +0000

I have a small assembly program for the PIC32 Starter Kit (PIC32MX360F512L) on MPLABX and would like to run it on Chipkit Uno32 (PIC32MX320F128H). It does a few basic operations such as setting the BMX registers, testing execution from Program Flash and RAM, with very basic output on LEDS. I know I probably have to change my RAM mapping and LEDs output addresses, but my main concern is how to assemble with MPLABX for a different MCU, i.e. how include data specific to the PIC32MX320F128H. The Starter Kit is recognized as such by the IDE with no Pickit in between and the IDE/compiler did the MCU-specific include work for me. This time I shall be using the Pickit3 to access the MCU and it is not clear to me how configuration settings specific to the MCU can be made. I did find a post on this subject, but it mentions a feature of the IDE, setting configuration bits, that since then (2014) I understand has changed:


I'd be grateful for any specific advice, thanks!


(Incidentally, having MPLABX to work reliably with the PIC32 Starter kit was quite an ordeal, I had to install it on 4 different computers running Debian before having one that a) detects the Starter Kit and b) does not occasionally freeze during MCU transfer/programming via USB. I hope that with different hw, Pickit3 and Uno32, of which I have no experience at this time, I will be rid of this frustration)


Fri, 22 Apr 2016 14:01:55 +0000

The main thing you have to do is select the correct microcontroller in the project's settings. Once you do that everything else should know about it. Including xc.h will automatically include the right processor header for the chip you have selected.


Sun, 08 May 2016 12:09:17 +0000

Thank you again. I was able to test my project on Uno32 today and, as you said, it was very straightforward. And with Pickit and Uno32 I've had no MPLAB UI freezes either.