Recupération données rs232 en C sous linux
Résolu/Fermé
ebousquie
Messages postés
40
Date d'inscription
lundi 12 mai 2008
Statut
Membre
Dernière intervention
28 avril 2009
-
3 mars 2009 à 13:55
loupius - 4 mars 2009 à 14:21
loupius - 4 mars 2009 à 14:21
A voir également:
- Recupération données rs232 en C sous linux
- Logiciel de récupération de données - Guide
- Linux mint - Télécharger - Systèmes d'exploitation
- Recuperation compte google - Guide
- Effacer les données de navigation - Guide
- Reinstaller windows sans perte de données - Guide
2 réponses
Il n'y a pas besoin de bibliothèque particulière.
Le port 'Com' est un périphérique, et, dans la philosophie Unix, un périphérique est rattaché au système de fichier; ce périphérique a donc un entrée correspondante dans le système: '/dev/ttyS0' pour 'Com1', '/dev/ttyS1' pour 'Com2', ...
On va donc pourvoir l'utiliser comme n'importe quel autre fichier: un descripteur de fichier et les fonctions open, read, write, close.
La seule différence sera pour le paramétrage; celui-ci se fera par l'intermédiaire d'une structure 'termios' (fais un 'man termios' pour en savoir plus). Un petit point de détail: en général il faut avoir certains droits pour pouvoir modifier cette structure.
Voilà donc pour les grandes lignes.
Le port 'Com' est un périphérique, et, dans la philosophie Unix, un périphérique est rattaché au système de fichier; ce périphérique a donc un entrée correspondante dans le système: '/dev/ttyS0' pour 'Com1', '/dev/ttyS1' pour 'Com2', ...
On va donc pourvoir l'utiliser comme n'importe quel autre fichier: un descripteur de fichier et les fonctions open, read, write, close.
La seule différence sera pour le paramétrage; celui-ci se fera par l'intermédiaire d'une structure 'termios' (fais un 'man termios' pour en savoir plus). Un petit point de détail: en général il faut avoir certains droits pour pouvoir modifier cette structure.
Voilà donc pour les grandes lignes.
ebousquie
Messages postés
40
Date d'inscription
lundi 12 mai 2008
Statut
Membre
Dernière intervention
28 avril 2009
4 mars 2009 à 10:47
4 mars 2009 à 10:47
Ok, merci pour ces explications...
J'ai vu qu'il pouvait exister un danger de surtension pour la carte mère... y a-t-il des précautions à prendre si l'on veut effectuer des manipulations sur le port série?
J'ai vu qu'il pouvait exister un danger de surtension pour la carte mère... y a-t-il des précautions à prendre si l'on veut effectuer des manipulations sur le port série?
C'est sûr qu'il y a quelques précautions à prendre.
Normalement, une mauvaise manip ne doit pas détruire la carte mère (sauf peut-être à injecter directement du 220V), mais seulement rendre le port Com inutilisable.Matériellement; il y a deux choses à savoir:
- Les tensions sont +12V ("0" logique) et -12V ("1" logique),
- Les pins sont soit IN, soit OUT.
A partir de là il faut faire attention à ne pas relier deux 'OUT' car, en général, ça ne se termine pas très bien (Jadis les anciens drivers (MC1488) 'tenaient' le court-circuit pendant environ 1 seconde.... c'est court!).
Il faut donc repérer les tensions; avec un multimètre c'est assez facile; il y a des normes et il suffit de savoir si on est en présence d'une configuration 'émetteur' ou 'récepteur'. Pour cela, il faut trouver le pin 'TX' qui au repos est à -12V (à 3 volt près), à partir de là (pour un connecteur 9 broches):
- si 3 -> configuration 'émetteur', c'est normalement celle d'un PC,
- si 2 -> configuration 'récepteur', c'est parfois celle de périphérique.
De là on en déduit les autres 'pins'; ce qui n'exclut pas de les vérifier.
Normalement, une mauvaise manip ne doit pas détruire la carte mère (sauf peut-être à injecter directement du 220V), mais seulement rendre le port Com inutilisable.Matériellement; il y a deux choses à savoir:
- Les tensions sont +12V ("0" logique) et -12V ("1" logique),
- Les pins sont soit IN, soit OUT.
A partir de là il faut faire attention à ne pas relier deux 'OUT' car, en général, ça ne se termine pas très bien (Jadis les anciens drivers (MC1488) 'tenaient' le court-circuit pendant environ 1 seconde.... c'est court!).
Il faut donc repérer les tensions; avec un multimètre c'est assez facile; il y a des normes et il suffit de savoir si on est en présence d'une configuration 'émetteur' ou 'récepteur'. Pour cela, il faut trouver le pin 'TX' qui au repos est à -12V (à 3 volt près), à partir de là (pour un connecteur 9 broches):
- si 3 -> configuration 'émetteur', c'est normalement celle d'un PC,
- si 2 -> configuration 'récepteur', c'est parfois celle de périphérique.
De là on en déduit les autres 'pins'; ce qui n'exclut pas de les vérifier.