Mieux comprendre mieux les communications séries

Bonjour
J’ai vraiment besoin de progresser dans ce domaine

Voilà j’ai un module de régulation DC-DC qui intègre un voltmètre et un ampèremètre
"5A Adjustable CC/CV Display Step Down charge Module LED Panel Voltmeter Ammeter"

Il y a 3 broches pour liaison TTL (RX ,TX et GND)

J’ai aussi un adaptateur usb TTL a base de PL2303

La documentation concernant la liaison série du module est très succincte !!!. Pour moi cela ressemble à du chinois (normal cela viens de là bas)

BAUD RATE: 9600 Bps "cela je comprends"
BB CC ADDR 00 XX XX CRC (current return conmmound)
BB CC ADDR 01 XX XX CRC (Voltage return conmmound)

BB CC is the Frame Header( 2 bit)
ADDR is the address of the module (1 bit)
00 is the command of current reading (1 bit)
01 is the command of Voltage reading (1 bit)
XX XX random value (2 bit)
CRC CRC verification

Le but dans un premier temps est de lire les valeurs (tension et intensité) dans un terminal et au final utilisée Processing pour faire une interface plus « sexy »

Question :
je n’arrive pas a savoir si je dois envoyer une commande pour avoir un retour ou si le module envois les valeurs régulièrement. (J’ai fait un test et rien n’arrive sur le terminal), l’adaptateur usb est ok je l’ai testé avec une Uno.

Merci d'avance pour vos conseils

Bonjour

juste quelques impressions, pas mieux ...

-si le module envoyait les données sans attendre de commande on peut supposer que les concepteurs auraient économisé l'entrée RX

-il faut remplacer le terme 'bit' par 'byte' dans la description de la trame (si le module renvoie des valeurs codées sur 2 bits il perd beaucoup d'intérêt !!

-si le terme 'command' a été traduit correctement du chinois à l'anglais on pourrait émettre l(hypothèse que le module attend les octets 0x00 ou 0x01 pour envoyer les données 'courant ou 'tension'
(Sinon que donne l'envoi au module d'un 0x0d, un 0x0a ou les deux à la suite ?)

J'ai aussi un adaptateur usb TTL a base de PL2303

Par les temps qui courrent et suite à l'attaque stupide menée par FTDI il vaut mieux avoir un PL2303 ou un CP2102 contrefaits qu'un FT232 contrefait....

pa44:
Voilà j’ai un module de régulation DC-DC qui intègre un voltmètre et un ampèremètre
"5A Adjustable CC/CV Display Step Down charge Module LED Panel Voltmeter Ammeter"

Il y a 3 broches pour liaison TTL (RX ,TX et GND)

J’ai aussi un adaptateur usb TTL a base de PL2303

La documentation concernant la liaison série du module est très succincte !!!. Pour moi cela ressemble à du chinois (normal cela viens de là bas)

BAUD RATE: 9600 Bps "cela je comprends"
BB CC ADDR 00 XX XX CRC (current return conmmound)
BB CC ADDR 01 XX XX CRC (Voltage return conmmound)

BB CC is the Frame Header( 2 bit)
ADDR is the address of the module (1 bit)
00 is the command of current reading (1 bit)
01 is the command of Voltage reading (1 bit)
XX XX random value (2 bit)
CRC CRC verification

Le but dans un premier temps est de lire les valeurs (tension et intensité) dans un terminal et au final utilisée Processing pour faire une interface plus « sexy »

Bonjour
J'ai l'impression que la liaison serie sert à envoyer des consignes, pas à faire du report d'info :sunglasses:

Bonjour,

  1. Est-ce que les 3 fils Rx Tx et Gnd sont des signaux TTL ou RS232 (V28) ?
    Un oscillo voire un voltmètre pourrait répondre à l'un de tes doutes.

  2. Il y a sûrement un logiciel pour communiquer avec cet appareil ?

  3. Dans ce cas, un analyseur de protocole pourrait servir à "décoder".

  4. effectivement, remplace bit par byte (8 bits en principe)

  5. lancer des commandes au hasard ? des commandes AT ?

  6. ça va être difficile car il y a un en-tête à connaître, un CRC (combien) à décoder, ...

Il faut la notice de l'appareil.
Géryko

bon , le bouton modify est parti à la messe ce matin :grin:

ça semble bien etre un
report

Bonjour Artouste,

Le bouton "modifie" disparait peut-être dès qu'un autre message est posté par dessus ?
ou dans un délai de ... ?

A confirmer par des essais.

Bien à toi

PS ce qui semble vrai

le module démonté, retourné....

à 1'38 la platine Voltmetre+Amperemetre avec son petit µC ST et son registre à décalage
pas d'info içi sur le protocole série

Après un petit démontage pour comprendre

C'est bien du TTL car les broches TX et RX vont sur le broches de 2 et 3 RX TX d'un micro-controleur
STM8S003F3P6

Les consignes se font par 2 ajustables sur la carte du dessous d'ailleurs la liaison électrique entre les 2 cartes se fait par les 4 vis sur pylône (je comprends maintenant pourquoi l'affichage était parfois capricieux !!!)

