Невозможно прошить arduino pro micro из терминала
Я пытаюсь загрузить шестнадцатеричный файл в свой arduino pro micro с помощью Avrdude. Дело в том, что я не могу загрузить какой-либо код с помощью команд терминала Avrdude, но когда я использую arduino IDE для загрузки любого кода, он отлично загружает код в Arduino.
Команда, которую я использую на терминале:
avrdude -C C:\Users\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf -v -V -patmega32u4 -cavr109 -PCOM15 -b57600 -D -U flash:w:C:\Users\santi\Documents\keyboard\corne\crkbd_rev1_layout_split_3x6_3_mine.hex:i
У меня уже есть avrdude для переменных среды на моем компьютере с Windows 10.
Вывод:
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\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
Using Port : COM15
Using Programmer : avr109
Overriding Baud Rate : 57600
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 : butterfly
Description : Atmel AppNote AVR109 Boot Loader
Connecting to programmer: .avrdude: butterfly_recv(): programmer is not responding
avrdude: butterfly_recv(): programmer is not responding
Я продолжаю ждать, но код не загружается.
Я добавил кнопку для контактов RST и GND для входа в режим загрузчика, и я нажимаю кнопку сброса. Я даже пытался дважды быстро сбросить настройки, но получил тот же результат.
Я попытался использовать Arduino, и код был загружен.
Я загрузил следующий код:
int RXLED = 17;
void setup(){
pinMode(RXLED, OUTPUT);
}
void loop() {
digitalWrite(RXLED, LOW);
delay(1500);
digitalWrite(RXLED, HIGH);
delay(1500);
}
В среде IDE была запущена следующая команда:
"C:\Users\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude" "-CC:\Users\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf" -v -V -patmega32u4 -cavr109 -PCOM16 -b57600 -D "-Uflash:w:C:\Users\santi\AppData\Local\Temp\arduino-sketch-F0563C64AD4C1F392D3E71AA32E4F874/blink_nano.ino.hex:i"
Вывод Arduino IDE:
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\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
Using Port : COM16
Using Programmer : avr109
Overriding Baud Rate : 57600
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 : butterfly
Description : Atmel AppNote AVR109 Boot Loader
Connecting to programmer: .
Found programmer: Id = "CATERIN"; type = S
Software Version = 1.0; No Hardware Version given.
Programmer supports auto addr increment.
Programmer supports buffered memory access with buffersize=128 bytes.
Programmer supports the following devices:
Device code: 0x44
avrdude: devcode selected: 0x44
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e9587 (probably m32u4)
avrdude: reading input file "C:\Users\santi\AppData\Local\Temp\arduino-sketch-F0563C64AD4C1F392D3E71AA32E4F874/blink_nano.ino.hex"
avrdude: writing flash (3852 bytes):
Writing | ################################################## | 100% 0.29s
avrdude: 3852 bytes of flash written
avrdude done. Thank you.
Я попытался использовать ту же команду Avrdude в терминале.
"C:\Users\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/bin/avrdude" "-CC:\Users\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf" -v -V -patmega32u4 -cavr109 -PCOM16 -b57600 -D "-Uflash:w:C:\Users\santi\AppData\Local\Temp\arduino-sketch-F0563C64AD4C1F392D3E71AA32E4F874/blink_nano.ino.hex:i"
Вывод:
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\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
Using Port : COM16
Using Programmer : avr109
Overriding Baud Rate : 57600
avrdude: ser_open(): can't open device "\\.\COM16": El sistema no puede encontrar el archivo especificado.
Я не знаю, почему он использует другой порт. Я попытался изменить порт в этой команде, но получил тот же результат, что и раньше
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\santi\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"
Using Port : COM15
Using Programmer : avr109
Overriding Baud Rate : 57600
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 : butterfly
Description : Atmel AppNote AVR109 Boot Loader
Connecting to programmer: .avrdude: butterfly_recv(): programmer is not responding
Я мог бы просто использовать arduino IDE для прошивки моего устройства, но проблема в том, что у меня есть только шестнадцатеричный файл. Я пытаюсь прошить свое устройство шестнадцатеричным файлом из конфигуратора QMK. Я пытаюсь создать собственную клавиатуру.
@santiago, 👍2
Обсуждение1 ответ
Вы должны перезагрузить Arduino, используя специальную процедуру, чтобы
чтобы он принял программирование. Это предполагает открытие порта в
1200 бит/с, переключение некоторых линий управления и повторное закрытие порта.
Вы можете попробовать использовать этот скрипт Python ard-reset-arduino с
option --caterina
.
Кстати, этот скрипт принадлежит проекту под названием «Arduino-Makefile». Ты может захотеть взглянуть, если вы хотите запрограммировать свой Arduino из командная строка. Кроме того, вы можете использовать arduino-cli.
* «Я пытаюсь прошить свое устройство с помощью шестнадцатеричного файла из QMK Configurator». * Arduino-cli делает касание 1200 бод как часть процесса загрузки, но это может не применяться или может потребоваться разъяснение того, как применить. Я не уверен, как бы вы использовали его, если бы он не имел возможности предоставлять произвольные шестнадцатеричные файлы для загрузки, или не имел автономной команды для выдачи касания 1200 бод, или если вы не можете подкрасть свой шестнадцатеричный файл через поверх одного, созданного командой компиляции. * «Я даже пытался дважды быстро сбросить настройки» * Это должно было дать им 8 секунд времени загрузки, хотя инструмент помог бы., @timemage
- Не могу загружать шестнадцатеричные файлы вне Arduino IDE на Pro Micro
- Использует ли Arduino pro-micro 3.3v кристалл 8 МГц или кристалл 16 МГц с делителем тактовой частоты 2?
- Как Arduino IDE сбрасывает плату перед прошивкой? Почему avrdude этого не делает?
- Можно ли оживить плату Arduino Leonardo (mini beetle)?
- Arduino Pro micro Serial communication проблема с узлом MCU
- Можно ли удалить загрузчик при прошивке с помощью загрузчика?
- Atmega32u4: снижение энергопотребления при сохранении активности USB
- Pro micro Wire.endTransmission() не возвращает
Когда вы попробовали ту же команду, что и в среде IDE, вы закрыли среду IDE? Возможно, у него открыт порт, что заблокирует доступ к нему других программ., @the busybee