Bonjour,
Je recois des données via le port série , par exemple 10701 octets,
quel serait l'algorithme pour les recevoir par bloc de 2K (2048 bytes) ?
sans utiliser de librairies de string etc .. en C pure.
surement avec un truc du genre, taille % 2048 j'imagine.
Je connais le nombre d'octets transmis à l'avance.
quand le nombres d'octets recu est supérieurs à 2048, je les
stock dans un buffer, les prochains 2048 octets je les stocke à la suite
des 2048 octets précédents, ainsi de suite
le reste d'octets inférieurs à 2048 je les stock à la suite du buffer .
en utilisant strcat ?
Bonsoir sans savoir avec quelle carte c'est pas évident de répondre
Pour certaine c est carrément impossible au vu de la mémoire necessaire de la taille du tampon et de la vitesse
➜ vous lisez les octets quand ils arrivent et vous les rangez dans un tableau par simple affectation en vous assurant de ne pas dépasser la taille du tableau. (vous avez un arduino un peu costaud ? parce qu'un buffer de 2Ko c'est beaucoup pour un UNO par exemple )
➜ quand vous avez reçu le nombre d'octets attendus vous traitez le message
avec l'esp32 c'est à l'aise, idem pour le pico et bien d'autres, surtout avec la psram, j'utilise les 4MB dessus sans problème, apres pour moi, c'est surtout le principe qui m'interesse.