RS232

Résolu
Bonjour,
j'ai un problème dans la lecture d'une trame reçue en RS232.

je reçois ça :

'\x86\x00xxxxffx'\xe6\x80\x98\x80'x'\x00\xe6~\x9e\x98\x9e\x00\x1e\x86\x06\x1e\x86\x1ex\x86\x06xx\x86\x00x\xf8x\x86\x06x\xe6x\x86\x18x\x1e\xe0\x86\x18x\x1e\xe0\x86\x06x\x1e\xe0\x86\x18xx\xe0\x86\xe0\x86\xe0\x86\xe0\x86\xe0\x86\xe0\x86\x18x\x86'x\x86\x06x\x86fx\x86\x06x\x86\x86xf\x1ex\x80\x9e\x1e\x98'

sur une trame de 100 caractères

je devrais recevoir quelque chose qui ressemble à ça :

0214.7482,E,1,09,1.0,119.7,M,47.3,M,,0000*56
$GPGSA,A,3,17,09,14,15,26,18,27,22,12,,,,1.7,1.0,1.4*35
$GPRMC,170146.000,A,4843.2970,N,00214.7482,E,0.45,135.81,190510,,*0C
$GPGGA,170147.000,4843.2970,N,00214.7482,E,1,09,1.0,119.9,M,47.3,M,,0000*59
$GPGSA,A,3,17,09,14,15,26,18,27,22,12,,,,1.7,1.0,1.4*35
$GPRMC,170147.000,A,4843.2970,N,00214.7482,E,0.06,347.52,190510,,*03
$GPGGA,170148.000,4843.2970,N,00214.7482,E,1,09,1.0,118.6,M,47.3,M,,0000*58
$GPGSA,A,3,17,09,14,15,26,18,27,22,12,,,,1.7,1.0,1.4*35
$GPRMC,170148.000,A,4843.2970,N,00214.74

quelqu'un peut il me dire quel est l'encodage utilisé ?

peut être que je me trompe aussi quelque part, mais je ne pense pas.

sous l'hyperterminal, j'ai renseigné :

4800 bits pas seconde
8 bits de donnée
aucune parité
1 bit d'arrêt
aucun contrôle de flux

sous pyserial : Serial<id=0x11bd090, open=True>(port='COM1', baudrate=4800, bytesize=8, parity='N', stopbits=1, timeout=None, xonxoff=0, rtscts=0, dsrdtr=0)

2 réponses

  1. Ce n'est pas un problème d'encodage, mais tu reçois n'importe quoi, ou plutôt tu lis n'importe quoi. Il y a soit un problème de configuration de tes paramètres de ligne (par exemple parité érronnnée) ou un problème de gestion de flux (tu lis moins vite que tu ne reçois)
    1. en bidouillant un peu, j'ai réussi à obtenir ce que je devais. j'ai juste débranché et rebranché mon module...

      je ne comprend pas pourquoi je recevais bien avec l'hyperterminal mais pas avec pyserial :/

      quoi qu'il en soit, merci tatou pour ta réponse rapide :)