Lecture de bits sur port RS232 (Rx) et ecriture reciproque sur Tx
bimaonethc
Messages postés4Date d'inscriptionjeudi 17 février 2005StatutMembreDernière intervention 4 mars 2005
-
28 févr. 2005 à 16:34
panoramix591
Messages postés1Date d'inscriptionlundi 18 juillet 2005StatutMembreDernière intervention18 juillet 2005
-
18 juil. 2005 à 17:52
Bonjour,
J'essaie d'aller lire un flux binaire quelconque sur mon port RS232 par l'intermediaire de Rx. Autrement dit, echantilloner le Rx sans prendre en compte de protocole spécifique.
Les signaux ressemblent à ça :
Le probleme c'est que toutes les fonctions que j'ai trouvé viennent interpreter ce signal selon le protocole RS232 alors que cette trame n'a pas de signalisation.
Quelqu'un saurait comment "court-circuiter" ce protocole et recuperer les bits (et non les mots) qui m'interessent?
Par la même, la reciproque me permettant de reconstituer ce type de signal sur Tx m'interesse grandement...
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 28 févr. 2005 à 19:02
Désolé je suppose que tu as mis un schémas mais il n'est pas passé. Je vais quand même tenté une explication.
Sur un PC, avec un port série RS232, ce sont des octets que tu reçois et non pas des bits
Pour recevoir les bits il faut que tu intervienne au niveau du
hardware, en fait faut que tu te gère toute la partie reception
hardware de liaison RS232. Et ça c'est pas possible avec les ports du
PC.
Pour cela il te faut faire un montage électronique à base de
microcontroleur (ex: PIC16xxx) et son petit programme associé pour
gérer a mano la liaison série.
Seconde explication : Si c'est la partie données qui t'interesse (dans
le schéma que tu voulais mettre mais qui n'y est pas si j'ai tout
compris), tu peux toujours récupérer les octets et les découper ensuite
en bits avec des masques.
Attention aux termes, tu utilise le terme 'mot' dans ton post, un
mot (word) représente 2 octets soit 16 bits. Je pense que tu voulais
plutot parler d'un octet (byte) soit 8 bits.
Si le cerveau était assez simple pour que nous puissions le comprendre,
nous serions assez bête pour ne pas le comprendre malgré tout.
bimaonethc
Messages postés4Date d'inscriptionjeudi 17 février 2005StatutMembreDernière intervention 4 mars 2005 1 mars 2005 à 11:49
Bonjour Casy,
Je suis ravi d'avoir deja un retour sur ce dileme qui commence à me faire perdre patience.
Je pense que tu as bien compris ma problematique. Ce en sont pas les données qui m'interesse mais les bits (reflet de l'echantillonage de mon signal analogique apres photodiode etc.)
En effet, le terme "mot" n'était pas approprié dans ce cas.
Apparement :
il te faut faire un montage électronique à base de microcontroleur (ex: PIC16xxx) et son petit programme associé pour gérer a mano la liaison série ce qui me semble très profond comme demarche même si je ne me rend pas encore bien compte du travail que ça demande.
Aurais-tu plus de bille la dessus car là je suis HS?
Apparement passer par le port RS232 est très contraignant, connais-tu un adaptateur pour pluger mon convertisseur IR/RS232 (EL-Link-IR Lascar) sur un port parallèle et echantilloner sur celui-ci, qui normallement est plus accessible?
N'aurais-je pas interet à trouver une autre piste genre emetteur-recepteur infrarouge CS8130-CS?
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 1 mars 2005 à 12:26
Effectivement passer par un PIC16xxx
(ou autre) n'est pas à la protée de tout le monde. Si tu ne connais
rien en électronique ne te lance pas, surtout que ça n'a pas l'air de
correspondre à ton besoin.
Excuse-moi, mais je suis extremement perplexe quant aux informations que tu me donnes
echantillonage de mon signal analogique apres photodiode ...... convertisseur IR/RS232 (EL-Link-IR Lascar) .......... emetteur-recepteur infrarouge CS8130-CS
Les deux références de convertisseurs que tu donnes ne font absolument pas d'échantillonage de signal analogique.
Ces convertisseurs permettent d'obtenir une liaison infrarouge selon la
Norme IrDA à partir d'un port série RS232. Ces liaisons sont notammant
utilisées pour des communications avec des périphériques tel que
imprimantes, PDA, NoteBook, et autres téléphones portable .........
Donc que des tranferts de données purrement numériques (des octets, par
centaines). De toute façon tu ne récupèreras à la sortie de ces
circuits que des octets et jamais un échantillonage de signal
analogique après photodiode.
Les bits que tu reçois sur le port série arrive tel quel (codé quand
même) sur la photodiode, il ne 'sagit nullement d'un échantillonage
d'un quelconque signal analogique.
Si le cerveau était assez simple pour que nous puissions le comprendre,
nous serions assez bête pour ne pas le comprendre malgré tout.
bimaonethc
Messages postés4Date d'inscriptionjeudi 17 février 2005StatutMembreDernière intervention 4 mars 2005 2 mars 2005 à 17:22
En fait, c'est plutot un abus de langage que je fais en parlant d'echantillonage pour dire "recuperer des 0 et des 1", peu importe.
Je suis etonné de ce que tu me dis a propos du kit de developpement CS8130-CS, il est pourtant noté sur le catalogue Radiospares que c'est utilisable pour des signaux de telecommandes...menfin, de toute facon c'est relativement cher!
Donc pour le moment, je vais essayer d'autres pistes et voir sur Girder où ce systeme de lecture semble exister, enfin j'espere! Par contre, d'autres idees peuvent m'etre utiles. J'ai d'ailleurs entendu parler recement de passer par la carte son, qui est le convertiseur A/N disponible sur la pluprt des PC. Aurai ti un avis la dessus?
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 2 mars 2005 à 18:23
Je ne pense pas que ce soit un abus de langage quand tu dis
"échantillonage" pour parler de 0 et de 1, ça correspond à de
l'échantillonage.
Par contre, là ou j'ai quelque fois du mal à te suivre, c'est que j'ai
l'impression que tu considère tes 0 et 1 comme un signal analogique. Et
la c'est une erreur, au mieux tes 0 et 1 représente un signal ana qui a
déjà été échantilloné mais pas le signal ana lui-même.
En étudiant de plus près la doc du CS8130 (le circuit, pas la
carte) sur le site Cirrus, il apparait que ce circuit est compatible
avec plusieurs signaux dont les signaux de télécommande.
Il possède en plus un mode (mode 4) ou on peut lire ou piloter
directement la led du style en reception : reçois un signal IR ->
RxD=0, ne reçois pas -> RxD=1.mais c'est toujours du binaire, il n'y
a pas de conversion analogique/numérique. Je ne sais si la carte d'eval
de chez RS te permet d'exploiter ce mode.
Si tu veux seulement récupérer une suite de 0 et de 1, ce mode peut
t'intéressé, mais il faudra surrement à l'arriveée que tu rassemble tes
bits par octets, mots ou autre pour pouvoir les décodés.
La carte son possède effectivement un CAN sur l'entrée son, mais je ne sais pas s'il est exploitable, et comment l'exploiter
Quel est exactement le signal que tu veux récupérer? (en fait on aurait du commencer par là)
Si le cerveau était assez simple pour que nous puissions le comprendre,
nous serions assez bête pour ne pas le comprendre malgré tout.
bimaonethc
Messages postés4Date d'inscriptionjeudi 17 février 2005StatutMembreDernière intervention 4 mars 2005 4 mars 2005 à 11:33
Le signal que je souhaite recuperer est standard (voir differents site de presentation de signaux de terlecommande genre RC5, NEC, etc.).
Au niveau du Rx de mon EL-LINK-IR, j'ai le signal que j'avais placé au début, je vais
Là je pense qu'il y est...
Je cherche donc (en clair) à échantilloner ce signal à une frequence suffisante de maniere à stocker les bits (fichier texte ou autre) puis par la suite reproduire ce signal sur Tx.
Le problème c'est les bits de start, stop, etc. qui empeche de realiser cette fonction librement...snif!