L'ideal est d'avoir un oscillo et de verifier si il y a de l'activité permanente en sortie serie

à defaut un test au voltmetre permet de lever le doute sur les niveaux de tension, mais la proba est grande que ce soit du TTL et pas du rs232 .

si activité , avec un TTL/USB et un terminal , le reste sera simple.

par contre si "ça cause pas tout seul" ... :sunglasses:

liaisons electriques par les entretoises.. 'no comment'

Pas de conversion TTL/RS232 à priori sur la carte afficheur, même pas sous forme simplifiée 'transistorisée'..

Au vu des diverses infos et s'il se confirme que le module n'envoie pas spontanément ses trames je mise sur :

-à reception des 3 octets 0x01 0x0d 0x0a le module répond par une trame de 7 octets 'Tension'
il suffit d'extraire les 5e et 6e octets (négliger à ce stade le CRC)

0x0d et 0x0a ne sont peut être pas nécessaires tous les deux

Relier le module et l'adaptateur TTL/USB.
(attention , il arrive que les modules aient un marquage Rx Tx 'spécial'.... le marquage 'Rx' n'étant pas le RX de la puce UART/USB mais le Rx de l'autre bout !! un voltmetre permet de lever le doute)

Un soft comme le Terminal de Bray (Terminal) permet de traiter facilement les échanges en hexa, pas seulement en ASCII

je viens de brancher un petit analyseur logique et j'ai des trames sur les 2 voies

Voie 0 Rx
Voie 1 Tx

pa44:
je viens de brancher un petit analyseur logique et j'ai des trames sur les 2 voies

Voie 0 Rx
Voie 1 Tx

Alors
essaie de visualiser ta voie 1 sur un terminal à 9600

les trames sont-elles sorties spontanément de Rx et Tx ? si oui les chronogrammes 'à chaud' évoqueraient plutôt une sortie 'synchrone' de groupes de 3 octets, signal en voie 0 et horloge en voie 1 !!

oui depuis le branchement

Edit/Modify ... ou est tu ?

j'enlève 'synchrone' à mon message précédent.

ton soft analyseur logique n'a pas une fonction décodage de protocole ?

Oui mais je découvre l'utilisation de cet outil et le seul protocole ou j'ai 2 voies c'est le I2C

en regardant le plus près les trames sur la voie 1 sont toujours identiques mais sur la voie 0 cela change avec I2C

I2C très peu probable à mon avis en voyant le 'profil' de la voie 0

Y'aurait pas un décodeur de protocole SPI ? (horloge sur la voie 1 , en front montant par exemple)
Essayer aussi le décodeur de protocole 'Serial' sur le seule voie 1

je ne connais pas ce soft
mais en chargeant la version d'essai , on a acces à ça (photo)
par contre peut etre inverser voie 0 et1
je ne sais pas comment se gere la voie pour du décodage asynchrone et les autres affectations selon protocoles.
edit :
les voies sont demandées à la selection du protocole