Jump to content
Bug

12C508A Programming

Recommended Posts

Hello,

Can anyone give me a bit of assistance in setup of my IC Program software?

I have it setup and it burns a 16F84A no problem. I have done it a dozen times, but I tried to burn a 12C508A and have lunched 4. (I'll sell them cheap with whatever junk might happen to be in them!) They are not totally junk, I have the magic smoke still in them.

I have a programmer called "multi chip programmer" that was developed by JDM. Like I said, works fine for the flash part so I am assuming it is electrically sound.

I set my IC Prog to a 12C508A, uncheck WDT and MCLR, and check CP. Oscillator is set to internal RC. My checksum says EE03 and ID value is FFFF.

According to the IC Prog site, I set my I/O delay from 10 down to 4. No other configuration changes exept I have set the software to com 2 to get it out of the PC.

Do I need to mess with my "Edit Config Word" ? Or should I hook 115 to pins 1 and 4? ( just kidding about the 115)

Share this post


Link to post
Share on other sites

Forgot to say, I am loading the RCST servo tester .hex file into the 12C508A and different test and project .hex files into the 16F84A.

Share this post


Link to post
Share on other sites

The 12C508 OTP parts use a totally different mechanism to program (burn) than the FLASH devices. So, it would be possible for a Flash part to work on your programmer but not OTP parts.

It is weird that your ID Value is FFFF. When the programmer loaded the hex file, it should have set these to something like 0E10. This will not cause any problems on its own, but it does indicate that the programmer system's app S/W is a bit confused.

Also, you should find that the Config fuses will be setup automatically from the hex file. If you find that you need to change them to make them correct, then that is another sign that the app S/W is goofy.

I have never used your programmer. Hopefully someone that has can help out.

Share this post


Link to post
Share on other sites

I have the same programmer and software setup as you do. I program 12C508A PICs all the time. In fact I used it to programm my pic for the servo tester.

The only change I made to the software was to stop the verify after programming found in the options menu.

When you load the hex file : rcst_v1.hex it sets all of the fuses. The most important of these is the CP fuse. This fuse will not allow the code to be verified after programming. Further more the loading of the file changes the checksum to 2AB5 and the ID Value to 0E10.

My I/O Delay is set to 10. I have used this setup on 5 of RC-CAM projects to date and it works fine.

This is my experience with this set up.

JOEKADET

Share this post


Link to post
Share on other sites

I did not ask how you knew that your PICs where trashed and I guess that I should have. I had problems with my set up to start with. I kept getting an error on verifying after programming. Mr.RC-CAM pointed out to me that with the CP fuse set this would be the case all the time.

I used one of the "trashed" pics in the project. At the time it was the HamMan_IDer project. The project worked fine and I have flown the Aircraft 20 or 30 times with no problems.

I hope that my experiences help. If you have any questions I have the hex loaded in my IC-Prog software at this time

Share this post


Link to post
Share on other sites

One last setting that I changed is in the hardware settings.

Press F3 to get to the hardware settings and under Interface , set it to : Windows API

This setting works for me. I am using the latest version of IC-Prog : 1.05C

and I have the Windows 2000/NT/XP driver activated

joekadet

Share this post


Link to post
Share on other sites

Hey,

Thanks so much for all you guys help! I set my IC Prog as Joe suggested and opened the file rcst_v1.hex, then I tried to open the file that came with IC Prog called disasmblr. It asked me if I wanted to swap bytes and naturally, not knowing what I was doing, I pushed YES. The buffer changed, checksum value changed and ID value was 0000.

Now when I open up rcst_v1.hex, the fuses set themselves, oscillator looks right and the checksum and ID value are correct! Yahoo.

Does it work? Hard telling. I attempted to "reprogram" the PICs I had hoping I did not burn them the first time, but they still don't act right. The servo does other weird stuff now. I will be getting 25 PICs this week and will try again.

I know there should be no "For Sale" in this forum, but those 4 PICS are still up for grabs!...Cheap.

Share this post


Link to post
Share on other sites

Hi BUG,

I'm glad that I could help. The program Disasmblr is an application and not a hex file. It is a program that you run to disassemble hex files which rights assembly code ie. load 01 0003 etc. This program is useful when you are wirting code and debugging it but has little use at our level.

Because you loaded a program into IC-Prog's buffer you got the swap bytes window.

The only thing that one must look out for when using this or any software is that the hex file sets the fuses and CP is the "code protect" fuse and this fuse will not allow you to verify after programming. I set IC-Prog to verify while programming and if everything goes well I get a code verified message. You can skip the verify step all together and you will get a code burn successfully message. The exact messages escape me right now, but you will know if the burning was successful or not. You set the verify in the Options menu. ( settings, options, programming)

Good luck with your project. If all else fails I have two Servo Tester PICs that I burned to prove out the above. One takes these little quirks for granted when you get the system working. I bought 20 12C508As for a good price some time ago. I might even build another RCST for my son-in-law with one of them. You are welcome to the other.

joekadet

Share this post


Link to post
Share on other sites

Finally figured out how to run IC Prog. You must select your device before loading a file! I was loading my file and then selecting the PIC. When you change PICs it erases the loaded file, that is why I was loosing my chips. (and my head!)

Thanks again for all the help, and your email, Joe.

Share this post


Link to post
Share on other sites
Finally figured out how to run IC Prog.

Hi BUG,

Have you been monitoring the Topic - Landtastic: R/C model retract controller ? I had a problem with IC-Prog software programming the PIC for the project. I found some anomalies with it. The Problem is not applicable to the servo testor ; however, it could be in the future. I pertains to the 12F629/675 PIC s and the OSCILATOR calibration value. It could save you some head problems.

Let me know when you get back to working on the servo testor again.

Regards,

joe

Edited by joekadet

Share this post


Link to post
Share on other sites

Hi Guys ,

I'm trying to do my first PIC programming , but no luck

With 2 pics , I've tried to write the hex file for the Aptec switch .

Both pics seems to have code till adress 40h afterwards, there blank .

The JDM programmer passes the tests ( done with a Fluke multi )

I've read here about the switches that should set themself from the hex file .

this wasn't the case .

I imagine that those partial programmed pics are for the BIN ??

there is a setting in IC-Prog : enable VCC control for JDM

should it be set ?

I would appreciate if someone could tell me the exact settings and procedure.

another question : should I first insert the pic and then connect to the PC or the other way round ?

I'm throwing a lot of questions , but I'm on unknown ground .

I've my degree in Electronics , but not in PIC grogramming

best regards ,

Koen VG ;)

