Как запрограммировать ATmega4809 от Raspbeery GPIO

Из этого урока я могу чтобы красиво запрограммировать ATmega328, используя контакты SPI Raspberry GPIO. Однако, когда я пытаюсь выполнить те же действия с ATmega4809, avrdude, кажется, не имеет инструкций и выводит следующее:

program enable instruction not defined for part "ATmega4809"

Итак, как мне запрограммировать чип ATmega4809 от Raspberry?

, 👍0


1 ответ


1

ATMega4809 использует UPDI (унифицированный интерфейс программирования и отладки) для программирования, а не ICSP, как более старый ATMega328P. Вам нужен программатор UPDI.

Существует проект jtag2updi, который вы можете запустить на Uno, превращая его в адаптер JTAG-UPDI, который затем совместим с помощью avrdude -c jtag2u pdi ....

,

Но в таком случае, почему у него выводы MOSI, MISO и SCK? Кроме того, я провожу некоторые эксперименты с Arduino Nano Every, у которого нет вывода UPDI., @Miguel

Потому что MOSI, MISO и SCK — это SPI, а не ICSP. Так уж получилось, что на ATMega328P эти контакты выполняют две функции: SPI *и* ICSP. Но эти двое никак не связаны между собой., @Majenko