Перейти к содержанию
    

Не прошивается atmega128

Контроллер 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 считать параметры оттуда?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Контроллер 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 от программатора не доходит до ноги контроллера, поэтому он и не попадает в режим программирования и не отвечает на команду чтения сигнатуры.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Контроллер 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"

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1) к каким ногам меги128 подключены MISO, MOSI программатора?

2) если параметры указывали в мэйфайле, то скорее всего программировать надо так: "make program"

Поясню, часто делают ошибку, подключая MISO и MOSI прграмматора ногам MISO и MOSI SPI контроллера, а у меги 128 их нужно подключать к TxD и RxD.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Могу предположить, что у Вас Reset от программатора не доходит до ноги контроллера

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

 

post-48156-1240761232_thumb.png

 

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

 

Поясню, часто делают ошибку, подключая MISO и MOSI прграмматора ногам MISO и MOSI SPI контроллера, а у меги 128 их нужно подключать к TxD и RxD.

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

 

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

 

 

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

Формат - Sprint Layout 5.0

 

_____4.rar

 

LED 1,2 и RES 1,2 (220 Ом) - для тестирования миганием светодиодами.

btn PD5 - кнопка

С3 - конденсатор для сглаживания питания

R3 - подтягивающий резистор

 

Справа - место пайки штыревого вывода (для программатора)

Внизу - выводы для подключения дисплея (пока не используются)

 

Вроде бы всё правильно (?).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

 

ATMega48 программируется как положено через MISO/MOSI/SCK, а ATMega128 через PDI/PDO,

все это описано в их даташитах, Serial Programming для ATMega48 и Serial Doownloading для ATMega128

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И зачем тогда нужны ноги MISO и MOSI, если к ним программатор подключать нельзя?
:biggrin: Шикарный вопрос. У контроллера есть еще куча ног, к которым нельзя подключать программатор. Зачем они нужны? :laughing:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...