ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel

How to Program Pic and dsPic Microcontrollers from Mplab-X

Updated on June 14, 2017
alikhan3 profile image

The author is currently doing his final year engineering project with the dspic micro-controllers.

All the PIC and dsPic devices can be easily programmed from within the microchip's latest IDE, the Mplab-X® using the PicKit™ as the programmer and debugger.

What is PicKit?

PicKit is an integrated programmer and debugger, developed by Microchip to program its microcontrollers. The PicKit provides the following functionalities to its users:

  1. Programmer
  2. Debugger with provision of 2 breakpoints.
  3. 3 channel Logic analyzer.
  4. UART receiving and transmitting interface.
  5. May also be used as a smooth, noise free 5 V and 3.3 V Vcc supply for the micro-controller.

The dspic30f micro-controller connected to its programmer, Pickit. (You might want to add a LED and blink it to make sure the controller is up and running)
The dspic30f micro-controller connected to its programmer, Pickit. (You might want to add a LED and blink it to make sure the controller is up and running)

Programming a Pic Microcontroller

This is a very simple three step process.

  1. Make the necessary connections between the micro-controller and the PicKit™ required for programming.
  2. Select the programming tool from within Mplab-X IDE.
  3. Build and load the code.

1: Connection Required for Programming a PIC and dsPic

Following connections are required to be made with the PicKit programmer:

Refer to datasheet of your target Pic device for specific pin numbers.

Pin Number on the PicKit Programming Header
Corresponding Micro-controller Pin
1 (to be identified by an arrow printed on device)
MCLR
2
Vdd (There may be 2-3 Vdd pins on one Pic device.)
3
Vss (Can also be more then one.)
4
ICSPDAT / PGD
5
ICSPCLK / PGC
6
No connection
How to connect PicKit with the micro-controller.
The PicKit programming header. Pin number 1 is marked by a small arrow on the device.
The PicKit programming header. Pin number 1 is marked by a small arrow on the device.

2: Selecting the Programmer in Mplab-X

Programmer can be selected while you are creating a new project in the Mplab-X®. In step three of new project wizard, you will see a list of devices which can be used and the serial number of your attached device (if plugged in).

Programming device is detected by the Mplab-X new project wizard if plugged in.
Programming device is detected by the Mplab-X new project wizard if plugged in.

3: Build and Load the Code from Mplab-X

After selecting the programmer you have to build and load the code into the target device. This can be done by clicking on the green arrow in the top menu bar. Make sure your code is error free before doing that.

Build and load the code.
Build and load the code.

To get you up and running fast you can use this LED blinking code to instantly test the code uploading procedure.

LED Blinking Code for dspic Microcontroller

#include <xc.h>
#include <delay.h>
#include <libpic30.h>               // Add the header file of your target pic device here


_FOSC( CSW_FSCM_OFF & FRC_PLL16 );  // Fosc=16x7.5MHz, i.e. 30 MIPS
_FWDT( WDT_OFF );                   // Watchdog timer off
_FBORPOR( MCLR_DIS );               // Disable reset

int main( void )
{
    // Make RD0 a digital output
    _TRISD0 = 0;
     
    // Blink LED on RD0
    while(1)
    {
        _LATD0 = 1;
        __delay32(15000000);
        _LATD0 = 0;
        __delay32(15000000);
    }
}

© 2017 StormsHalted

Comments

    0 of 8192 characters used
    Post Comment

    No comments yet.

    Click to Rate This Article