Here are my experiences
with PICS. Please note these are personal experiences, your milage may
vary......
Method number 1: PIC programming kit from Magenta
Electronics. Built as per plan, software as provided. Result. Nothing.
I even tried to iron out a few problems....
My assessment 1/10- it looks pretty sitting on top of my computer and I
eventually used the LED test circuit bit to test the NOPPP programmed PIC.
Method number 2: The NOPPP
(NO Parts Pic Programmer) by Michael Covington. Uses a few, easily found
components and has a software port for Linux. Additionally, there is a
software
version (for Linux) which allows you to program 16f877s (with A/D converters).
Nice!
NEWS! I've taken the modified Linux code and ported it to DJGPP under Windows (which includes GCC). After
suitable modifications it appears to work just fine. I've written, read, erased and verified 16F84s which
appear to work so I see no reason why the other chips supported shouldn't work.
The modified source code and executable are available. Next stage is to add 16F826 support.
Points of interest:
-
The original NOPPP used 1N914 diodes but an upgraded version
exists which uses 1N34s for compatibility with non-standard parallel ports.
Maplins don't stock 1N34s so I stuck with 1N914s and crossed my fingers.
I could have always got some 1N34s from RS
components or Digikey but they
don't have one of their shops on the way home from work!
-
I used half a 25-way male-female cable as I really hate soldering
bucket terminal connectors. In the end, this was a bad choice because the
IDC cable was very difficult to strip properly even with my nice new "automatic"wire
strippers. In future, I would use a PCB mounted connector or just stick
with the bucket terminals.
-
When I hooked up the battery and checked a few voltages with
the voltage check option on the software all was not well. I was getting
about 11.4v out of the voltage regulator and then when I sorted that out
(wired it up wrong), I found I was getting 8v instead of 12v from the transistor
emitter on one of the voltage tests. In the end I found the answer on the
NOPPP web-site but I should have been able to sort it myself- the transistor
was back to front! Doh. When I corrected that all was well.
-
When everything appears to be working, program the chip and
verify it. Verification just checks that the program has actually been
put onto the chip. If that's okay, then you know the programmer is working.
Now you just have to sort out the test program and test circuit.
-
When using a test program (for example, David Tait's Walk.asm
or NOPPPs demof84.asm) make sure it is compliled with the correct settings.
The first program I tried was DT's WALK.asm,which is supposed to make 4
LEDs run back and forth in a "Knightrider" fashion. Unfortunately, it didn't
work properly because it was compiled for a crystal (XT) circuit when my
test circuit (from the Magenta programmer) used a RC oscillator. Usually
the configuration is set using the __CONFIG directive at the beginning
of the program. If it has been used, change the 3FF5 value into 3FF7. This
will give the settings as Code Protect Off, Watchdog Timer On, Power-up
Timer On (I think) and RC oscillator. If you're not sure where the 3FF7
value comes from, then look at the 16F84 data sheet (section 8.2, page
39 of the current version- available from the Microchip
website).
My assesment 8/10. Had I not been such a plonker with my
reversed transitors etc and that silly IDC cable this would have been a
very quick build. It works fine (even under a DOS window in Win98 with
a CD/MID playing in the background). It was certainly enough for my test
project and my first proper project......
NEW! The NOPPP programmer has been used under Linux!
After a bit of work I got it to work with the 16F877s. I had a loose connection
on the VDD of the 40-pin socket and I'd accidentally set the copy protect
bit during programming. This meant I was able to program the chip (if I
erased it first) but I couldn't verify it and when I read it all I got
was '0000'- makes sense looking back.... Not that is sorted I'm well away!!
NEW! Details of my new PIC project,
still heavily in R+D
NEW! My project after that is top secret but some datasheets can be found
here
Questions? E-mail me here