Страница 1 из 1

не могу прошить atmega8

Добавлено: Чт ноя 08, 2012 21:04:53
super electrik
не могу прошить контроллер через usbasp пишет такую ошибку:

Код: Выделить всё

# avrdude -c usbasp -pm8 -P /dev/ttyUSB0 -U flash:w:/AVR/main.hex

avrdude: AVR device initialized and ready to accept instructions

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

avrdude: Device signature = 0x008100
avrdude: Expected signature for ATMEGA8 is 1E 93 07
avrdude: safemode: Verify error - unable to read hfuse properly. Programmer may not be reliable.
avrdude: safemode: To protect your AVR the programming will be aborted

avrdude done.  Thank you.
я новичек в этом деле, так что сильно не ругайте. с ключом -F то же самое только вместо hfuse - lfuse
гуглил мало чего нашел

Re: не могу прошить atmega8

Добавлено: Пт ноя 09, 2012 09:44:14
Полиграф Полиграфыч
Если Atmega8 новая и по умолчанию работает от встроенного rc-генератора, то возможно программатор обращается к ней на очень большой частоте и она не может.

Re: не могу прошить atmega8

Добавлено: Пт ноя 09, 2012 11:06:26
super electrik
Полиграф Полиграфыч писал(а):Если Atmega8 новая и по умолчанию работает от встроенного rc-генератора, то возможно программатор обращается к ней на очень большой частоте и она не может.
а вот по этой ошибке можно понять что я все правильно подключил?
и как снизить частоту программатора?

Re: не могу прошить atmega8

Добавлено: Пт ноя 09, 2012 11:27:21
Engineer_Keen
Раз сигнатура прочиталась не как 0x000000 или 0xffffff, то варианта 3:
1) все подключено верно, но скорость действительно большая и контроллер не успевает за тактовым сигналом программатора.
2) подключено не верно (или ресет отключен), в контроллере зашита программа, которая дергает ногу MISO, тем самым выдавая в качестве сигнатуры какое-то случайное число (если мк новый этот вариант отпадает)
3) MISO не контачит, висит в воздухе и ловит наводки (маловероятно, элементарно проверяется попыткой еще раз прочитать сигнатуру и сравнить)
Это что касается программирования AVR в общем. Ну а как снизить частоту это надо в хелпе к avrdude искать...

Re: не могу прошить atmega8

Добавлено: Пт ноя 09, 2012 11:42:16
super electrik
я ее прошил, да? или нет просто в конце какието ероры нарисовались(

# avrdude -c usbasp -p atmega8 -F -U flash:w:/AVR/main.hex

avrdude: AVR device initialized and ready to accept instructions

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

avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
avrdude: Expected signature for ATMEGA8 is 1E 93 07
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "/AVR/main.hex"
avrdude: input file /AVR/main.hex auto detected as Intel Hex
avrdude: writing flash (4700 bytes):

Writing | ################################################## | 100% 22.50s



avrdude: 4700 bytes of flash written
avrdude: verifying flash memory against /AVR/main.hex:
avrdude: load data flash data from input file /AVR/main.hex:
avrdude: input file /AVR/main.hex auto detected as Intel Hex
avrdude: input file /AVR/main.hex contains 4700 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 20.35s



avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
0x3b != 0x00
avrdude: verification error; content mismatch

avrdude: safemode: Fuses OK

avrdude done. Thank you.

Re: не могу прошить atmega8

Добавлено: Пт ноя 09, 2012 12:04:27
Engineer_Keen
Ну начиная со строчки

Код: Выделить всё

avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
уже понятно что процесс пошел неправильно... А уж то что в конце произошла ошибка верификации однозначно показывает что ничего не прошилось.
Только почему на этот раз сигнатура стала нулевая непонятно.

Re: не могу прошить atmega8

Добавлено: Пт ноя 09, 2012 12:12:26
super electrik
а сигнатура для контроллера должна быть постояной? Или может меняться?

Re: не могу прошить atmega8

Добавлено: Пт ноя 09, 2012 13:08:01
Engineer_Keen
Сигнатура всегда постоянная, по ней определяется какой именно контроллер подключен.

Re: не могу прошить atmega8

Добавлено: Ср ноя 14, 2012 01:05:26
nibiluk
Насколько я знаю у usbasp есть джампер понижения частоты, так вот его надо снять так как новая мега8 с ним не шьется, проверено. Когда снимется фуз ckdiv8 будет и с джампером прошиватся.

Re: не могу прошить atmega8

Добавлено: Чт мар 07, 2013 16:40:47
gehrmann
Попробуйте ещё очищать микроконтроллер перед заливкой прошивки.

У меня была похожая проблема с несколькими ATMega8A и я её решил таким образом.