> Before you give up, though, your idea of having other people read back > to you the fuse settings that work for them is a good one. > > Using AVaRICE, my fuses (with 15.36 MHz crystal) read thus: > > Reading Fuse Bytes: > Extended Fuse byte -> 0xff > High Fuse byte -> 0x1b > Low Fuse byte -> 0xff
Ah, this means CKOPT = 0, SUT=11, and CKSEL3:0 = 1111, which wa sthe first thing I tried, and which doesn't work. Well, at least I know that these are the correct settings and that the problem must therefore be somewhere else. > Now I have to use AVRdude for the first time ever ... OK, I've got the > device signature, now how do I read the fuses? ... google ... avrdude > -c > STK500 -p m16 -U hfuse:r:high.txt -U lfuse:r:low.txt ... invalid > output file > format: -1. Try WinAVR TkInfo. Ah, here's an explanation of the > format ... > use i for intel hex ... fortunately I can read intel hex files and, > yes, the > high byte is 1B and the low byte is FF. Oh, that was very complicated indeed, in my previous mail I suggested the use of the "terminal" mode which takes 2 seconds and is very simple :o) > re hfuse > re lfuse Thanks for going through all this trouble though... > > So, that's what works for me. If you inject the clock you use to > recover your chip when the oscillator isn't running, can you read back > your fuses? Oh yes, using the "rescue" external clock signal (simply my bench function generator), the AVR runs my program just fine and I can use avrdude as normal, to read/write the fuse or anything. > What are they set to? High fuse byte: 0xD1 Low fuse byte: 0xFF Today I realise that D1 meant CKOPT unprogrammed, oops. Set it to 0 (0xC1), hoping for the best, but no, oscillator still won't start... I would try with a lower and/or different crystal, but could find one anywhere in my drawers. Will visit a friend or two to see what they have lying around... -- Vince _______________________________________________ AVR-chat mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/avr-chat
