Resolution
Thanks to Toley for sending me a few of the problem PIC16F88 parts. This problem is unique to 18-pin parts that share the Timer1 oscillator with the PGx programming pins. Parts included are the PIC16F88, 87 and possibly the 818, 819, 62xA, & 648A.
The problem occurs when the device is programmed so that:
1) It uses the internal oscillator
-and-
2) The MCLR pin is turned off to use as a digital input instead
-and-
3) The program code enabled the Timer1 Oscillator in the T1CON register. (The sooner this is enabled after the reset vector the more likely the problem is to occur.
This problem can be prevented by avoiding one of the 3 conditions above.
It is possible to recover parts with this issue. To do so, follow these steps in the PICkit 2 Programmer software:
A) Put the part on a breadboard or other jig where it is only connected to the 5 PICkit 2 programming signals.
B) Open the PICkit 2 Programmer application v2.40 (or later). Select "Device Family > Midrange"
C) Set the PICkit 2 Programmer VDD voltage box to 3.0 Volts
D) Select "Device Family > Midrange" again; it should now detect the part
E) If the part is not detected in D), reduce the VDD by 0.1 volts and try again. Repeat until the part is detected.
F) Select the WRITE button. It should now erase the part.
You will now be able to program & use the part normally at 5.0 Volts VDD.
Bookmarks