I am used to using an AVR ISP programmer to update the firmware on my project. My project is open hardware, and I'd like to offer pre-programmed controllers for sale to save others having to buy a programmer (if they're that stingy).
To make life easier on me, I am going to build a little board with an ISP programming header wired up to a ZIF socket so that I can do this all assembly-line like.
The fuses are going to be set during programming as they would for an Arduino Uno - so they'll be set for a 16 MHz external crystal oscillator.
While programming is taking place, must the crystal be present?
Again, I don't need to actually have the controller run - all of the I/O pins are going to be NC (apart from the ISP ones).
Is it enough to have a 10K resistor between reset and Vcc, a single decoupling cap and nothing else other than the ISP lines wired up?
Answer
Best thing to do would be to design your programming board to include a 10k ohm pullup on Reset and a 100nF capacitor near the VCC pin of the chip (whether or not you populate them, but you might as well for a manufacturing jig). Some ISP programmers require the chip to be powered separately as well. You do not need any crystal circuitry in place for programming a blank off the line AVR (as they come running off the internal oscillator), but if trying to reprogram a chip that is fused for an external crystal, you will need a comparable crystal and load capacitors in circuit (unless you use a high voltage programming mode).
No comments:
Post a Comment