Liaison RS232

RS232
Quand on vient du monde windows, il semble évident que le port série d'un PC est Com1… sous Linux, c'est ttyS0, si c'est un convertisseur série-usb, c'est ttyUSB0, et avec la carte Moxa C320 turbo, c'est ttyA11, ttyA12…

Pour s'en assurer, il est intéressant d'installer setserial
et de l'exécuter, au besoin avec les droits administrateur:

setserial -g /dev/tty*

qui doit retourner (extrait) :

/dev/tty9: Permission denied /dev/ttyprintk: Permission denied /dev/ttyS0, UART: 16550A, Port: 0x03f8, IRQ: 4 /dev/ttyS1, UART: unknown, Port: 0x02f8, IRQ: 3 /dev/ttyS10, UART: unknown, Port: 0x0000, IRQ: 0

où on voit que le ttyS0 n'est pas unknow!

Pour un convertisseur série-USB

Par exemple le Moxa UPort1100, après décompression du driver (v1.3.9 ok avec Ubuntu16) puis installation (depuis le répertoire mxu11x0) :

make clean sudo make install lsusb … Bus 001 Device 004: ID 110a:1110 Moxa Technologies Co., Ltd.

puis, on peut vérifier:

setserial -G /dev/ttyUSB0 /dev/ttyUSB0 uart 16550A port 0x0000 irq 0 baud_base 9600 spd_normal low_latency

Pour une carte Moxa Turbo C320

Le UserManual de 2008 précise l'installation sous Unix. Bien que ce ne soit pas à jour, le programme mxinstall existe toujours et fonctionne. On se retrouve avec des ports nommés ttyA11 à ttyA28 pour 16 ports.

Terminaux pour tests

Sous Linux, l'équivalent d'HyperTerminal est GtkTerm… à installer aussi! Sous windows, TeraTerm… Putty remplacent avantageusement HyperTerminal, qui n'est plus disponible depuis win7.

Liaison USB

cf. https://doc.ubuntu-fr.org/usb

Programmation

une librairie multi-plateforme windows/linux: https://github.com/ynezz/librs232
peut-être encore plus simple: http://www.teuniz.net/RS-232/ testé avec succès sur com1 et C320t sous linux et win7 + mingw64