Я установил простой скетч Arduino из Arduino IDE на плату Intel Galileo Gen 2.
Как остановить и удалить скетч?
Я использовал кнопку сброса и перезагрузки, отключил питание, но не сильно помог.
2 ответа
Просто загрузите пустую программу.
void setup() {
}
void loop() {
}
В вашей Arduino IDE скопируйте приведенный выше код и нажмите кнопку загрузки. Это остановит выполнение ранее выполненного эскиза.
Убедитесь, что вы подключены к плате Intel через micro USB и выбран соответствующий последовательный порт.
Эскизы запускаются командой clloader.
Из его источника:
Clloader будет искать /sketch/sketch.elf и запускать его, если он найден. Вывод из скетча будет перенаправлен обратно в / dev / ttyGS0
Если clloader находится в состоянии HUP во время выполнения скетча, он завершит скетч и будет ждать команды. Если скетч завершится, загрузчик вернется в режим ожидания удаленной команды.
Это приводит к альтернативному подходу:
- Удалите или переименуйте /sketch/sketch.elf
- Отправьте сигнал HUP процессу clloader (или вы также можете просто перезапустить плату)
Вот пример для наглядности.
Сначала убедитесь, что процесс эскиза запущен.
root@galileo:/sketch# ps | grep sketch
...
230 root 18488 S /sketch/sketch.elf /dev/pts/0
...
Найдите идентификатор процесса clloader, переименуйте исполняемый файл скетча и HUP загрузчик.
root@galileo:/sketch# ps | grep clloader
229 root 2268 S /opt/cln/galileo/clloader --escape --binary --zmod
...
root@galileo:/sketch# mv sketch.elf sketch.bak
root@galileo:/sketch# kill -HUP 229
На этом этапе процесс эскиза больше не выполняется. Чтобы перезапустить скетч ...
root@galileo:/sketch# mv sketch.bak sketch.elf
root@galileo:/sketch# kill -HUP 229
root@galileo:/sketch# ps | grep sketch
...
256 root 18488 R /sketch/sketch.elf /dev/pts/0
...
Обратите внимание, что идентификатор процесса clloader изменяется после перезапуска скрипта.
root@galileo:/sketch# ps | grep clloader
255 root 2268 S /opt/cln/galileo/clloader --escape --binary --zmod
...
Похожие вопросы
Новые вопросы
arduino
ВОПРОСЫ ARDUINO ДОЛЖНЫ БЫТЬ СВЯЗАНЫ С ПРОГРАММИРОВАНИЕМ. Arduino - это платформа для прототипирования электроники с открытым исходным кодом, основанная на простом в использовании аппаратном и программном обеспечении. Вопросы должны относиться только к программированию Arduinos (как в коде). Общие вопросы по Arduino можно задать на https://arduino.stackexchange.com или https://forum.arduino.cc.