Последовательный порт недоступен Arduino - PullRequest
0 голосов
/ 08 октября 2018

Попытка загрузить код в arduino, но в Arduino IDE или Arduino Create оба возвращают эту ошибку при загрузке.Работает на Linux Tara (мята 19 корица).

./opt/arduino-builder/arduino-builder -compile -core-api-version 10611 -hardware opt/arduino-builder/hardware -hardware ./opt/cores -tools opt/arduino-builder/tools -tools ./opt/tools -built-in-libraries opt/libraries/latest -logger humantags -fqbn arduino:avr:mega:cpu=atmega2560 -build-cache /tmp -build-path /tmp/716441957/build -verbose -libraries /tmp/716441957/custom -libraries /tmp/716441957/pinned /tmp/716441957/sketch_oct8a

Sketch uses 8280 bytes (3%) of program storage space. Maximum is 253952 bytes.

Global variables use 443 bytes (5%) of dynamic memory, leaving 7749 bytes for local variables. Maximum is 8192 bytes.

Programming with: Serial

Flashing with command:/home/jesus/.arduino-create/arduino/avrdude/6.3.0-arduino9/bin/avrdude -C/home/jesus/.arduino-create/arduino/avrdude/6.3.0-arduino9/etc/avrdude.conf -q -q -patmega2560 -cwiring -P/dev/ttyACM0 -b115200 -D -Uflash:w:/tmp/arduino-create-agent734074237/sketch_oct8a.hex:i

avrdude: ser_open(): can't open device "/dev/ttyACM0": Permission denied

ioctl("TIOCMGET"): Inappropriate ioctl for device

ioctl("TIOCMGET"): Inappropriate ioctl for device

Ответы [ 4 ]

0 голосов
/ 15 июля 2019

Я знаю, что приведенные ниже идеи исходят из использования Teensy, но они могут вам помочь.

  1. Иногда в IDE Arduino указаны порты ACM*.Попробуйте посмотреть на порты ser.Я знаю, когда я запускаю свой Teensy, иногда я переключаю их, и мне нужно выбрать правильный.
  2. Кроме того, из моего опыта работы с Teensy, вам может понадобиться добавить правило udev, чтобы разрешить разрешенияполучить доступ к порту от пользователя без полномочий root.Вот ссылка , которая показывает файл udev .
0 голосов
/ 26 января 2019

1 # Сначала проверьте порт в вашей IDE.В Arduino tools-> port Если порт скрыт или вы не можете навести на него курсор, выполните эти команды в своем терминале. Если все в порядке, пропустите это и выполните вторую часть.

sudo apt-get install librxtx-java -y

sudo usermod -aG dialout $USER 

sudo apt-get install gnome-system-tools

2#
После этого снова проверьте первый способ.Если это не работает, выполните эти команды

ls -l /dev/ttyACM*
sudo usermod -a -G dialout <username>
0 голосов
/ 16 марта 2019

Возможно, у вас запущена другая программа, которая уже использует этот порт.Вам следует закрыть большинство других программ, таких как putty или другое приложение для последовательного монитора.В противном случае попробуйте подключить Arduino к ПК.

0 голосов
/ 20 ноября 2018

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

Я не очень хорош в среде Linux, поэтому я буду называть имена приложений окном, вы переходите к соответствующему приложению в Linux.

  1. Зайдите в диспетчер устройств linux и посмотрите на вашу плату arduino.Он должен иметь правильное наименование, например «arduino uno at port 3», затем использовать правильный порт в вашей команде.Если это имя не указано правильно, это означает, что драйвер недоступен на вашем компьютере.Итак, перейдите к шагу 2.
  2. Найдите драйвер онлайн и установите его в своей системе. Я не уверен насчет поддержки linux с arduino, как только это будет сделано, повторите шаг 1.

Итак, я вкратце заключаю, что у вас нет подходящего драйвера (который строго убежден) или указывает неправильный порт.Я не эксперт по правилам udev, но с такими микроконтроллерами вы, безусловно, можете столкнуться.

...