Can someone explain this to me?
I use this command: avrdude -p m8 -U lock:w:0xcf:m
and after "writing" and "reading", I get the following verification error:
avrdude: verifying ... avrdude: verification error, first mismatch at byte 0x0000 0xcf != 0x0f avrdude: verification error; content mismatch
and, in fact, it appears that even though I tried to set it to 0xcf, it really set it to 0x0f
$ avrdude -p m8 -U lock:r:lock.txt:h $ cat lock.txt 0xf
I'm using an stk500v2, atmega8 (I've tried several of them), and the same thing happens with any value I write for the lock bits (ie: the value changes). If I use avrdude to erase the chip, I'd expect the lock bits to be 0xff and again, it's 0x3f instead. The same thing happens with the Arduino bootloader script, which uses uisp instead of avrdude.
Am I missing something silly here??
Thanks for any help,