Modifications

801 octets ajoutés ,  23 mars 2021 à 17:01
Ligne 429 : Ligne 429 :  
[[Fichier:Terminal.png|200px|vignette|centré|Réception de données]]
 
[[Fichier:Terminal.png|200px|vignette|centré|Réception de données]]
    +
'''Système d'exploitation Temps Réel''' <br>
 
[[Fichier:Logo freertos.jpg|vignette|droite]]
 
[[Fichier:Logo freertos.jpg|vignette|droite]]
Pour suivre le schéma de code utilisé par les autres groupes, nous avons dû créer une nouvelle tâche avec FreeRTOS : dataDisplayTask. Tout notre code se trouve donc à l'intérieur de cette tâche. FreeRTOS se chargera ensuite d'alterner entre toutes les tâches du programme du robot en fonction de leur priorité. On considère comme vous pouvez vous en douter que notre tâche ne sera que de priorité assez faible puisqu'il s'agit simplement d'affichage. On pourra par contre revoir cette priorité dans le cas où l'on ajoute un bouton d'arrêt sur notre application. Il serait même peut être plus simple de créer une nouvelle tâche uniquement pour l'arrêt d'urgence qui sera de priorité très forte.
+
Afin de coordonner toutes les tâches que le robot a à effectuer, on utilise conjointement avec l'équipe de projet de 4A un OS (système d'exploitation) temps réel. Il s'agit de FreeRTOS. Celui-ci est intégrable directement depuis l'outil stm32cubeide et il est même possible de prédéfinir nos différentes tâches et une multitude de paramètres (les priorités des tâches par exemple). Un OS temps réel permet aussi de gérer la préemptivité (ou la priorité) de chaque tâche, une tâche de haute priorité ayant toujours la priorité sur une tâche de basse priorité. Il va de soit que notre tâche prendra une priorité faible par rapport aux autres tâches puisque le plus important pour le robot est qu'il puisse se diriger et manœuvrer et que notre tache consiste juste à afficher des données. Pour suivre le schéma de code utilisé par les autres groupes, nous avons dû créer une nouvelle tâche avec FreeRTOS : dataDisplayTask. Tout notre code se trouve donc à l'intérieur de cette tâche. FreeRTOS se chargera ensuite d'alterner entre toutes les tâches du programme du robot en fonction de leur priorité. On pourra par contre revoir cette priorité dans le cas où l'on ajoute un bouton d'arrêt d'urgence sur notre application ou même créer une autre tâche spécialement pour ce bouton avec une forte priorité. Une fois la ou les tâche(s) et les paramètres définis, il nous suffit de générer le code et de remplir notre tâche.
    
===Réalisation de l'application===
 
===Réalisation de l'application===
143

modifications