Первое программирование самодельной платы ATMega32U4
Я вступаю в мир Arduino и решил собрать небольшую плату для реализации геймпада. Перед разработкой платы я протестировал свою прошивку на Arduino Pro Micro USB, поэтому решил сделать что-то подобное. На моей плате используется ATMEGA32U4-AU вместо ATMEGA32U4-MU, поскольку ее проще паять. Подключив плату к компьютеру, я заметил, что между устройствами Windows появилось новое устройство с именем ATmega32U4, похоже, что плата работает. Теперь проблема в том, как запрограммировать его с правильным загрузчиком (?) и сделать из него настоящую Arduino плату. Я нашел несколько поддельных статей о том, как это сделать, но у меня нет четкой идеи. Кто-нибудь может мне помочь? Я могу поделиться всем, что вам нужно, чтобы сосредоточиться на плате.
ОБНОВЛЕНИЕ -------------------------------------------------------------- -----------------------
Перед установкой загрузчика Arduino я попытался запрограммировать образец прошивки на плате через Atmel FLIP (успешно). После этого я больше никогда не мог программировать плату (ни через FLIP, ни другими способами)
Я подключил свою плату к Arduino ISP, и, поскольку Windows, похоже, не может найти правильный драйвер, мне пришлось установить его вручную, после чего я попытался установить загрузчик с помощью опции Установить загрузчик в Arduino IDE ( выбрав Arduino ISP в качестве программатора), но у меня ничего не получилось: Это журнал:
avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch
System wide configuration file is "C:\Users\tux\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
Using Port : usb
Using Programmer : arduinoisp
avrdude: usbdev_open(): Found USBtinyISP, bus:device: bus-0:\\.\libusb0-0001--0x2341-0x0049
AVR Part : ATmega32U4
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PA0
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 20 4 0 no 1024 4 0 9000 9000 0x00 0x00
flash 65 6 128 0 yes 32768 128 256 4500 4500 0x00 0x00
lfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
efuse 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
lock 0 0 0 0 no 1 0 0 9000 9000 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Programmer Type : USBtiny
Description : Arduino ISP Programmer
avrdude: programmer operation not supported
avrdude: Using SCK period of 10 usec
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
Error during bootloader writing.
Я ясно вижу, что моя прошивка не работает, когда я запускаю процесс загрузчика (вероятно, потому что он перезагружает плату). Из лога кажется, что все идет правильно, пока: оператор программатора не поддерживается
Что это значит? Неужели программист не может запрограммировать такой чип? Как я могу это исправить? Если я перезагрузлю свою плату перед попыткой снова записать новую прошивку поверх нее, она будет работать или мне просто нужно установить на нее новый микро?
С уважением, Майк
@weirdgyn, 👍0
Обсуждение1 ответ
Лучший ответ:
Проблема заключалась в неправильном подключении MISO из-за прослушиваемого посадочного места ATMega32U4.
- Почему я получаю avrdude: stk500v2_ReceiveMessage(): timeout error when uploading to Arduino Mega?
- Можно ли загрузить скетч Arduino через последовательный порт (RX) вместо USB?
- Arduino Pro Микро кирпичился?
- Arduino Pro Micro не распознается ПК
- Не могу загружать шестнадцатеричные файлы вне Arduino IDE на Pro Micro
- Библиотека джойстиков Arduino не распознается играми (Steam)
- Как повторно включить USB-контроллер 32u4 после спящего режима?
- Нет ttyACM0 с Pro Micro в Ubuntu 18.04
Похоже, вы находитесь в режиме программирования DFU. Для этого есть приложение., @Majenko
Вы имеете в виду это: https://www.microchip.com/developmenttools/ProductDetails/flip#additional-summary?, @weirdgyn
Похоже на то. Я никогда не использую его, так что не знаю наверняка, но это определенно звонит в колокольчик., @Majenko
Я не думаю, что его можно использовать для замены загрузчика, возможно, я могу использовать его для программирования флэш-памяти с шестнадцатеричным кодом Arduino., @weirdgyn
Вы можете использовать другой Arduino со скетчем ArduinoAsISP и записать загрузчик (и предохранители), используя контакты ISP на ATMega32u4., @Gerben
Ясно... должен ли я использовать функцию установки загрузчика в ArduinoIDE?, @weirdgyn