Share this post


Link to post
Share on other sites
Hi Guys ,

I'm trying to do my first PIC programming , but no luck ...

With 2 pics  , I've tried to write the hex file for the Aptec switch .

Both pics seems to have code till adress 40h afterwards, there  blank .

The JDM programmer passes the tests ( done with a Fluke multi ) ...

I imagine that those partial programmed pics are for the BIN ??

there is a setting in IC-Prog : enable VCC control for JDM 

should it be set  ...

Koen VG ;)

Hi Keon VG,

In order to assist you I need more specific information from you.

1. Which hex file are you loading? (Possibly - CM_Av11.hex from RC-CAM Special Projects Cam Man?)

2. Which JDM design programmer are you using? ( Multi-Chip Programmer from Poptronics by any chance?)

3. Which version of IC-Prog are you using?

It does not hurt to enable the VCC control for JDM. I have done it both ways; however, IC-Prog help says not to enable "VCC control for JDM" because it is an experimental option "...and NOT for common use! Please disable it!".

Do not give up on the two chips that you have tried to program. If as I suspect the "protect code" fuse was set by the hex file you will not be able to read or verify the chip (PIC 12C508) after programming. That I believe is the reason for no data after 40 h.

As soon as I know the file, programmer, and software info I should be able to help with an exact procedure. You can PM the information to me.

Regards,

Joe

Edited by joekadet

Share this post


Link to post
Share on other sites
If as I suspect the "protect code" fuse was set by the hex file you will not be able to read or verify the chip (PIC 12C508) after programming. That I believe is the reason for no data after 40 h.

I agree. That is the typical reason for a "failure" in this situation. You cannot verify the CamMan PIC AFTER programming.

Have you read this? : http://www.rc-cam.com/faq.htm#pic_fail

Share this post


Link to post
Share on other sites

MR RC_CAM ,

I 've read all possible info before plunging into the deep .but ... ( keep on reading )

Joekadet ,

The interface has been made by myself with the schema found on the JDM homepage .

the hex file is indeed CM_Av11.hex

I use IC prog 1.05C

yesterday evening , after reading the RC-Cam forum and the IC-prog forum ,

I added some Leds to the programmer to diagnostic the signals ( found on a new JDM schema 2001)

after connecting this and running the tests , the results were strange .

then I unclicked the VCC option for JDM , redid the test and all was fine .

The 5V is allways on ( don't know if this is OK)

I used one of the 2 PICS , plugged in the programmer ,

started IC prog ,choose for the 12C508A , loaded the hex file ( the switches were set by loading the file ) programmed it ( took a long time : 2 à 3 min )

and then it said programmed succesfully .

I plugged the pic in my test board and .......... it works !!!! ;)

