15-06-2024, 12:37 PM
Et j'ai en retour une question pour vous sur votre code :
La liaison série est par définition asynchrone, et ici à 9600 bauds, soit un caractère toutes les ms environ.
La lecture MySerial.read() doit être ultra-rapide vu la vitesse du processeur, et donc on n'est pas sûr qu'un nouveau caractère soit arrivé entre temps lorsqu'on repasse dans la boucle suivante.
int a = 0;
while (MySerial.available()) {
Lecture333[a] = MySerial.read();
a++;
}
il serait plus sécurisant (et sécurisé) d'envoyer une requête en lecture, d'armer un timer, puis de venir scruter chaque ms (depuis la boucle principale comme c'est fait pour le Linky) si un caractère est arrivé, le lire et le stocker tant que le timer n'est pas épuisé, et qu'on n'a pas reçu le bon nombre de data.
Qu'en pensez-vous @piamp ?
cdlt,
Ph
La liaison série est par définition asynchrone, et ici à 9600 bauds, soit un caractère toutes les ms environ.
La lecture MySerial.read() doit être ultra-rapide vu la vitesse du processeur, et donc on n'est pas sûr qu'un nouveau caractère soit arrivé entre temps lorsqu'on repasse dans la boucle suivante.
int a = 0;
while (MySerial.available()) {
Lecture333[a] = MySerial.read();
a++;
}
il serait plus sécurisant (et sécurisé) d'envoyer une requête en lecture, d'armer un timer, puis de venir scruter chaque ms (depuis la boucle principale comme c'est fait pour le Linky) si un caractère est arrivé, le lire et le stocker tant que le timer n'est pas épuisé, et qu'on n'a pas reçu le bon nombre de data.
Qu'en pensez-vous @piamp ?
cdlt,
Ph
V16_09 serveur UxIx3 + ref Linky, client Triac CE tampon + client SSR CE tampon + client SSR sur CE tri (+ 3 clients SSR sur 3 radiateurs d'appoint). Variateurs de fréquence sur pompes tri pour Piscine et Spa. 8 panneaux (3 SE 2 S, 3 SO ) 425Wc sur 4 HM800 produisent 20kWh par jour au 16 Mars (Sud-Est France)
