As Hannes Weisbach wrote:

> I guess when you read the flash back, avrdude reads back all 8k, but
> your hex file does not contain 8k of code.

Correct.  Avrdude strips all trailing bytes that are 0xff
(unprogrammed) when reading flash memory.  (When reading EEPROM, they
are kept.)

> My second guess would be that the difference from 8k binary data in
> the flash to the file size of 19204 bytes is caused by the Intel hex
> file format.

That would be a normal overhead: it must be more than twice the binary
size, as each byte is encoded in two characters, and there are
additional characters for the address, the record type, and the
checksum.

It makes most sense to read the memory contents back into a raw binary
file (-U fl:r:foo.bin:r), and convert the original load file also into
binary (avr-objcopy -O binary).  The compare both binary files, e. g
using cmp -l.
-- 
cheers, J"org               .-.-.   --... ...--   -.. .  DL8DTL

http://www.sax.de/~joerg/                        NIC: JW11-RIPE
Never trust an operating system you don't have sources for. ;-)

_______________________________________________
avrdude-dev mailing list
avrdude-dev@nongnu.org
https://lists.nongnu.org/mailman/listinfo/avrdude-dev

Reply via email to