Look at the grounds. Make sure they are very nice, short, and fat traces (or wires). The traces (or wires) from the crystal to the PIC should be as short as possible. The capacitors on the crystal should also be as close as possible to the PIC, with direct connection to GND. Pay good attention to the MCLR connection (follow the datasheet, they did not went through all that trouble for no reason).
This is what I tried to explain before. The 877A has external MCLR and external oscillator (the 887 has the capability to run both of them internally - not good comparison).
How do you explain that when using the power from the programmer, everything is OK ?
Just for giggles.
If you do not have a scope or frequency meter. Use you DVM set for AC and se what the the voltage is from the programmer vs the out put of the 7805.
If you can measure frequency the take that measurement.
Dave
Always wear safety glasses while programming.
Its amazing,
When I use the test board (http://dj-gil.com/PIC/posts/math.jpg) everything is ok.
When I put in the wireWrap board (http://dj-gil.com/PIC/posts/WW1.jpg)
(http://dj-gil.com/PIC/posts/WW2.jpg) its not working.
Just because it works on the 'test board' and it doesn't work on the 'wirewrap board', doesn't mean you schematic/parts are correct for that particular application.
I don't see any capacitors across Vdd/Vss on the 'test board', but that doesn't mean there aren't any there (i.e. stray capacitance).
I see a single resistor leading over to MCLR, but no capacitor, again, doesn't mean there isn't any capacitance on MCLR (albiet stray caps). And it also doesn't specifically mean that you have to have a capacitor across MCLR to ground, but it sure doesn't hurt.
It also doesn't mean that your wiring, no matter how many times you've checked it, is correct and without fault.
It also doesn't mean that the program you wrote for your '877 is actually going to run on your '887, or the other way around, without any changes in the source at all. the 16F877A is an old chip, the 16F887 is a new chip. A lot of differences between the 2.
Maybe your programmer's power supply is a lot smoother than the other power supply you're using.
Maybe your other power supply can't handle the extra load and dumps causing a reset, maybe it doesn't come up fast enough to satisfy the PIC, maybe it comes up too fast.
1650 different reasons why stuff don't work. I think we've isolated like 3 possibilities...
Bookmarks