Например TDA7294

Форум РадиоКот :: Просмотр темы - ATmega 128 ошибка контрольной суммы
Форум РадиоКот
https://radiokot.ru/forum/

ATmega 128 ошибка контрольной суммы
https://radiokot.ru/forum/viewtopic.php?f=20&t=48574
Страница 1 из 1

Автор:  st0974 [ Сб май 21, 2011 19:43:41 ]
Заголовок сообщения:  ATmega 128 ошибка контрольной суммы

Имеется собственно проблемка, не могу зашить 128 мегу. Начинаю прошивать, выскакивает ошибка контрольной суммы.
Код:
avrdude.exe: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude.exe: Device signature = 0x1e9702
avrdude.exe: NOTE: FLASH memory has been specified, an erase cycle will be performed
             To disable this feature, specify the -D option.
avrdude.exe: erasing chip
avrdude.exe: reading input file "D:\Proshivki\mega128.HEX"
avrdude.exe: input file D:\Proshivki\mega128.HEX auto detected as Intel Hex
avrdude.exe: ERROR: checksum mismatch at line 4098 of "D:\Proshivki\mega128.HEX"
avrdude.exe: checksum=0xfe, computed checksum=0xe0
avrdude.exe: write to file 'D:\Proshivki\mega128.HEX' failed

avrdude.exe: safemode: Fuses OK

avrdude.exe done.  Thank you.



Компилятор BascomAVR 1.11.9.2 Сохраняю HEX файл как положено, для ATmega 128. Шить отказывается. Сохраняю как для ATmega64, и все отлично прошивает, но из за неверного указания контроллера неверно работает переферия, т.е. отказываются работать порты G и A. Пробовал компилить в баскоме 1.11.9.0 тот же вариант. Прошивать пытался с 2-х программаторов.

P.S.
Режим совместимости со 103-ей отключен
Вотчдог отключен.
JTAG отключен.

В чем может быть проблема??

Автор:  ARV [ Сб май 21, 2011 21:44:20 ]
Заголовок сообщения:  Re: ATmega 128 ошибка контрольной суммы

возможно, в дудке есть баг... выскажу такое предположение: обычно Intel-HEX используется в "обычном" формате, т.е. с сегментами памяти не более 64К, а у меги128 памяти больше, и BASCOM генерирует HEX-файл в "расширенной" нотации, т.е. в нем присутствуют записи для сегментов с адресами больше 64К. видимо, avrdude не распознает эту запись и пытается считать для нее контрольную сумму, как для обычной записи... естественно, выходит ерунда...

можете показать ту строку (и по 2 строки до и после нее) вашего HEX-а, на которую ругается программатор? можно попробовать разобраться с адресацией...


в качестве лекарства могу посоветовать получить не HEX, а BIN-прошивку и скормить ее дудке... для такой конвертации в сети можно найти утилитку hex2bin.exe от Intel...

Автор:  st0974 [ Вс май 22, 2011 07:11:49 ]
Заголовок сообщения:  Re: ATmega 128 ошибка контрольной суммы

Т.к. прошива не большая, то все ячейки той строки настроены по умолчанию.



Проблему решил, скормив BIN вместо HEX'а

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/