Список com портов linux

Для правильного подключения оборудования, необходимо определить номер COM порта.

Проверка проводится при условии, что сервер полностью развернут, и работает заведомо правильно.

Windows

Для определения номера COM порта на ОС Windows необходимо:

  1. Убедиться в том, что многожильный кабель подключен к COM-порту
  2. Перейти в "Диспетчер устройств", расположенный в: Панель управленияОборудование и звукДиспетчер устройств (необходимы права администратора)
  3. Раскрыть дерево "Порты (COM и LPT)"
  4. Отсоединить многожильный кабель
  5. Запомнить изменения в дереве устройств "Порты (COM и LPT)"
  6. Присоединить многожильный кабель обратно к COM-порту
  7. Найти новый порт в дереве устройств "Порты (COM и LPT)"

8. После того, как номер COM-порта определен его необходимо указать в схеме SCADA, для устройства, подключенного многожильным кабелем.

Linux

Для определения номера COM порта на ОС Linux необходимо:

  1. Обладать правами Root либо пользователь должен входить в группу dialout
  2. Убедиться в том, что многожильный кабель подключен к COM-порту
  3. Проверить наличие COM портов в системе, введя в командную строку следующую команду:

4. После выполнения команды отобразится список всех доступных COM-портов

dev/ttyS0 – первый COM порт

/dev/ttyS1 – второй COM порт

/dev/ttyUSB0 – специальный кабель-переходник из USB в COM (Gembird UAS111)

5. Установить программу minicom. Для этого вводим следующую команду:

6. Найти многожильный кабель в оплётке длиной 4-6 см.

7. Соединить 2 и 3 выводы COM порта перемычкой из кусочка многожильного провода. Оплётка будет удерживать провод на контактах, а металлические жилы внутри будут проводниками.

Читайте также:  Разный объем оперативной памяти в двухканальном режиме

8. Настроить программу minicom. Для этого вводим следующую команду:

9. Выбрать "Настройка последовательного порта"

10. Нажимая А поочередно выбираем порты (если используется кабель-переходник из USB в COM то выбрать /dev/ttyUSB0)

11. Отключить аппаратное управление потоком, нажав «F»

12. Выйти из настроек нажав «Enter»

13. Сохранить настройки по умолчанию «Сохранить настройки как dfl»

14. Выйти из minicom

15. Запустить minicom выполнив команду:

16. Нажать на любую клавишу на клавиатуре

В случае, если символы не вводятся с клавиатуры, необходимо вернуться к пункту 10, и выбрать другой COM-порт

Если вводимые символы отображаются – значит COM-порт определен верно

17. После того, как номер COM-порта определен его необходимо указать в схеме SCADA, для устройства, подключенного многожильным кабелем.

Заметки на полях

Проверка COM порта под linux

В этой заметке я расскажу про то, как можно проверить COM порт в Linux.

Для этого нам понадобятся:

  • права на чтение и запись в COM порт
  • программа minicom
  • кусок толстого многожильного кабеля
Права доступа

проверяем какие у нас в системе есть COM порты, а также наши права на них:

/dev/ttyS0 это первый COM порт
/dev/ttyS1 соответственно второй COM порт
/dev/ttyUSB0 специальный кабель-переходник из USB в COM (Gembird UAS111)

Как мы видим для работы с COM портом необходимы права root либо пользователь должен входить в группу dialout

Провод для связи

Берём многожильный кабель в оплётке длиной 4-6 см, и соединяем 2 и 3 выводы COM порта перемычкой из этого кусочка провода. Оплётка будет удерживать провод на контактах, а металлические жилы внутри будут проводниками.
Для любителей паять можно предложить спаять полный loop-back тестер. В нём соединить не только контакты приёма передачи, но и аппаратный контроль потока и готовность терминала.

Читайте также:  Тойота камри 2018 интерьер
Работа с программой minicom

Для начала необходимо настроить программу minicom

Выбираем «Настройка последовательного порта»

Если нужно, меняем СОМ порт, нажимая «A»
Отключаем аппаратное управление потоком, нажимая «F»
Выходим из настроек «Enter»
Сохраняем настройки по умолчанию «Сохранить настройки как dfl»
Выходим из minicom

Собственно проверка СОМ порта

Запускаем minicom без параметров.

Пробуем нажимать на клавиши. В ответ на экране должны появляться символы.
Проверка COM порта под linux завершена.

Эта запись была сделана 21.12.2010, 13:50 под рубрикой Разное. Вы можете подписаться на эту запись с помощью RSS 2.0. Вы можете прокомментировать, или сделать обратную ссылку со своего сайта.

12 комментариев (and 3 trackbacks)

#1 by Евгений on 02.05.2012 – 12:50

А как им управлять через PHP скрипт? Спасибо за статью!

What is the proper way to get a list of all available serial ports/devices on a Linux system?

In other words, when I iterate over all devices in /dev/ , how do I tell which ones are serial ports in the classic way, that is, those usually supporting baud rates and RTS/CTS flow control?

The solution would be coded in C.

I ask because I am using a third-party library that does this clearly wrong: It appears to only iterate over /dev/ttyS* . The problem is that there are, for instance, serial ports over USB (provided by USB-RS232 adapters), and those are listed under /dev/ttyUSB*. And reading the Serial-HOWTO at Linux.org, I get the idea that there’ll be other name spaces as well, as time comes.

So I need to find the official way to detect serial devices. The problem is that none appears to be documented, or I can’t find it.

Читайте также:  Huawei p smart plus обзор

I imagine one way would be to open all files from /dev/tty* and call a specific ioctl() on them that is only available on serial devices. Would that be a good solution, though?

Update

hrickards suggested to look at the source for "setserial". Its code does exactly what I had in mind:

First, it opens a device with:

Then it invokes:

If that call returns no error, then it’s a serial device, apparently.

I found similar code in Serial Programming/termios, which suggested to also add the O_NOCTTY option.

There is one problem with this approach, though:

When I tested this code on BSD Unix (that is, Mac OS X), it worked as well. However, serial devices that are provided through Bluetooth cause the system (driver) to try to connect to the Bluetooth device, which takes a while before it’ll return with a timeout error. This is caused by just opening the device. And I can imagine that similar things can happen on Linux as well – ideally, I should not need to open the device to figure out its type. I wonder if there’s also a way to invoke ioctl functions without an open, or open a device in a way that it does not cause connections to be made?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock detector