ME Labs, Inc.
719-520-5323
 
Home:
  Developer Resources:

Programming Clues
    Sample Programs
   
    PICBASIC PRO™
Compiler Manual
    PICBASIC™ Compiler
Manual
    Serin2/Serout2 Modes
    ASCII Character Set
    Number Conversion
    Floating Point
Routines
    PBP Debug Monitor
    Articles and Tutorials

Hardware Clues
    Parts / Vendor List
    PICPROTO™ Boards
    LAB-X1 Docs
    LAB-X2 Docs
    LAB-X20 Docs
    LAB-X3 Docs
    LAB-X4 Docs
    LAB-XUSB Docs
    LAB-XT Docs
     
 

Programming PIC MCUs that won't tolerate 5V on their supply pins. ("J" & "K" devices)

Some of the newer PIC microcontrollers from Microchip are designed to be powered at 3.6V or less.  These part numbers are denoted with a "J" or "K" in their part number.

Regardless of the programmer, adapter, or connection method, selecting a standard 5V part in your programmer's software might damage the "J" or "K" equivalent that you're trying to program.  If the exact part number doesn't appear in the software's dropdown list, you need to upgrade or download the latest beta software.  This is not something you should test.

The procedures discussed on this page have nothing to do with "Low-Voltage Programming", as listed in the configuration selections for many PICs.  You should not enable Low-Voltage Programming for any of the circumstances described below.  LVP is something entirely different, and won't help you here.

Programming "K" parts:

The PIC MCUs with "K" in their part number are very similar to their 5V counterparts.  If your adapter supports the 5V version of the part, it also supports the 3.3V version, but only when used with the U2 programmer.  If you are programming a "K" part in-circuit, see the ICSP concerns at the bottom of this page.  If you're programming with a programming adapter, skip the rest of this page - it doesn't apply to you.

The following guidelines only apply to "J" series parts placed in programming adapters.  If you are programming "K" series part, or programming in-circuit, skip this section.

Programming "J" parts:

Do you have the right programmer?

If you are programming these parts in-circuit, you can use any melabs Programmer as long as specific techniques are followed.

If you are programming with one of our Programming Adapters, you should only use the melabs U2 Programmer or melabs Field Programmer (with power adapter).  These are the only programmers that we offer that are capable of adjusting Vdd output according to the part number selected.


These programmers can only program 3.3V parts in-circuit.  They won't work with a programming adapter.

These programmers can program 3.3V parts with a compatible adapter or in-circuit.  (melabs Field Programmer may require power adapter configured for 3.3V output.)

Do you have the right adapter?

In addition to the latest programmer, you will also need an adapter revision that supports the "J" parts.  The table below lists all the adapters that, in their current revision, can be used with the U2 Programmer to burn the new parts at 3.3V.  Some of these adapters were released in earlier revisions that didn't support this operation.  The easiest way to know if your adapter is capable is to look for a place on the adapter where you can install a capacitor.

If you find a hole-pattern labeled C1 that allows you to install a cap,  you can continue.   If your adapter has no place for an extra cap, you will need to purchase a new adapter that is compatible or program your part in-circuit using the guidelines below.

Have you prepared the adapter?

Listed in the next table are all of the programming adapters that support "J" part numbers. Each of these adapters require additional circuitry for programming the low-voltage parts.  Find your adapter below for a brief explanation of what must be added or changed to prepare for programming.  You will also find notes on restoring the adapter for 5V programming. 
  

Adapter Low-Voltage Device Requirements
840Z

8-40 ZIF Adapter

To program 18FxxJ parts, install a 2.2uF capacitor at C1.  DO NOT JUMPER JP1.

To program 18LFxxJ parts, install a jumper at JP1.  DO NOT INSTALL CAP C1.

For all other 5V devices, remove the JP1 jumper.  The C1 capacitor can be installed without affecting the programming process for 5V parts.

44TQFP

44 Pin TQFP Adapter

To program 3.3V parts (18FxxJ), install a 2.2uF capacitor at C1.

All 5V parts will tolerate the cap without programming errors.

28SOIC

28-pin SOIC Adapter

To program 3.3V parts (18FxxJ), install a 2.2uF capacitor at C1.

All 5V parts will tolerate the cap without programming errors.

28SSOP

28-pin SSOP Adapter

To program 3.3V parts (18FxxJ), install a 2.2uF capacitor at C1.

All 5V parts will tolerate the cap without programming errors.

1864TQFP

1864 TQFP Adapter

JP1 pin-1 is denoted with a square pad on the adapter PCB.

