Envoi ‐ 4 forces, accel et gyroscope - edikplaas/com-espnow-pc- GitHub Wiki

Transmission RS485 STM32 (voir envoiData6CapAccGy.ino)

En plus des 4 capteurs de force et des 3 accélérations, on ajoute maintenant la partie gyroscope de l'IMU. Il y a donc en plus 6 octets (2 octets pour chaque axe).

-> La sous-trame data a une taille de 20 octets.

-> La trame frame a une taille de 23 octets.

L'acquisition des valeurs gyroscopiques se fait de cette manière :

image

Réception RS485 module de com (voir lectureData6CapAccGy)

On vérifie maintenant qu'il y a au moins 23 octets disponibles à la lecture.

Attention : Précédemment, nous faisions des Serial0.read() consécutifs, cela rend le code moche et épais. On utilise maintenant Serial.readBytes(rawData,21) qui permet de lire N octets en une seule ligne. Ici rawData est un ensemble d'octets, sa taille est fixée à 21 (données des capteurs + compteur).

La vérification des identifiants se fait maintenant de cette manière :

image

Cela facilitera l'implémentation des autres patchs.

Les données brutes sont maintenant stockées dans l'ensemble suivant :

image

(Cela n'est que pour l'affichage, mais il sera supprimmé pour le code final)

La récupération des données pour l'affichage se fait maintenant de cette manière :

image

Il est important que ces valeurs gyroscopiques soient du type int16_t et non uint16_t.

Résultats

Sur le terminal de VSCode, on observe ceci :

image