I'm really happy . :D

Now I'm going to try all the RC-CAM projects , they are really great !!

Mr RC-CAM , I really appreciate the amount of superb info that you share with the rest of the world . you've opened another interest in my knowledge :rolleyes:

last question : why do we need to protect the code ??

best regards from a very happy guy from Belgium

Koen VG

Share this post


Link to post
Share on other sites
MR RC_CAM ,

I 've read all possible info  before plunging into the deep .but ... ( keep on reading )

Joekadet ,

The interface has been made by myself  with the schema found on the JDM homepage .

the hex file is indeed CM_Av11.hex

I use IC prog 1.05C

...

The 5V is allways on ( don't know if this is OK)

...

best regards from a very happy guy from Belgium

Koen VG

Hi Koen VG,

First I know the feeling. Mr.RC-Cam's web page got me started in Aerial Video, and I'm now completing my third system. I hope to test fly it in April in Florida.

The 5V is coming off the serial port, and on my JDM programmer it is a green LED. The serial cable that I use has a modular phone connector/jack on the programmer end. Because the port supplies the 5V to the programmer I always disconnect the Programmer any time that I'm removing or installing a chip. (pin 1 has +5V on the 18 DIP socket on the Programmer). The JDM design does not control the 5V to the chip VCC as some of the other Programmers do.

IC-Prog does not treat well the OSC CAL value stored in the 12F629/675 PICs. If you are using Windows XP it would be to your advantage to Enable the Windows 2000/NT/XP driver in the Options Menu.

Welcome to the world of PIC programming.

Joe

Share this post


Link to post
Share on other sites
Joekadet ,

The interface has been made by myself  with the schema found on the JDM homepage .

the hex file is indeed CM_Av11.hex

I use IC prog 1.05C

...

then I unclicked the VCC option for JDM , redid the test  and all was fine .

...

Thanks for the heads up. I went back and rechecked the JDM web page, and made some checks on my system. The VCC option for JDM does cause problems when using IC-Prog 1.05C.

I had disabled the option some time ago and was going on my earlier experiences using the system.

This is an never ending learning process.

Thanks again Koen VG,

Joe

Share this post


Link to post
Share on other sites

To Mr RC-Cam

Why do we need to protect the code ???

Is this in order your software ( witch I can understand in this evil world)

or has it a functional reason .

just curious

best regards ;)

Edited by Koen VG

Share this post


Link to post
Share on other sites

It is a simple method to prevent project builders from using another programmed PIC chip as the hex code master. It reinforces the device's copyright status and forces users to read the license-free usage requirements outlined in the downloaded firmware file. This requirement is a small price to pay for the use of the RC-CAM firmware.

Share this post


Link to post
Share on other sites

Mr RC-CAM , is it possible to :

program a 12Cxx with Code protection off ,

then verify the programming

and then afterwards put the Code Protection on ??

I've not be able to read all the PIC documentation , but I know that they speak about One Time Programmable only .

So I guess that I've answered my own question .

For your info ,

I've stripped this WE my Aiptek Megacam .

connected the 12C509

shrinkwrapped the cam + chip and voilà :

a 36 gr remote controlled 1.3 Megapixel camera (instead of 54 gr )

I've wanted to testfly this in my Skysurf yesterday , but a strong wind decided

to blow the lot in the nearest "ZEBRA area " in the animal farm , I live nearby

test is postponed ( the male Zebra was to MAD :angry: )

post-7-1078133662_thumb.jpg

Share this post


Link to post
Share on other sites
is it possible to :program a 12Cxx with Code protection off ,

then verify the programming and then afterwards put the Code Protection on ?

It is possible on some PIC programmers.

Why not just let the programmer use the config settings as provided? Doesn't yours already perform a Verify *before* setting the config fuses? That is the way it should work if it is a good design.

Share this post


Link to post
Share on other sites

thats correct , JDM has this feature .

Learning every day ... great

What do you think about the "stripped " mega cam ??

regards ,

Koen VG

Share this post


Link to post
Share on other sites

Is there a way to determine if the burned 12c508 is a good burn apart from completely wiring it up to my receiver and camera etc?

I built a simple JDM programmer from scrap parts in my junkbox - the ic-prog program seemed to burn the chip fine - no error messages reported. I did try to "verify" after the burn but of course I get the verify fail message which is normal. Just wondering if thre are any values or resistance measurements i can take on the chip to see if all is well? I am awaiting my Aiptek SD so I can't wire it up just yet to see if the chip s good!

Thanks for any help! -Mike

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×