Hiyas,
I built Jim's programmer (uses 74HCT125 now)... anyway now I have the weirdest results yet (yay)!
Just as an example, I'll do some stuff riiiight now..:
* Turned on +12V, +5V (actually more like 3.6V - 3xAA rechargable), but programming datasheet says this is fine)
* Loaded FPP, checked setup (ok)
* Clicked read, ok
* Woo! Screenfulla' 3F8C's code, 00 00 etc. data
* Clicked load, loaded FLASHLED.HEX
* Clicked program, ok
* "Failed to program code!" instantly
* Clicked read, ok again, for kicks.. got 2C24 followed by 8 0000's, then all 3F8Cs. Near the end, 3FFF x4, 0000, then 3F16 09A5. Data is now all 80's! Config has also changed, from "####" to "2C24"
* Reset power supplies, clicked read, got 3FFF, load of 0000s, data all 0000s.
* Ooie, transistor is hot.. I'll try turning it round *shrug*.. nope, now it all reads as --Blank-- and still fails to program.. turned it back, reads 3FFF then 00s again.
* Doesn't work if I connect +12V connectly to MCLR either (with 100ohm resistor)
I have... no idea.. if anyone is recognising anything click that lil reply button :) Thanks
OMG!!! How many different programmers have you built by now?
I think it's time you used the good old "Neil Programmer" and
be done with the programming problems once and for all. The
best part is that the Neil programmer requires absolutely no
parts, and does not care what type of port you have on your
computer, but does take a little longer to program.
If you're still interested, here are the details.... simply
place your pic in an envelope, with a return envelope as well
and mail it to me. I'll program it and return it to you at
no charge!
Pic Dude wrote:
>
> OMG!!! How many different programmers have you built by now?
> > I built Jim's programmer (uses 74HCT125 now)... anyway now I have
> > the weirdest results yet (yay)!
> > * Ooie, transistor is hot.. I'll try turning it round *shrug*..
> > nope, now it all reads as --Blank-- and still fails to program..
> > turned it back, reads 3FFF then 00s again.
Hee hee hee! :o) Your transistor got "hot" in
your programmer? That is a BAD sign. ;o)
And didn't work either way around. Hmmm, bad little
transistor.
Your programmer needs a MUCH BIGGER TRANSISTOR.
;o)
-Roman
PS. Seriously now, your transistor is probably dead,
and your PIC is possibly fried. Most likely event is
the transistor got 12v or 3.6v shorted through some part
of the PIC. When you say "I tried the transistor the
other way around" that does not inspire confidence.
Again seriously, if you are at that stage where you
are not sure which way around to put your transistors
etc try buying a heap of transistors in a standard
package. Many of the hobby elec shops will sell you
100x pack of BC549/BC337/2N2222 etc for a few bucks,
thet's just a few cents each and they will all have
the SAME, KNOWN package. and if there is anything sus
about your circuit(s) you can just throw out the sus
transistor and put a new one in. Those few cents will
save heaps of heartache. :o)
-Roman
> > -----Original Message-----
> > From: pic microcontroller discussion list
> > [PICLISTKILLspamMITVMA.MIT.EDU]On Behalf Of Kieren Johnstone
> > * Turned on +12V, +5V (actually more like 3.6V - 3xAA
> > rechargable), but programming datasheet says this is fine)
> > * Ooie, transistor is hot.. I'll try turning it round *shrug*..
> > nope, now it all reads as --Blank-- and still fails to program..
> > turned it back, reads 3FFF then 00s again.
> > * Doesn't work if I connect +12V connectly to MCLR either (with
> > 100ohm resistor)
What resistor do you have between 12v and the collector
of the transistor? Did you use only 100 ohms as stated
above? Try 10k instead. 100 ohms would cause about 120mA
which would dissipate maybe 0.12 watt, plenty to get that
transistor toasty.
-Roman
>Hiyas,
>I built Jim's programmer (uses 74HCT125 now)... anyway now I have the
weirdest results yet (yay)!
>Just as an example, I'll do some stuff riiiight now..:
>
>* Turned on +12V, +5V (actually more like 3.6V - 3xAA rechargable), but
programming
datasheet says this is fine)
Hmmm I don't know about 12v did you build the 2 regulators into the circuit?
I'v seen it mentioned on the list before that 12v is pushing it. with the lm317
you get 13v. I have been using my programmer to program my robot which has
a large 12v gelcell and a 7805 regulator of it's own to power the 16f874 but
alot of times I get failed to program running it from that 5v. I have to connect
it to my bench 5v supply then it always works. So maybe you are have trouble
with your battery supply for 5v.
>* Loaded FPP, checked setup (ok)
>* Clicked read, ok
>* Woo! Screenfulla' 3F8C's code, 00 00 etc. data
>* Clicked load, loaded FLASHLED.HEX
>* Clicked program, ok
>* "Failed to program code!" instantly
>* Clicked read, ok again, for kicks.. got 2C24 followed by 8 0000's, then
all 3F8Cs. Near the end, 3FFF x4, 0000, then 3F16 09A5. Data is now all
80's! Config has also changed, from "####" to "2C24"
>* Reset power supplies, clicked read, got 3FFF, load of 0000s, data all 0000s.
>* Ooie, transistor is hot.. I'll try turning it round *shrug*.. nope, now
it all reads as --Blank-- and still fails to program.. turned it back, reads
3FFF then 00s again.
Ok I'm getting the feeling that your using an external 12v supply for mclr
that may work
for programming but if you are note the schematic you are connecting 12v to
the collector
of the transistor through 100 ohms this may be to much current in the
schematic 13v
goes to mclr through a 2.2k then the transistor when turned on pulls it to
ground
through the 100ohm total 2.3k resistance. I used a 2n3904 suface mount
transistor here
and it's running cool. (god it's hard to concentrate with a 2 year old
crying for barny)
If you want to try programming with a 12v supply connect it to mclr through
a 2.2k
If all else fails. Disable read by setting (read & in) in fpp setup to nothing
program the chip see if it flashes the led.
Jim
>* Doesn't work if I connect +12V connectly to MCLR either (with 100ohm
resistor)
>
>I have... no idea.. if anyone is recognising anything click that lil reply
button :) Thanks
>
>-Kieren
>
>--
>http://www.piclist.com#nomail Going offline? Don't AutoReply us!
>email EraseMElistservspam_OUTTakeThisOuTmitvma.mit.edu with SET PICList DIGEST in the body
>
>
>
If anyone wants to build me one (for a price, of course), e-mail me
individually and I can send you details..
I only offer this because I feel there isn't a specific 16F877 programmer
out there and (evidently) I lack the knowledge to build one that works! ;)
Of course, if anyone has ideas regarding my current setup that would still
be helpful!!
> I only offer this because I feel there isn't a specific 16F877 programmer
> out there and (evidently) I lack the knowledge to build one that works! ;)
>
On Sat, Aug 03, 2002 at 10:47:18PM +0100, Kieren Johnstone wrote:
> OK, well this isn't working.
>
> If anyone wants to build me one (for a price, of course), e-mail me
> individually and I can send you details..
> I only offer this because I feel there isn't a specific 16F877 programmer
> out there and (evidently) I lack the knowledge to build one that works! ;)
>
> Of course, if anyone has ideas regarding my current setup that would still
> be helpful!!
>
> Look forward to hearing from you ;)
> -Kieren
Kieren,
I feel your frustration. I just went back over last month's archives and I
realize that you've been working on a programmer for nrealy two weeks without
success. That bites.
In a post on the 24th you said that you'd take a crack at the TLVP. However I
don't see a followup post where you said that you did and it failed.
Here's some advise if you wish to take another crack:
* Try building a low voltage programmer. It reduces the number of voltages to
1. Once you are successful in getting LVP to work you can work on adding
the HVP component. And to answer a couple of questions that you asked a few
threads ago: no you don't need 13V for LVP and it is impossible to clear
the LVP bit from LVP mode.
* You need to realize that the programming algorithms are different when you
use voltages less that 4.5V. Any software that you use will expect the
Vdd to be between 4.5 and 5.5V. Get a 5V regulated supply and use it.
Since you are programming with a PC they abound. You can steal it from
the keyboard, the joystick, the USB port, and if necessary from a disk
connector.
* Keep the parallel cable short, the shorter the better. No more than 2ft
tops.
* Verify the operation of every pin at the socket. Verify that you get both
0V and 5V at the respective pins (13V if you still decide to use HVP)
What I've seen is that you've created too much variability. You're trusting
that everything is going to work with marginal voltages. You've insisted on
HVP programming even though your 16F877 doesn't require it. And instead of
sticking to a single design, you've bounced from plan to plan to plan.
The TLVP was designed for and works on a 16F877. It's designed for 5V operation
and a short parallel cable. It has been verified with both FPP and my version
of picprg2.3d. I'll even give you the variability of retargeting that 74HCT125
by suggesting that you use its buffers instead of the HC573 specified. Be sure
to tie the OE pins low.
If you reduce the number of variables and you test each individual pin on the
programming socket, there is generally a quite high level of success.
Take one more crack at it. If not then I'll solder up a THVP (adding the 13V
Vpp circuit), test it, and mail it to you.
Dude you have everything you need in front of you.
I will try to help you since you built my (version of parpic) programmer.
Just give me some info do you have electronics training at all?
do you live in the USA i.e. radio shack near by?
Did you try what I said?
have you used the FPP build in test? this is a killer proggie it will toggle
rb6,rb7 & mclr so you can check it with a meter and even read the input status.
It will almost debug your circuit for you.
But it does take some effort.
>OK, well this isn't working.
>
>If anyone wants to build me one (for a price, of course), e-mail me
>individually and I can send you details..
>I only offer this because I feel there isn't a specific 16F877 programmer
>out there and (evidently) I lack the knowledge to build one that works! ;)
>
>Of course, if anyone has ideas regarding my current setup that would still
>be helpful!!
>
>Look forward to hearing from you ;)
>-Kieren
>
How soon do you want a programmer? I ask because I've been
meaning to commit my Tait to PCB, and with the PCB-deal I
am going with, I will have one or more extras, which you
can have. Heck, I'll even build and verify the programmer
for you, BUT...it may take a few weeks.
If you don't get something sooner, let me know -- this offer
will be open.
I was having problems programming 876 or 877 using PROPIC2 and PICPROG
programming software. After two days of swearing I built myself NOPPP
programmer - 1 transistor, 2 diodes, 8 resistors, 7805 and 7808 regulator.
It takes maybe one hour to build on a breadboard and it works nice. NOPPP3
software now also supports 876 and 877 chips. It has a nice test feature,
where you can check voltages on some parts of circuit. The only drawback
(for me) is, that it's a DOS software.
Thanks for your support (everyone!) :)
"Right, I'm gonna build TLVP!".. got both IC's datasheets, hooked it all up,
got to last connection, doh 74HCT125 only has 4 buffers :) Gonna make
another order today/tomorrow to get that IC, probably some stripboard to put
the *working* programmer on aand probably a toy for me (7-segment digit or
similar). Hmm, maybe even a ZIF socket too!
I must admit I believe most of my problems so far have come from the lack of
a power supply capable of delivering 5V or ~13V "solidly". All I have are
4xRechargable AA (@4.8V) and a 12V "adjustable" power supply. People keep
mentioning "bench supply" but of the 2/3 I've seen they were very expensive!
(any UK people suggest where they got theirs?)
Ah... but your find it's all worth while when everything starts to work.
The the fun really begins.
Most hobbyists build their own bench PSU's I suppose - I've never bought one yet.
Normally, there fairly simple to throw together for a basic unit.
I built my first one after I'd been doing electronics for only a couple of weeks. Still use it as it happens.
If you check out the UK electronics mags back issues, Everyday Practical Electronics, Elector etc, you will find they have loads of different types to build.
Simple ones only need a transformer, rectifier, voltage regulator and a couple of capacitors to make a very reasonably fixed voltage PSU.
I use the Wisp628, it can be purchased as a kit from Wouter van Ooijen at http://www.voti.nland works perfectly. Also recently started using the
bootloader from Shane Tolmie at http://www.workingtex.com/htpic/ which is
excellent, but you still need your programmer in the first place.
Ian
-------------------------------------------------------- http://mdm1.bravepages.com
Technical support for the Multifunction Display Module
--------------------------------------------------------
> I feel your frustration. I just went back over last month's archives and I
> realize that you've been working on a programmer for nrealy two weeks
without
> success. That bites.
I don't know how much he values his time, but a PicStart+ looks like a
bargain compared to 2 weeks.
*****************************************************************
Embed Inc, embedded system specialists in Littleton Massachusetts
(978) 742-9014, http://www.embedinc.com
On Sun, Aug 04, 2002 at 08:14:42AM -0400, Olin Lathrop wrote:
> > I feel your frustration. I just went back over last month's archives and I
> > realize that you've been working on a programmer for nrealy two weeks
> without
> > success. That bites.
>
> I don't know how much he values his time, but a PicStart+ looks like a
> bargain compared to 2 weeks.
I do have to agree with you here Olin. I specifically designed the TLVP so
that the programmer would take a limited amount of time and money to put
together. An afternoon tops for getting the parts, assembling and testing
the programmer, and programming your first chip. It's trivial on purpose.
But you still need to realize that there are hobbyist and students whose time
is infinitely less valuable than money (which they usually don't have).
For them it probably is still worth the effort to roll their own.
http://www.voti.nl/wisp628
Assuming you are outside the EC it will cost you $ 24.59 (using PayPal,
includes ww s/h)
Specifically supports 16f877 (and most other flash PICs)
> must admit I believe most of my problems so far have come from the
> lack of a power supply capable of delivering 5V or ~13V "solidly".
> All I have are 4xRechargable AA (@4.8V) and a 12V "adjustable" power
> supply. People keep mentioning "bench supply" but of the 2/3 I've
> seen they were very expensive! (any UK people suggest where they got
> theirs?)
This is an excellent PSU for begginers, simple and C H E A P to
construct. This PSU can go from 1.2 to more than 30V in its output.
you can just eliminate the Voltimeter and Amperimeter if you don't
(or can't) spend this amount of money. It will give you something
more than 1Ampere, but If you change the LM317T for a LM317K (the TO-
3 version, looks like a 2N3055) you can have 5 Amperes. Of course,
according with the power of the transformer you put on the input of
this circuit.
On Sun, Aug 04, 2002 at 09:41:20AM +0100, Kieren Johnstone wrote:
> Thanks for your support (everyone!) :)
You are quite welcome.
> "Right, I'm gonna build TLVP!".. got both IC's datasheets, hooked it all up,
> got to last connection, doh 74HCT125 only has 4 buffers :) Gonna make
> another order today/tomorrow to get that IC, probably some stripboard to put
> the *working* programmer on aand probably a toy for me (7-segment digit or
> similar).
You can get away with only 4 buffers as the return connection of RB7/DATA
back to pin 10 of the parallel port doesn't have to be buffered. Here's why:
1) The buffers are for level conversion from TTL to CMOS. The reverse
connection is CMOS to TTL which is compatible.
2) The PIC is driving that line at full power (25ma).
> Hmm, maybe even a ZIF socket too!
After you get it working.
> I must admit I believe most of my problems so far have come from the lack of
> a power supply capable of delivering 5V or ~13V "solidly". All I have are
> 4xRechargable AA (@4.8V) and a 12V "adjustable" power supply. People keep
> mentioning "bench supply" but of the 2/3 I've seen they were very expensive!
> (any UK people suggest where they got theirs?)
You have a PC. It has a 20 AMP 5V regulated supply, more than you'll ever
need. See below as to how you can get power out of your PC.
>
> All this for a coupla little chips :o
Go and test with a direct unbuffered connection between RB7 and pin 10 of
the parallel port. Make sure you use a 5V power connection from the PC. Also
be sure that you connect all the grounds. ;-)
On Sun, Aug 04, 2002 at 03:53:55PM -0400, Byron A Jeff wrote:
> On Sun, Aug 04, 2002 at 09:41:20AM +0100, Kieren Johnstone wrote:
> > Thanks for your support (everyone!) :)
>
> You are quite welcome.
>
> > "Right, I'm gonna build TLVP!".. got both IC's datasheets, hooked it all up,
> > got to last connection, doh 74HCT125 only has 4 buffers :) Gonna make
> > another order today/tomorrow to get that IC, probably some stripboard to put
> > the *working* programmer on aand probably a toy for me (7-segment digit or
> > similar).
>
> You can get away with only 4 buffers as the return connection of RB7/DATA
> back to pin 10 of the parallel port doesn't have to be buffered. Here's why:
>
> 1) The buffers are for level conversion from TTL to CMOS. The reverse
> connection is CMOS to TTL which is compatible.
>
> 2) The PIC is driving that line at full power (25ma).
And that's what I get when I send before I think. That connection must be
tested. Often the ACK pin on a parallel port (pin 10) will have a pullup
resistor attached to it. So you can get into a situation where the output
buffer from RB7/data won't have enough current to drive the pin low. So you
must carefully measure the low voltage after the resistor and make sure that
it's less than 0.5V. If not then lower the resistance until it is below 0.5V.
Do not go below 300 ohms. If at 300 ohm the voltage when low is still above
0.5V then wait until your buffers show up.
I don't want to confuse things but I had major problems getting my first
programmer to work. In the end I built the NOPPP programmer. I've been
powering it from a 12v gell cell battery ever since and it's worked fine
(except when I had a bad connection on the 16F877 socket).
I don't want to seem harsh but are we really suggesting that Kieren builds
his own mains powered PSU? It wasn't so long ago that I was regularly
soldering components in backwards [infact that's why the NOPPP programmer
didn't work first time :)] but logic suggested I stayed away from mains
electricity.....
> I don't want to seem harsh but are we really suggesting that Kieren
> builds his own mains powered PSU? It wasn't so long ago that I was
> regularly soldering components in backwards [infact that's why the
> NOPPP programmer didn't work first time :)] but logic suggested I
> stayed away from mains electricity.....
Every begginer has a beginning, even a shocking one ;o)
On Mon, Aug 05, 2002 at 09:10:33AM +1000, Tony Nixon wrote:
> Kieren Johnstone wrote:
>
> > * Turned on +12V, +5V (actually more like 3.6V - 3xAA rechargable), but programming datasheet says this is fine)
>
> Not sure I understand this. I thought the data sheet said 5V VDD should
> be used for programming mode.
Kieren has been reading the programming specification. It is possible to
program the 16F87X parts all the way down to 2.2V. However there is no
mechanism to do a bulk erase.
The problem is that the specification changes. And that's where he got bit.
FPP, picprg2.3d, and other 16F877 software programmers use the 5V algorithm,
and the first thing they do is bulk erase the part. But that's not a legal
operation on the 2.2V algorithm.
On Mon, Aug 05, 2002 at 01:14:08AM +0100, Benjamin Bromilow wrote:
> Dear all,
>
> I don't want to seem harsh but are we really suggesting that Kieren builds
> his own mains powered PSU?
I wasn't. It's clear he has a PC which has a 5V power supply that works
perfectly well.
> It wasn't so long ago that I was regularly
> soldering components in backwards [infact that's why the NOPPP programmer
> didn't work first time :)] but logic suggested I stayed away from mains
> electricity.....
Actually any 7-12V DC wall wart would be a good starting place. ;-)
Byron A Jeff wrote:
>
> On Mon, Aug 05, 2002 at 09:10:33AM +1000, Tony Nixon wrote:
> > Kieren Johnstone wrote:
> >
> > > * Turned on +12V, +5V (actually more like 3.6V - 3xAA rechargable), but programming datasheet says this is fine)
> >
> > Not sure I understand this. I thought the data sheet said 5V VDD should
> > be used for programming mode.
>
> Kieren has been reading the programming specification. It is possible to
> program the 16F87X parts all the way down to 2.2V. However there is no
> mechanism to do a bulk erase.
In the latest data sheet (DS30925b) the way I read it, any word
operations in ROM or EEPROM VDD = 2-5.5V, but bulk erase and write
operations for ROM and EEPROM = 4.5-5.5V
> >
> > Every begginer has a beginning, even a shocking one ;o)
> If the beginning event and the end of the beginner himself occur
> within milliseconds of each other, can that really be called a
> 'beginning'? :-)
It is a short beginning, but a beginning anyway ;o)
> > * Turned on +12V, +5V (actually more like 3.6V - 3xAA
> rechargable), but programming datasheet says this is fine)
>
> Not sure I understand this. I thought the data sheet said 5V
> VDD should be used for programming mode.
AFAIK the whole oparting Vpp regange is OK for programmaning, *except*
for bulk erase (which is the only way to get rid of code protectyion, so
a programmer can't do without it). So unless you are sure your chips
will not be code protected better stick to the narrower Vdd range (I
think 4.5 .. 5.5 Volt).
After considering all the options, I think I might just get this!
My only query is, I'm on Windows XP... will the software work? I got FPP to
work, by downloading the "giveio" driver.. but FPP is a windows application
which uses API calls to activate the driver. AFAIK DOS programs (wisp.exe)
can't do that! There's a comment says "will work on NT-based systems with
correct driver".. What driver would work?
> How about a kit?
>
> http://www.voti.nl/wisp628
> Assuming you are outside the EC it will cost you $ 24.59 (using PayPal,
> includes ww s/h)
> Specifically supports 16f877 (and most other flash PICs)
>
> Wouter van Ooijen
>
> -- ------------------------------------
> http://www.voti.nl
> PICmicro chips, programmers, consulting
>
>
> can't do that! There's a comment says "will work on NT-based
> systems with
> correct driver".. What driver would work?
I am working on a win2k system right now and to my surprise wisp.exe
works without using any special drivers, but it is terribly slow (think
2 minutes to program 1 K code). I am working on a portable (windows +
linux) version of the host software, should be ready in a few days.
Cool :) If you want any assistance, I'm a coder!
Also got this info. from Mr. Tait himself!.. (see end of message)
-Kieren
---
"I just use inp/outp functions as you have described. However,
"giveio.sys" must be invoked before any I/O can be performed. There's
an example of what needs to be done in the zip file containing
"giveio.sys". Here's the fragment of code I use in FPP:
static int giveio(void)
{
#ifdef __WIN32__
HANDLE h = CreateFile("\\\\.\\giveio", GENERIC_READ, 0, NULL,
OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL,
NULL);
>But you still need to realize that there are hobbyist and
>students whose time is infinitely less valuable than money
>(which they usually don't have).
>For them it probably is still worth the effort to roll their own.
The biggest problem I suspect with this particular saga which has been
running is the limited knowledge and (I suspect) tools with which to verify
the operation of the programmer.
It seems to me that a DVM and/or oscilloscope to verify the operation would
have had this operating in almost zero time. However there has been no
mention of voltages being checked at any stage, that I can see.
Without even a basic multimeter, then the likelihood of anything getting
going, once a problem occurs, becomes very slim, unless it is something like
a "duh" moment, from which recovery is possible, without damage to the
components.
-- http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads
>The problem is that the specification changes. And that's where he got bit.
>FPP, picprg2.3d, and other 16F877 software programmers use the 5V
algorithm,
>and the first thing they do is bulk erase the part. But that's not a legal
>operation on the 2.2V algorithm.
I wonder if this is what is getting the other gentleman who is trying to
bulk erase a protected F877 part, and then claiming Microchip is not telling
the truth ????
-- http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads
>> >
>> > Every begginer has a beginning, even a shocking one ;o)
>> If the beginning event and the end of the beginner himself occur
>> within milliseconds of each other, can that really be called a
>> 'beginning'? :-)
>
> It is a short beginning, but a beginning anyway ;o)
A sparking beginning.
Peter
-- http://www.piclist.com hint: PICList Posts must start with ONE topic:
[PIC]:,[SX]:,[AVR]: ->uP ONLY! [EE]:,[OT]: ->Other [BUY]:,[AD]: ->Ads
> Most hobbyists build their own bench PSU's I suppose - I've never bought
one yet.
> Normally, there fairly simple to throw together for a basic unit.
> I built my first one after I'd been doing electronics for only a couple of
weeks. Still use it as it happens.
Yep, I built my own too. The "BCIT standard Powersupply" If I can remember
where they are, I'll dig out the Gerbers and schematics for that old beast.
If I can't, it's a pretty simple circuit to whip together. It's the
mounting that's the most annoying part.
So, if I remember to do so, when I get my PC back up (had a LAN party on the
weekend, and haven't had time to get anything reconnected on my development
box, which also happens to be my gaming box) I'll do what I can for ya.