Bonjour,
Je cherche à envoyer une trame d’octets.
Par exemple : j’envoie
0A 0B 00
Pour l’émission, j’utilise la fonction PRINT_CHAR, qui prend en entrée une chaîne de type STRING.
Mais le problème, c’est que le caractère (0x00) n’existe pas en tant que caractère dans une chaîne STRING.
Est-ce que je suis sur la bonne voie ?
M340 P34
RE : M340 P34
J'ai trouvé ça sur le forum Schneider mais je ne vois pas comment écrire les caractères NULL dans ma chaine de caractère...
Modifié en dernier par James12 le 22 juil. 2025, 21:24, modifié 2 fois.
- itasoft
- Mi homme - Mi automate

- Messages : 7805
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Envoyer et recevoir des chaines d'octets via M340
Pour $01$05$07$00$00$00$00$0A$17' il faut mettre la valeur 10 dans le dernier mot de la table de Gestion
pour la reception utiliser INPUT_BYTE
pour la reception utiliser INPUT_BYTE
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Envoyer et recevoir des chaines d'octets via M340
Merci pour ta réponse.
Je bloque dès l'envoie de la chaine de caractère entière car control expert ne comprend pas le caractère $00. Il comprend tous les autres octets ex : $0A, $0B, $0C... Une idée ?
Je bloque dès l'envoie de la chaine de caractère entière car control expert ne comprend pas le caractère $00. Il comprend tous les autres octets ex : $0A, $0B, $0C... Une idée ?
Modifié en dernier par James12 le 21 juil. 2025, 09:35, modifié 1 fois.
- itasoft
- Mi homme - Mi automate

- Messages : 7805
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Envoyer et recevoir des chaines d'octets via M340
Pour envoyer des chaînes de caractères contenant des caractères de fin de chaîne (NULL). Vous devez :
-utiliser des chaînes localisées,
-initialiser le dernier mot de la table de gestion des échanges avec le nombre de caractères à envoyer. Si vous initialisez le mot avec la valeur 0, la chaîne envoyée s'arrête au premier caractère ZERO qu'elle rencontre. Si vous initialisez le mot avec une valeur, la longueur de la chaîne de caractères envoyée est soit cette valeur.
-utiliser des chaînes localisées,
-initialiser le dernier mot de la table de gestion des échanges avec le nombre de caractères à envoyer. Si vous initialisez le mot avec la valeur 0, la chaîne envoyée s'arrête au premier caractère ZERO qu'elle rencontre. Si vous initialisez le mot avec une valeur, la longueur de la chaîne de caractères envoyée est soit cette valeur.
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
- itasoft
- Mi homme - Mi automate

- Messages : 7805
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Envoyer et recevoir des chaines d'octets via M340
----EXEMPLE --clic zoom--------
----clic zoom----
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Envoyer une trame via M340
Merci pour ta réponse.
Est-ce possible de mettre ça dans une DFB ?
Quand j’écris « %MW0 := … » ça me met : E1146 cannot use a direct adress within a DFB.
Est-ce possible de mettre ça dans une DFB ?
Quand j’écris « %MW0 := … » ça me met : E1146 cannot use a direct adress within a DFB.
Modifié en dernier par James12 le 22 juil. 2025, 20:05, modifié 1 fois.
- itasoft
- Mi homme - Mi automate

- Messages : 7805
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Envoyer une trame via M340
c'est normal, mais ça serait trop long à t'expliquer comment il faut faire, pas le temps
ou donner @mail en MP, si j'ai 5 minutes t'envoi le DFB
ou donner @mail en MP, si j'ai 5 minutes t'envoi le DFB
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