JP1 pins 1-2 are shorted by default on the back or the adapter board.  This configures the adapter for 5V parts (18F)

To program 3.3V parts (18FxxJ), cut the trace between pins 1-2 on JP1, solder pins into the JP1 location, and install a jumper block on pins 2-3.  Install a 2.2uF cap at C1.

To restore the adapter for programming 5V (18F) parts, move the jumper block to JP1 pins 1-2.

1880TQFP

1880 TQFP Adapter

JP1 pin-1 is denoted with a square pad on the adapter PCB.

JP1 pins 1-2 are shorted by default on the back or the adapter board.  This configures the adapter for 5V parts (18F)

To program 3.3V parts (18FxxJ), cut the trace between pins 1-2 on JP1, solder pins into the JP1 location, and install a jumper block on pins 2-3.  Install a 2.2uF cap at C1.

To restore the adapter for programming 5V (18F) parts, move the jumper block to JP1 pins 1-2.

DSSOIC

dsPIC SOIC Adapter

JP1 is shorted by default on back of the adapter board.  This configures the adapter for 5V dsPIC parts (30F).

To program 3.3V parts (24FJ), cut the trace between the JP1 pins on the back of the adapter board and install a 2.2uF cap at C1. 

To restore the adapter for programming dsPIC30F parts, solder pins in JP1 and install a jumper block.

DSZ

dsPIC ZIF Adapter

JP2 is shorted by default on back of the adapter board.  This configures the adapter for 5V dsPIC parts (30F).

To program 3.3V parts (24FJ), cut the trace between the JP2 pins on the back of the adapter board and install a 2.2uF cap at C1. 

To restore the adapter for programming dsPIC30F parts, solder pins in JP2 and install a jumper block.

DS44TQFP

dsPIC 44 Pin TQFP Adapter

JP1 is shorted by default on back of the adapter board.  This configures the adapter for 5V dsPIC parts (30F).

To program 3.3V parts (24FJ), cut the trace between the JP1 pins on the back of the adapter board and install a 2.2uF cap at C1. 

To restore the adapter for programming dsPIC30F parts, solder pins in JP1 and install a jumper block.

DS64TQFP

dsPIC 64 Pin TQFP Adapter

JP1 is shorted by default on back of the adapter board.  This configures the adapter for 5V dsPIC parts (30F).

To program 3.3V parts (24FJ, 24HJ, 33FJ), cut the trace between the JP1 pins on the back of the adapter board and install a 2.2uF cap at C1. 

To restore the adapter for programming dsPIC30F parts, solder pins in JP1 and install a jumper block.

DS80TQFP

dsPIC 80 Pin TQFP Adapter

JP1 is shorted by default on back of the adapter board.  This configures the adapter for 5V dsPIC parts (30F).

To program 3.3V parts ( 24FJ, 24HJ, 33FJ), cut the trace between the JP1 pins on the back of the adapter board and install a 2.2uF cap at C1. 

To restore the adapter for programming dsPIC30F parts, solder pins in JP1 and install a jumper block.

 


Programming low-Vdd devices in-circuit

EPIC Parallel Port Programmer:

See our ICSP page for the basic procedure and connections.  There are 2 things that are exceptions to the information found there.

1.  You must have a 1K pullup resistor from the MCLR pin on the PIC to the Vdd supply on your board.

2.  You must connect the Vdd supply on your board to the Vdd pin on the EPIC's programming header (J3).  This contradicts the guidelines on the ICSP page. (We know and we're sorry).  The reason for this is to give the EPIC programmer a Vdd supply for its pullup resistors on the programming clock and data lines.  When you select a "J" or "K" part, the EPIC will never turn on its Vdd output, so it's ok (and necessary) to connect the Vdd pin.

3.  If your PIC MCU requires one, a capacitor (4.7uF) must be connected to the Vddcore/Vddcap pin.

melabs Serial Programmer and melabs USB Programmer (U1):

1.  See our ICSP page for the basic procedure and connections.

2.  The only additional requirement is that there must be a 1K pullup resistor from the MCLR pin on the PIC to the Vdd supply on your board.

3.  If your PIC MCU requires one, a capacitor (4.7uF) must be connected to the Vddcore/Vddcap pin. (Does not apply to "K" parts.)

melabs U2 Programmer and melabs Field Programmer:

1.  Connect and program as you would normally, using the information found on our ICSP page.

2.  If your PIC MCU requires one, a capacitor (4.7uF) must be connected to the Vddcore/Vddcap pin. (Does not apply to "K" parts.)