Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Не прошивается atmega128
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > MCS51, AVR, PIC, STM8, 8bit
uuu2
Контроллер atmega128. Программатов usb910. При попытке прошить микросхему:

avrdude -c avr910 -p m128 -P com3 -b 9600 -u -U flash:w:first.hex

выдаётся сообщение:

avrdude: error: programmer did not respond to command: enter prog mode.

В чём тут дело и как в этот "prog mode" войти?



И ещё вопрос. При запуске avrdude приходится указывать параметры. Но ведь я уже указал те же самые параметры в makefile! Как заставить avrdude считать параметры оттуда?
VladimirYU
Цитата(uuu2 @ Apr 25 2009, 10:39) *
Контроллер atmega128. Программатов usb910. При попытке прошить микросхему:

avrdude -c avr910 -p m128 -P com3 -b 9600 -u -U flash:w:first.hex

выдаётся сообщение:

avrdude: error: programmer did not respond to command: enter prog mode.

В чём тут дело и как в этот "prog mode" войти?



И ещё вопрос. При запуске avrdude приходится указывать параметры. Но ведь я уже указал те же самые параметры в makefile! Как заставить avrdude считать параметры оттуда?


Ждите, Petka Вам в помощь. Могу предположить, что у Вас Reset от программатора не доходит до ноги контроллера, поэтому он и не попадает в режим программирования и не отвечает на команду чтения сигнатуры.
Petka
Цитата(uuu2 @ Apr 25 2009, 10:39) *
Контроллер atmega128. Программатов usb910. При попытке прошить микросхему:

avrdude -c avr910 -p m128 -P com3 -b 9600 -u -U flash:w:first.hex

выдаётся сообщение:

avrdude: error: programmer did not respond to command: enter prog mode.

В чём тут дело и как в этот "prog mode" войти?



И ещё вопрос. При запуске avrdude приходится указывать параметры. Но ведь я уже указал те же самые параметры в makefile! Как заставить avrdude считать параметры оттуда?

1) к каким ногам меги128 подключены MISO, MOSI программатора?
2) если параметры указывали в мэйфайле, то скорее всего программировать надо так: "make program"
VladimirYU
Цитата(Petka @ Apr 25 2009, 12:51) *
1) к каким ногам меги128 подключены MISO, MOSI программатора?
2) если параметры указывали в мэйфайле, то скорее всего программировать надо так: "make program"

Поясню, часто делают ошибку, подключая MISO и MOSI прграмматора ногам MISO и MOSI SPI контроллера, а у меги 128 их нужно подключать к TxD и RxD.
uuu2
Цитата(VladimirYU @ Apr 25 2009, 11:07) *
Могу предположить, что у Вас Reset от программатора не доходит до ноги контроллера

RESET подключён так же, как показано на схеме (через подтягивающий резистор). Схема нарыта в официальной атмеловской документации (правда на другой контроллер, не atmega128) т.е., по идее, должна быть правильной.

Нажмите для просмотра прикрепленного файла

С другой стороны, я не совсем понимаю, как работает этот подтягивающий резистор. Если программатор не подключен к порту, то тут всё очевидно - на входе !RESET будет высокий уровень от VCC (т.к. сопротивление микроконтроллера много больше сопротивления резистора). Но если программатор подключен, то там тоже будет высокий уровень напряжения! А должен быть низкий - для ввода МК в режим программирования.

Цитата(VladimirYU @ Apr 25 2009, 13:20) *
Поясню, часто делают ошибку, подключая MISO и MOSI прграмматора ногам MISO и MOSI SPI контроллера, а у меги 128 их нужно подключать к TxD и RxD.

Эээ... А почему это не описано в документации? Или описано, но я не нашёл? И зачем тогда нужны ноги MISO и MOSI, если к ним программатор подключать нельзя?

И ещё: как программировать atmega48? Тоже через TxD/RxD? Или всё-таки через MISO/MOSI?


Вот схема, переделанная под atmega48 (пока решил потренироваться на более простом МК).
Формат - Sprint Layout 5.0

Нажмите для просмотра прикрепленного файла

LED 1,2 и RES 1,2 (220 Ом) - для тестирования миганием светодиодами.
btn PD5 - кнопка
С3 - конденсатор для сглаживания питания
R3 - подтягивающий резистор

Справа - место пайки штыревого вывода (для программатора)
Внизу - выводы для подключения дисплея (пока не используются)

Вроде бы всё правильно (?).
mikesm
Цитата(uuu2 @ Apr 26 2009, 20:50) *
Эээ... А почему это не описано в документации? Или описано, но я не нашёл? И зачем тогда нужны ноги MISO и MOSI, если к ним программатор подключать нельзя?
И ещё: как программировать atmega48? Тоже через TxD/RxD? Или всё-таки через MISO/MOSI?


ATMega48 программируется как положено через MISO/MOSI/SCK, а ATMega128 через PDI/PDO,
все это описано в их даташитах, Serial Programming для ATMega48 и Serial Doownloading для ATMega128
Сергей Борщ
Цитата(uuu2 @ Apr 26 2009, 19:50) *
И зачем тогда нужны ноги MISO и MOSI, если к ним программатор подключать нельзя?
biggrin.gif Шикарный вопрос. У контроллера есть еще куча ног, к которым нельзя подключать программатор. Зачем они нужны? laughing.gif
SysRq
Цитата(Сергей Борщ @ Apr 26 2009, 22:57) *
Зачем они нужны?
Для устойчивости на плате rolleyes.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.