PIC10F - Invalid Calibration Memory Error
At start up the PIC® device jumps to the RESET vector and expects to see a MOVLW XX instruction, where XX is the calibration data for that PIC device. This is erased during the erase cycle. The programmer then restores this value during the program cycle. Sometimes the programmer fails to do so which causes the invalid calibration error.
The calibration data for a PIC device is factory programmed during testing. There is no universal value for every PIC10F but the value remains the same for a given batch of PIC10Fs.
To work around this problem, you need to read the program memory of a new PIC10F device that has the calibration value intact.:
- The last location of memory should have a calibration value; record that value.
- Read the contents of the erased device and write the value at the same memory location. The device should be restored.
Newer devices no longer use this method so consider using a newer release device.