Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

12C508 problems: Verify failed at code address 0000h !

Status
Not open for further replies.

faz666

New Member
Hi,

Im new to PIC programming & have purchased a BASIC programmer from: **broken link removed**
To program 12C508 PIC's, I have downloaded the software from the website (ICPROG) & installed the Windows XP driver. I have connected the programmer to the correct COM port & given it the following settings:

• Programmer: "JDM Programmer."
• I/O Delay: 4.
• Communication: none selected.
• Interface: Direct I/O.

The PIC was inserted in the correct orientation, in the correct part of the IC socket, but when I do this LED turns itself off? Is this faulty? When I put a blank chip in the programmer & read it there was no calibration value at the end, every location contained 0FFF. I selected PIC12C508 from the pull down menu & loaded my .HEX code. When I try to burn the code this comes up:

- No 'Oscillator Calibration Value' do you want to use the value from file 0FFF instead?

Followed by:

- Verify failed at code address 0000h !

I have tried the process on more than one PIC.

The HEX code came from this site: http://www.rentron.com/Infrared_Communication.htm I have read the icprog help file, read through the msg board on the website & tried the programmer on 2 different computers.

Any help would be greatly appreciated as I am new to the subject.

FaZ
 
You need to tell Ic Prog which com port you are using for starters.......


As for the cal val error, you need to read the pic first......you should see the cal val at the last address ( I cant remember what location off hand....around 01ff, a value something like 0xC8) in the hex file, all values will be ff at all other locations coz its blank).

Now make a note of the cal value........load your hex file and scroll down until you come to the same location......now edit the file by inputting the cal value you read, now program your pic.......make sure the verify setting is set to verify after programming.

When the verify is carried out it reads the pic and compares with the buffer.......the reason why you get errors is because of the cal val not be set in the buffer.......


Hope this helps you 8)
 
Thanks for you reply,

ICPROG had been set to use the correct com port. I tried to read the PIC to find the calibration word, but every location contained 0FFF even 01ff, I have tried 3 different 12C508 all with the same result. I have tried the programmer on 3 different computers & the same thing happens each time the calibration word isn’t present, could the programmer be faulty?

FaZ
 
have you ever tried to make the I/0 delay to 20?or something like that.
if that works report me..
good luck! :wink:
 
Hi,

I've managed to read the calibration value from icprog with my Baby programmer thanks to someone who posted the required settings for a Baby programmer on modshack.co.uk, when I got the calibration value I copied it & placed it in location 01ff after I had loaded up my code from the hex file, & I still got the - Verify failed at code address 0000h ! error. Am I supposed to insert the calibration value to the code instead of just placing it in location 01ff, here's the code:

PROCESSOR 12c508
#include "p12c508.inc"
__CONFIG _MCLRE_OFF & _CP_OFF & _WDT_OFF & _XT_OSC
#DEFINE PORT B'11111101'
MOVF OSCCAL
MOVLW PORT
TRIS GPIO

BEGIN
BCF GPIO, 1 ;1uS
NOP ;2uS each nop is 1uS long
NOP ;3uS
NOP ;4uS
NOP ;5uS
NOP ;6uS
NOP ;7uS
NOP ;8uS
NOP ;9uS
NOP ;10uS
NOP ;11uS
NOP ;12uS
NOP ;13uS
NOP ;14uS
NOP ;15uS
NOP ;16uS
NOP ;17uS
NOP ;18uS
NOP ;19uS low on gpio.0
BSF GPIO, 1 ;1uS Begin HIGH duty cycle
NOP ;2uS
NOP ;3uS
NOP ;4uS
NOP ;5uS
GOTO BEGIN ;2uS (26uS total for 38KHz)
END

I didn't write the code someone gave me it & told me all I had to do to use an external oscillator with the code above was replace IntRC_OSC with XT_OSC before assembling the code, which I did. Can anyone spot anything wrong with the code?

Thanx
 
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top