Проблема с последовательным портом Arduino COM1
Я купил Arduino Uno и установил Arduino IDE 1.6.5 Но когда я хочу загрузить скетч на плату Arduino, я получаю эту ошибку:
avrdude: ser_open(): can't open device "COM1": No such file or directory
ioctl ("TIOCMGET"): неподходящий ioctl для устройства
Я использую Ubuntu 14.04LTS
hakan@hakan-pc:~$ ls -l /dev/ttyUSB0
ls: /dev/ttyUSB0'e erişilemedi: Böyle bir dosya ya da dizin yok(In English: No such a file like this)
hakan@hakan-pc:~$ ls -l /dev/ttyS0
crw-rw-rw- 1 root dialout 4, 64 Tem 8 22:40 /dev/ttyS0
Пока Arduino подключен к компьютеру dmesg | хвост:
hakan@hakan-pc:~$ dmesg | tail
[ 21.784795] sound hdaudioC1D3: hda-codec: out of range cmd 3:5:707:ffffffff
[ 21.784969] sound hdaudioC1D3: hda-codec: out of range cmd 3:5:707:ffffffbf
[ 21.786110] sound hdaudioC1D0: hda-codec: out of range cmd 0:5:707:ffffffff
[ 21.792705] sound hdaudioC1D0: hda-codec: out of range cmd 0:5:707:ffffffff
[ 26.849759] sound hdaudioC1D0: hda-codec: out of range cmd 0:5:707:ffffffbf
[ 27.515096] init: Failed to spawn nvidia-persistenced main process: unable to execute: No such file or directory
[ 43.647261] audit: type=1400 audit(1436384452.263:72): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/lib/cups/backend/cups-pdf" pid=2246 comm="apparmor_parser"
[ 43.647270] audit: type=1400 audit(1436384452.263:73): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/sbin/cupsd" pid=2246 comm="apparmor_parser"
[ 43.647654] audit: type=1400 audit(1436384452.267:74): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/sbin/cupsd" pid=2246 comm="apparmor_parser"
[ 87.513268] systemd-hostnamed[2572]: Warning: nss-myhostname is not installed. Changing the local hostname might make it unresolveable. Please install nss-myhostname!
Как я могу решить эту проблему?
6 ответов
- Подключите ваше оборудование Arduino. Откройте Arduino IDE.
- Перейти к "Инструменту".
- Перейти в "Порт".
Выберите порт, к которому подключен Arduino. (Если не подключен другой внешний диск, кроме Arduino, будет только один порт)
Это сообщит Arduino IDE порт, к которому подключено ваше оборудование. После этого вы сможете успешно загрузить свой эскиз
Если вы запускаете Arduino IDE в Ubuntu (Arduino 1.5.7 и Ubuntu 14.04 в моем случае), вы, скорее всего, не сможете загрузить его на плату Arduino из-за ошибки:
avrdude: ser_open(): can't open device "/dev/ttyUSB0": Permission denied
ioctl("TIOCMGET"): Inappropriate ioctl for device
Чтобы это исправить, введите команду:
$ sudo usermod -a -G dialout <username>
$ sudo chmod a+rw /dev/ttyUSB0
Где ваше имя пользователя в Ubuntu, /dev/ttyUSB0 - это обнаруженное устройство вашей платы Arduino.
Я получал ту же ошибку на Ubuntu 14.04 с Arduino Uno. Для меня сначала сработал выбор соответствующего порта в меню "Инструменты"> "Порт", а затем изменение разрешения порта с помощью команды, например:
sudo chmod a+rw /dev/ttyUSB0
Тогда ошибка исчезла, и я мог загрузить нормально.
Я получил такое же сообщение в Ubuntu 14.04 и версии IDE 1.0.5.
Загрузка микросхемы FTDI Драйверы D2XX решили проблему (только что скачали и следили за установкой readme). Последовательный порт был доступен и был также в состоянии успешно загрузить в ООН.
Измените в файле lib/preferences.txt строку с serial.port=COM1 на serial.port=/dev/ttyUSB0
На Kubuntu 18.04 пакет arduino дает похожую проблему. Мой обходной путь состоял в том, чтобы получить тот с веб-сайта arduino. Просто распакуйте его и сделайте./arduino для его запуска. Работает нормально. Пока мир
Разрешения на USB-порт
Как пользователь Linux, вы должны быть участником группового набора, чтобы иметь возможность читать и писать на любой/dev/tty*
соединения.
Таким образом, сделать соединение доступным для записи всем ИЛИ, запустив IDE Arduino в качестве пользователя root, - не то, что нужно.
Этого будет достаточно, чтобы добавить вашего пользователя в групповой набор и затем повторно войти в систему:sudo adduser *username* dialout
USB-соединение COM1
Arduino IDE написана на Java, но, вероятно, все еще зависит от ОС. Возможно ли, что вы использовали zip-пакет Windows IDE в системе Linux?USB-соединение вообще
Очевидно, ваш компьютер не распознал USB-соединение с Arduino. Старайтесь избегать USB-концентраторов или USB-разъемов, которые есть на некоторых дисплеях, используйте прямое подключение.