Я пытаюсь использовать PHP для компиляции и загрузки эскиза Arduino через командную строку. Прямо сейчас пользователь загружает файл ino
или pde
через форму и переносится в каталог для последующего использования. Используя расположение загруженного файла в качестве переменной, я хотел бы, чтобы PHP запускал версию командной строки Ardunio для компиляции и загрузки.Использование popen() для загрузки эскиза ardiuno
После первоначальной попытки использовать exec()
и system()
, я переключился на popen()
. Запуск следующего кода я могу получить Arduino открыть то закрывается без загрузки эскиза:
pclose(popen('"C:\Program Files\Arduino\arduino.exe" --port COM3 --upload "C:\sketches\uploads\cube\a\a.ino"));
Запуск этого кода и его изменения с помощью командной строки Windows, работает, так что я знаю, что входная строка не является проблемой. Кроме того, просмотр диспетчера задач Windows показывает, что он открывается на секунду или около того, затем закрывается. Может ли кто-нибудь указать мне в правильном направлении?
Спасибо за ссылку и объяснение, я теперь знать, почему и как избежать обратной косой черты. Однако проблема все еще происходит. Теперь я думаю, что это больше связано с Arduino, чем с PHP-частью вещей. Наблюдая за диспетчером задач, показывает процесс arduino (как javaw.exe), выполняющийся на системном уровне, поскольку это то, что работает Wamp, а затем перед загрузкой завершается –