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
V12.0 modifiée récurrence d'interrogation serveurs, RTE, et code UxIx3. 1 serveur RMS UxIx3, 1 client Triac CE + 1 client SSR CE. 1 client SSR sur CE tri sur 1 serveur Linky réf. CACSI. Variateurs de fréquence sur Piscine et Spa.
6 panneaux (2 SO 2 S, 2 SE ) 425Wc produisent 13kWh de jour actuellement.
6 panneaux (2 SO 2 S, 2 SE ) 425Wc produisent 13kWh de jour actuellement.