eclipse photon с плагином cdt-arduino не может загрузить скетчи
Недавно я решил попробовать eclipse-photon-cdt. Я использую его со встроенным плагином Arduino, скачал конфигурацию платы feather m0 и попытался загрузить пустой скетч. Не удалось, консоль показывает, что она пытается подключиться, но не может. Конечно, Arudino IDE 1.8.5 справляется с этим замечательно. Суть в том, что если я копирую и вставляю командную строку, активирующую bossac, я получаю тот же результат. Я также знаю, почему. При использовании скриптов мне нужно использовать скрипты Python, которые используют последовательную передачу сигналов для сброса feather в режим загрузчика. Arduino IDE делает это самостоятельно, вероятно, с помощью Java. Eclipse этого не делает, что, на мой взгляд, является огромной ошибкой.
Я что-то упустил? Или они действительно предполагали, что я буду дважды нажимать кнопку сброса на плате каждый раз, когда захочу загрузить скетч?
@codeScriber, 👍0
Обсуждение1 ответ
Лучший ответ:
Мне кажется, что Eclipse не знает, как перезагрузить плату в загрузчик.
Традиционные Arduino автоматически загружаются в загрузчик при сбросе платы, а плата сбрасывается каждый раз, когда вы открываете последовательный порт, благодаря чипу USB, имеющему DTR, подключенный (через конденсатор) к выводу сброса главного микроконтроллера.
Чипы с прямым подключением USB не могут этого сделать (платы типа M0 Feather, Leonardo и т. д.). Вместо этого их нужно перезагрузить, открыв последовательный порт на скорости 1200 бод и затем снова закрыв его.
С «традиционными» платами IDE не знает и не заботится о перезагрузке платы — она просто происходит. Однако с прямыми USB-платами IDE должен иметь определенный код для выполнения перезагрузки в нужное время. В Arduino IDE такой код есть. Однако я предполагаю, что плагин Eclipse либо не реализует это, либо не имеет возможности это реализовать.
Поэтому вам придется вручную сбросить настройки платы для программирования.
Я так и думал. Интересно, что касается AVR, не знал. Конденсатор находится внутри микроконтроллера или это внешняя часть, подключенная к USB? Также DTR устанавливается или сбрасывается, когда открывается порт? Насколько мне известно, он должен устанавливаться, когда открывается порт, но если вы хотите сбросить плату, вам нужно потянуть контакт сброса вниз, что означает, что вы хотите, чтобы DTR был сброшен. Не могли бы вы пояснить?, @codeScriber
Конденсатор внешний. DTR — активный низкий сигнал., @Majenko
- Не нашел датчик отпечатков пальцев :( Arduino Mega 2560 Adafruit Fingerprint Sensor
- Почему Adafruit motor shield не крутит моторы?
- Может ли плагин Arduino Eclipse использовать библиотеки, установленные Arduino IDE?
- Какие компоненты мне нужны маленького GPS-трекера
- Статус выхода 1 ожидаемое первичное выражение перед ']' Arduino
- Есть ли функция Adafruit для инвертирования цветов моего экрана для языка Arduino?
- Библиотека программных материалов для плат SAMD
- В чем разница между выводами SCLK и CLK?
если вы хотите использовать Eclipse с Arduino, используйте плагин Sloeber, @Juraj
это плохой ответ, он говорит мне, не используйте этот инструмент, используйте другой, мне не нравится Eclipse, я могу использовать любой другой инструмент или систему сборки, например cmake\make\platformio или фреймворки, например zephyr или mynewt, в которых он уже есть, и использовать vim\sublime и т. д. Предложение другого инструмента не решит мою проблему, а только покажет, что вы используете другой инструмент, который вам больше нравится., @codeScriber
Это не ответ. Majenko написал хороший ответ. Это "Если вы хотите использовать Eclipse". Sloeber интегрирует в Eclipse инструменты сборки Arduino и аппаратные пакеты Arduino IDE. сброс там работает, @Juraj