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.

problems with pic16f84a

Status
Not open for further replies.

irish

New Member
So I built a PIC programmer for 16f84a. My friend tried it on his computer and it worked. I tried it on mine and it didn't. So I thought it's the OS, so I tried it on my other computer (which had win 7 beta installed as my friend's computer). Didn't work there as well. I've tried it with WinPic800, ICProg, PonyProg and there is always a problem. In ICProg i usually got the error "verify failed at address 0000h" (using windows API that is; with direct i/o "privileged instuction"). After checking the use win 2000/XP drivers I get "verify failed at 000xh. x stands for the number of the code part preceding the one where I wrote something. ex. 0000 0000 0000 0100 in this case it would be "0003h"
On my friend's computer everything worked great, even the clock function (lighting a led on the circuit). I'd be really pleased to see only that work. In WinPic800 when i click Read DEV ID-REV I get Detected -> UNKNOWN, DEV ID -> 0x0000. When I click Hardware Test I get ERROR -> Hardware is not responding. When measuring the programmer board circuit near the COM port connection pins I get a reading somewhere between 3,5-3,9 V.
I've tried nearly all possible setups with all programs, gotten rid of spoolsv.exe running, tried installing all kindsa drivers for COM port etc etc.
And still it doesn't work. Any idea why? Thanks in advance for the help.
 
Last edited:
JDM programmers can be notoriously unreliable. The RS232 timing has to be just right and they need to be +/- at least 9V (not 5V like some ports).
 
JDM style programmers were designed when DOS was dominant. Direct access to I/O devices like the 8250 (your serial chip) and timing was far less critical. Modern multithreading CPUs and OSs are not good for toggling bits out of your serial port. Who knows it may even be an 8250 HW emulation.

You could try to build a window SE boot CD.
 
You should try to build the P16PRO40 paralelle port programmer and Nigels WinpicProg software, look at his site
 
It might be old and everything but it doesn't explain why it worked on my friend's comp and not on mine. That shows I don't need to build anything, just find the problem.
 
It might be old and everything but it doesn't explain why it worked on my friend's comp and not on mine. That shows I don't need to build anything, just find the problem.

The problem is that JDM's are rubbish - they require the serial port to exceed the RS232 specification.

One solution is to change your computer to an old one that works with the JDM.

I've never considered the JDM as a 'real' programmer, it was a VERY clever project to make a PIC programmer with a minimum of components, with no thought for how reliable it might be. Unfortunately many people (like yourself) saw the simple design and built it, and for a good percentage of people it never worked because it's not a good enough design.

Notice my software WinPicProg ONLY supports parallel port programmers, even though it would be trivial to add serial port ones to it - this choice was specifically because of the JDM's poor reliability. Unlike most other authors I provide support for my software, and I wasn't going to get involved in the huge numbers of non-working JDM's.

Anyway, it's all academic now - don't mess with serial or parallel port programmers - get a PICKit2 or clone, like the Junebug.
 
It might be old and everything but it doesn't explain why it worked on my friend's comp and not on mine. That shows I don't need to build anything, just find the problem.

All said, let us see the schematic that you have wired. try to upload it, such that any further discussion could be more logical then general. I made few JDMs. and all have worked. It is true that JDMs pose problems. Once you need is regular and consistent , you may better go for PICKIT2 or one of the compatibles.
if it is externally powered, you should not have any problems. Some of the new PC motherboards supply low RS232 voltages as compared to older motherboards.
 
In IC Prog I unchecked the "verify after Programming" option When I continuously receive this error even though my hardware is 100% correct.

Just ticking the "win 2000/XP drivers" doesn't solve the problem.You need that driver file in your installation directory as well.
 
Last edited:
It might be old and everything but it doesn't explain why it worked on my friend's comp and not on mine. That shows I don't need to build anything, just find the problem.

Unless your friends computer is identical to yours... Do you see the flaw in your logic?
 
All said, let us see the schematic that you have wired. try to upload it, such that any further discussion could be more logical then general. I made few JDMs. and all have worked. It is true that JDMs pose problems. Once you need is regular and consistent , you may better go for PICKIT2 or one of the compatibles.
if it is externally powered, you should not have any problems. Some of the new PC motherboards supply low RS232 voltages as compared to older motherboards.
**broken link removed**
I used this scheme

The problem is that JDM's are rubbish - they require the serial port to exceed the RS232 specification.

One solution is to change your computer to an old one that works with the JDM.

I've never considered the JDM as a 'real' programmer, it was a VERY clever project to make a PIC programmer with a minimum of components, with no thought for how reliable it might be. Unfortunately many people (like yourself) saw the simple design and built it, and for a good percentage of people it never worked because it's not a good enough design.

Notice my software WinPicProg ONLY supports parallel port programmers, even though it would be trivial to add serial port ones to it - this choice was specifically because of the JDM's poor reliability. Unlike most other authors I provide support for my software, and I wasn't going to get involved in the huge numbers of non-working JDM's.

Anyway, it's all academic now - don't mess with serial or parallel port programmers - get a PICKit2 or clone, like the Junebug.

No need to tell me about JDM programmers, i completely understand they are bad, unreliable etc etc. Didn't know that WinPic doesn't like serial ports, thanks for telling me that. And it did work, just not on my computer. So it's about the computer and i want to know what the problem is.

In IC Prog I unchecked the "verify after Programming" option When I continuously receive this error even though my hardware is 100% correct.

Just ticking the "win 2000/XP drivers" doesn't solve the problem.You need that driver file in your installation directory as well.

I know that and I do have the driver in the folder.

Unless your friends computer is identical to yours... Do you see the flaw in your logic?

I haven't said that im really amazed why it doesn't work or anything. There is no flaw. I wouldn't even be amazed if we had identical computers and it still wouldn't work because in my hands things never work.
His computer is not much newer/older than mine and both of us have COM ports on our motherboards. And if there are COM ports on motherboards then they were put there by the manufacturers with the purpose of working so it should work.
 
Last edited:
No need to tell me about JDM programmers, i completely understand they are bad, unreliable etc etc. Didn't know that WinPic doesn't like serial ports, thanks for telling me that.

Not WinPic - WinPicProg - the original Windows PIC programming software.

His computer is not much newer/older than mine and both of us have COM ports on our motherboards. And if there are COM ports on motherboards then they were put there by the manufacturers with the purpose of working so it should work.

No - they are put there to work with RS232, NOT to work with a badly designed PIC programmer.
 
**broken link removed**
I used this scheme ............
Instead you may use one attached below, a design by DL4YHF
However JDMs are are poor in design. For long term use, the best is to go for USB based PICKIT2 or a clone with added facilities like tutor for one of the PIC chips. slowly the com ports and LPT ports disappear as laptops takeover desktop PCs.
 

Attachments

  • dl4yhf.gif
    dl4yhf.gif
    9.7 KB · Views: 308
Status
Not open for further replies.

Latest threads

New Articles From Microcontroller Tips

Back
Top