MCLR - Faulty? (URGENT)

Status
Not open for further replies.

Macka

New Member
I built my first programmer, and I went to test it with the software supplied on the site that i got the schematic from, however it is refusing to program my chip (Pic 16F88).

I had a look at the pin levels and found that MCLR is always sitting at +13V even when the program says it has been disabled, could this be the cause of the programming failure?

The procedure Im using is Start software, place PIC in socket, attach programmer to computer, power up programmer from an 18V power source, Erase All, Program all, Verify (Verify fails at 0000h, Read All (Returns hex data as 3FFF), Check Blank (Returns the PIC is blank).

The programmer I am using comes from www.oshonsoft.com/picprog.html

Any suggestions?
 
Last edited:
It's the rapid movement from 0V to 13V that switches the PIC to programming mode, if it's sat permanently at 13V then that's not happening.
 
Would the powering up of the circuit cause that or does vdd have to be high for it to detect the rapid movement from 0 to 13V?

how could I fix this?
is maybe a transistor faulty?
for a temporary quick fix could i tie vdd high and then enable VPP and then burn the program?
 
Hi,
First check the voltage on pin 5 of the cable to see if the your PC is trying to switch VPP, if it is switching the problem is most likely the transistor (probably inserted wrongly in the board or blown).
 
The voltage on pin5 is rising from 0.1V to 4.36V when VPP is enabled.
The Voltage on the programmer is sitting at 12.66V and rising to 13.41V when VPP is enabled.

So does that mean I need to replace my transistor?
 
There's a red LED on Vpp, this should ONLY light when you try and enter programming mode - so it should normally be OFF. Check the output voltage of IC1 buffer 4 - this should normally be around 12-13V, and go low (near 0V) when programming.

Did you buy it ready built, or make it yourself?.
 
andrew12345678 said:
The voltage on pin5 is rising from 0.1V to 4.36V when VPP is enabled.
That's correct.

andrew12345678 said:
So does that mean I need to replace my transistor?
No, it's working! it's not able to shut off... I would suggest changing the resistors (values) around it. You can do this test without inserting the PIC in the socket.
 

Well, the LED is always on, i have only ever seen it off when the programmer has no power, I thought that was a bad sign.

I made it myself, designed the PCB and everything.

eng1 said:
No, it's working! it's not able to shut off... I would suggest changing the resistors (values) around it. You can do this test without inserting the PIC in the socket.

Ok, so i need to increase the resistor value of the resistor coming off pin 8?

what value do you recommend?
 
andrew12345678 said:
Well, the LED is always on, i have only ever seen it off when the programmer has no power, I thought that was a bad sign.

I made it myself, designed the PCB and everything.

Presumably you did use an open-collector buffer chip?, if you used a normal buffer this is the effect you would get. Otherwise, check the voltage on buffer 4 output as I suggested.

Ok, so i need to increase the resistor value of the resistor coming off pin 8?

what value do you recommend?

I wouldn't suggest randomly changing values, and there's really no values that could affect your problem anyway!.
 
hehe... funny you should mention that chip *tugs collar* its non buffering, I could only get hold of a Non-Buffering Hex inverter, no other inverters are available where I live, I hoped it wouldnt matter, and until now it doesnt seem to have mattered, I will check the voltage on that pin and get back to you.
 
Ok, The Pin goes to 5.09V when VPP is disabled, and down to 0.04V when disabled, but the LED remains lit.

The chip I am using is 4HC04N if that helps
 
Nigel Goodwin said:
I wouldn't suggest randomly changing values, and there's really no values that could affect your problem anyway!.
I don't agree.

But you might have found the problem, if that chip doesn't have open collector outputs...
andrew12345678 said:
The chip I am using is 4HC04N if that helps
Did you mean 74hc04n?

You have to get a 7406 (inverting) or 7407 (non-inverting).
 
Last edited:
Damn, Damn, Damn!
Do I have any other options, because I cant get hold of that chip, and I really, really need to get it working tonight.
 
andrew12345678 said:
hehe... funny you should mention that chip *tugs collar* its non buffering, I could only get hold of a Non-Buffering Hex inverter, no other inverters are available where I live, I hoped it wouldnt matter.

It's ABSOLUTELY crucial! - it's what makes the programmer work, you MUST have an O/C buffer!.

If it's urgent to get it working, replace that single buffer with an NPN transistor, with a resistor feeding the base (say 10K), and another base to emitter.
 
Last edited:
eng1 said:
I don't agree.

In what way?, the relevent resistor values (the two 10K's) are in no way critical, and could be varied massively up or down without any problems.
 
I agree with you as far as the range is concerned. But there are combinations of the two resistors that can't switch the transistor off.
 

Ok, well thats a real kick in the pants.
What does Open Collector mean anyway?

Will a BC548 do?
so I would take the line from pin 5 and run it via a 10K resistor to the Base of the NPN, then connect a 10K from the Emitter to the Base, do I then take the output from the collector and run that to where the buffer out put is?
 
eng1 said:
I agree with you as far as the range is concerned. But there are combinations of the two resistors that can't switch the transistor off.

I would completely disagree, perhaps you would care to suggest any values that you think could do that? - are you perhaps forgetting the driver IC is supposed to be open-collector?.
 
andrew12345678 said:
Ok, well thats a real kick in the pants.
What does Open Collector mean anyway?

It means what it says, a connection JUST from the collector of a transistor, with no other component connected to it. This means it can SINK current, but not SOURCE it - which is what we're looking for in this case.

If you check my PIC tutorials (Hardware Extras) there are some examples of using transistors for it, which you could use for your buffer.

Will a BC548 do?

Yes, that's fine.

so I would take the line from pin 5 and run it via a 10K resistor to the Base of the NPN, then connect a 10K from the Emitter to the Base, do I then take the output from the collector and run that to where the buffer out put is?

Yes, that's it - and connect the emitter to 0V of course.
 
Nigel Goodwin said:
are you perhaps forgetting the driver IC is supposed to be open-collector?.
Hmmmm... what if you consider a small leakage current? I'd like to simulate that case... do you still think that the transistor would switch off with any resistance (base to emitter)?

andrew12345678 said:
What does Open Collector mean anyway?
As Nigel already said, o.c. means that the collector of the output transistor (of each gate) is left unconnected. In order to operate the transistor as a switch you have to add an external pull-up resistor. That's useful when interfacing different voltage levels for example.
I hope you'll have your programmer working!
 
Last edited:
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…