Не удается записать загрузчик через Arduino Nano clone ISP в atmega328p
Я пытаюсь использовать Nano v3 в качестве ISP для программирования atmega328p на плате с заголовками ISP:
Я следовал инструкциям в соответствии https://www.arduino.cc/en/Tutorial/ArduinoISP которые, я думаю, были недавно обновлены. Я просто соединяю заголовки ISP вместе, за исключением D10 от программатора, для сброса на целевом AVR.
Скетч ISP, кажется, работает нормально, насколько я могу видеть, как пульсирует светодиод. Но при попытке записать загрузчик с настройками:
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x15
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x15
avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x14
avrdude: stk500_getparm(): (a) protocol error, expect=0x14, resp=0x01
avrdude: stk500_initialize(): (a) protocol error, expect=0x14, resp=0x10
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude: stk500_disable(): unknown response=0x12
Error while burning bootloader.
Я заметил кое-что странное, хотя 5 В и GND в заголовке ISP на программаторе nano имеют только около 0,4 В. Это даже без чего-либо внешнего, кроме подключенного USB. Мой nano сломан или USB-соединение не может обеспечить достаточную мощность?
@Viktor Hedefalk, 👍1
Обсуждение2 ответа
Лучший ответ:
Ваш подчиненный микроконтроллер не сбрасывается, когда ваш хозяин хочет, чтобы он был сброшен.
Т. е.: мастер посылает сигнал сброса перед началом дальнейшей связи, и кажется, что ваш подчиненный не сбрасывается.
Так что он не отвечает.
После пересечения проверьте сигнальные линии вашего ISP.
Попробуйте добавить конденсатор емкостью 10 мкФ, подключенный для сброса
и поиска, на плату, которую вы используете в качестве программатора (в данном случае ваш Nano). Это требуется в соответствии с Документацией.
Электролитический конденсатор емкостью 10 мкФ, подключенный для сброса и вывода платы программирования, необходим только для плат, имеющих интерфейс между микроконтроллером и USB компьютера, таких как Mega, Uno, Mini, Nano.
Я только что обнаружил точно такой же выход с ошибкой, и конденсатор решил эту проблему.
- В чем разница/связь между Arduino и AVR?
- Как преобразовать скетч примера Arduino в полный проект C++?
- Поскольку double и float представляют один и тот же тип данных (обычно), что предпочтительнее?
- Как создать задержки на языке ассемблера AVR
- Программирование микроконтроллера Attiny85 без arduino
- AVR (Arduino Uno) Serial.print и Serial.println печатают только 1 или 2 символа
- Прерывание переполнения таймера AVR не работает
- Заменить предохранители Arduino Uno (может ли Arduino Uno заменить свои собственные предохранители?)
Если напряжение снизится до 0,4 В, то где-то может произойти почти короткое замыкание., @Andrew Morton
Оказывается, я был идиотом, когда сделал этот снимок и провел измерения. Я просто перевернул заголовок интернет-провайдера вверх дном :(. Я на 4,7 В, что должно быть нормально. Однако все та же ошибка., @Viktor Hedefalk