LIAISON SERIE
Développement Visual Basic
Ce programme permet de tester une liaison série sur le pc.
Fichier source et éxécutable Port.zip (94 kb)
Le programme
Ce programme permet de tester une liaison série. Il utilise une DLL MSCOMM.DLL. Permet d'envoyer sur le port une chaine de caratères, une fichier ...
Le port série
Le port série, même s'il est aujourd'hui de moins en moins utilisé, il reste encore un standard, notamment dans l'industrie.
Sommaire
1. Brochage et performances
2. Le protocole matériel
3. Le protocole XON/XOFF
Brochage et performances
Chaque ordinateur possède deux ports série. Ils prennent la forme de deux connecteurs mâles à 9 broches (pour les PC un peu plus anciens, un des deux possède 25 broches), nommés en standard COM1 et COM2. Le schéma ci-contre montre le brochage. A l'origine, le port série était destiné à être connecté à un modem, c'est de là que le nom des broches sont tirés. En effet, seulement trois broches sont nécessaires pour communiquer avec un périphérique (TxD, RxD et la masse), les autres broches n'étant que des signaux de contrôle et d'état. Le port série est très bien protégé contre les courts-circuits (avec une intensité de 20mA) et les broches sont limitées en courant. Ainsi, il est tout à fait possible d'alimenter un petit montage électronique (par exemple les souris séries sont alimentées par la ligne RTS) mais il est quand même préférable d'avoir recourt à une alimentation externe.
Prise DB9 vue de devant.
Broche
|
E/S
|
Désignation
|
Description
|
1
|
Entrée
|
DCD (Data Carrier Detect)
|
Détection
de porteuse. |
2
|
Entrée
|
RXD ou RD (Receive Data)
|
Réception
de données. |
3
|
Sortie
|
TXD ou TD (Request Data)
|
Emission
de données. |
4
|
Sortie
|
DTR (Data Terminal Ready)
|
Terminal
prêt. |
5
|
-
|
GND (Ground)
|
Masse. |
6
|
Entrée
|
DSR (Data Set Ready)
|
Emmission
prête. |
7
|
Sortie
|
RTS (Request To Send)
|
Demande
d'emmission. |
8
|
Entrée
|
CTS (Clear To Send)
|
Prêt
à emettre. |
9
|
Entrée
|
RI (Ring Indicator)
|
Indicateur de sonnerie. |
Avec le port parallèle, tous les signaux sont transmis les uns à côté des autres dans un câble qui prend bien souvent l'allure d'une nappe. Ce procédé est rapide mais on remarque que la mise en parallèle de fils très proches induit entre eux un couplage par capacité.
Pour réduire cet effet, il est possible d'intercaler des fils reliés à la masse entre les fils acheminant les signaux.
De plus, un câble représente une charge non négligeable et il est bien souvent utile d'avoir recours à des circuits buffers pour fournir plus de puissance.
Ainsi, sur des grandes longueurs, la tension peut chuter au point de ne plus correspondre à la logique TTL (0-5V).
Le port série tire là son épingle du jeu : dans le protocole de communication RS232C, les données sont transmises en série (donc sur un seul fil) avec un calibre de tension plus élevé (-12V/+12V).
Cependant un émetteur du type ordinateur, et un récepteur comme par exemple un directeur de commade numérique, fonctionnent à des
vitesses très différentes. Le récepteur possède donc une mémoire tampon
(un buffer dont la taille est d’une ou plusieurs trames), pouvant recevoir les informations au rythme de la transmission.
Il convient donc de gérer deux cas : la saturation du buffer et sa disponibilité. Pour cela on va utiliser ce que l'on appel un protocole de communication permettant de gérer l'envoi et la saturation du
buffer.
Le protocole matériel
C'est par cette norme qu'il vous est possible de relier deux ordinateurs ensemble (la connexion directe par câble sous Windows), ou encore de communiquer avec un modem, imprimante etc. Ce protocole est dit full duplex car il peut transmettre des données et en recevoir en même temps, via les lignes RxD et TxD.
Il est tout à fait possible de n'utiliser que ces deux bornes en plus de la masse (pour la référence), en veillant bien sûr à relier la borne TxD du premier ordinateur à la broche RxD du second et vice versa.
Le contrôle du flux de données sera alors totalement logiciel car les bornes annexes du port ne sont pas utilisées.
Avec ce protocotle l’équipement en réception, lorsque son buffer est presque plein, informe l’émetteur en désactivant le signal RTS ; lorsque le buffer est à nouveau prêt à recevoir des données, il réactive cette ligne ; l’émetteur reçoit cette information sur sa ligne CTS.
Le protocole logiciel
La gestion logicielle est contrôlée par l’émission de caractères de contrôle :
- Xon, DC1 de valeur hexadécimale 11 qui indique que le récepteur peut recevoir des données car son buffer n’est pas plein ;
- Xoff, DC3 de valeur hexadécimale 13 qui indique que le récepteur ne peut recevoir des données car son buffer est presque plein.
Alors que la gestion matérielle est réservée à la seule connexion null modem entre deux PCs,la gestion logicielle peut s’opérer avec un modèle quelconque de transmission. Les caractères de contrôle venant du récepteur fonctionnent exactement, vis à vis de l’émetteur, comme le signal RTS.
Cependant, l’analyse étant opérée de manière logicielle, le rythme des transactions est moins performant que pour la gestion matérielle. En outre, la transmission est nécessairement full duplex.
Liens