Интернет-провайдер со скоростью 115200 бод

isp

У меня есть последовательный программатор ISP с протоколом типа "stk500v1", который ожидает скорость передачи данных 115200 бод. Я успешно использовал его с Atmel Studio, вызывая avrdude вручную (пользовательский инструмент) в прошлом. Это просто включает опцию avrdude

-б 115200

Но недавно я хотел использовать программное обеспечение Arduino вместо Atmel Studio для быстрого макета. Но каждый раз, когда я пытаюсь «Загрузить с помощью программатора», командная строка avrdude включает опцию

-б 19200

и поэтому программирование терпит неудачу.

Я могу заставить его работать, изменив жестко заданную последовательную скорость в программаторе с 115200 на 19200, но тогда, конечно, программирование будет очень медленным, а это мне не нужно.

Я также искал запись скорости передачи данных для stk500v1 в "avrdude.conf", но не нашел ни одной. Как изменить скорость передачи данных для "Upload with programmer" в программном обеспечении Arduino?

, 👍1


1 ответ


Лучший ответ:

2

Вам нужно отредактировать файл programmers.txt. (Тот, что в ~/.arduino15/packages/arduino/hardware/avr/1.6.21/, а не тот, что в arduino-1.8.x/hardware/arduino/avr/)

avrisp.name=AVR ISP
avrisp.communication=serial
avrisp.protocol=stk500v1
avrisp.program.protocol=stk500v1
avrisp.program.speed=115200
avrisp.program.tool=avrdude
avrisp.program.extra_params=-P{serial.port} -b{program.speed}

Добавьте параметр avrisp.program.speed и передайте этот параметр как один из extra_params в командную строку вызова avrdude.
Затем он используется в строке 112 файла platform.txt:

tools.avrdude.program.pattern="{cmd.path}" "-C{config.path}" {program.verbose} {program.verify} -p{build.mcu} -c{protocol} {program.extra_params} "-Uflash:w:{build.path}/{build.project_name}.hex:i"

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

,