Ligne 99 : |
Ligne 99 : |
| ==Explication du code et lien vers le Git== | | ==Explication du code et lien vers le Git== |
| ===Code STMCubeIDE=== | | ===Code STMCubeIDE=== |
− | Pour réaliser la communication UART entre la STM32 et notre module Bluetooth, on commence par brancher les câbles comme mentionnées un peu plus haut. On doit ensuite configurer notre projet sur STMCubeIDE. Pour cela il suffit de sélectionner l'UART, de l'activer puis de régler certains paramètres.
| + | Comme nous l'avons expliqué dans le rapport nous avons utilisé les fonctions suivantes dans notre code sur STMCubeIDE ; |
− | On pourra ainsi modifier le baudrate, la structure de la trame (nombre de bit de stop, nombre de bits de données...), activer ou non les interruptions... Dans notre cas, on choisira le mode Asynchrone pour l'UART, un baudrate de 9600 et on activera les interruptions.
| |
− | | |
− | Une fois ces réglages réalisés, notre communication est opérationnelle. On pourra ainsi utiliser différentes fonctions dans le code de la STM32 pour envoyer les données sur les pins de l'UART4.
| |
− | On utilisera par exemple les fonctions :
| |
| '''HAL_UART_Transmit_IT'''(&huart4, (uint8_t*) txt_a_envoyer,sizeof(txt_a_envoyer)); | | '''HAL_UART_Transmit_IT'''(&huart4, (uint8_t*) txt_a_envoyer,sizeof(txt_a_envoyer)); |
| '''HAL_Delay'''(temps) qu'on remplacera par osDelay(temps) avec l'utilisation de FreeRTOS | | '''HAL_Delay'''(temps) qu'on remplacera par osDelay(temps) avec l'utilisation de FreeRTOS |
Ligne 114 : |
Ligne 110 : |
| [[Fichier:Terminal text.png|200px|vignette|centré|Réception des données ]] | | [[Fichier:Terminal text.png|200px|vignette|centré|Réception des données ]] |
| | | |
− | '''Choix des valeurs à afficher'''<br>
| + | Pour rappel, nous avons affichés à l'écran les données suivantes : |
− | Nous avons discuté avec les autres groupes travaillant sur le robot pour savoir quels types d'informations ils aimeraient que l'on affiche sur notre écran.
| |
− | Nous allons donc afficher les données suivantes :
| |
| *Tension de la batterie | | *Tension de la batterie |
| *Distance parcourue | | *Distance parcourue |
| *Vitesse du robot | | *Vitesse du robot |
− | *Coordonnées du robot (position) | + | *Coordonnées du robot (position x et y) |
− | *Trajectoire (peut-être), le but serait qu'à la fin du parcours on affiche graphiquement la trajectoire qu'a emprunté le robot. Mais à voir si cela est possible et utile surtout
| |
− | | |
− | Nous aimerions également pouvoir stocker les données recueillies pendant le parcours du robot. Toutes ces informations pourraient nous permettre pendant le parcours de vérifier le bon fonctionnement du robot. En cas d'erreur/problème/bug on pourra étudier les données stockées pour tentant de trouver l'origine du problème.
| |
− | | |
− | On pense également qu'il pourrait être intéressant de rajouter une option sur l'écran de contrôle permettant l'arrêt d'urgence du robot en cas de problème détecté. Pour cela, nous avons travaillé avec Florian et Flavien qui travaillent sur la carte de puissance pour qu'ils intègrent cela à leur système.
| |
| | | |
| <br> | | <br> |