FabLab Nîmes / Mbed 2 deprecated FabLab_Station_Meteo

Dependencies:   mbed

Committer:
Giamarchi
Date:
Thu Jun 16 17:05:58 2022 +0000
Revision:
6:5a2c3d7d4623
Parent:
5:46a732673cc5
maj

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Giamarchi 2:c1a4641eeacf 1 //==============================================================================
Giamarchi 2:c1a4641eeacf 2 // FabLab Nîmes
Giamarchi 2:c1a4641eeacf 3 // Initiation à la Programmation
Giamarchi 2:c1a4641eeacf 4 // Auteur : Frédéric Giamarchi
Giamarchi 2:c1a4641eeacf 5
Giamarchi 6:5a2c3d7d4623 6 // Date : 04 juin 2022
Giamarchi 6:5a2c3d7d4623 7 // TP : Station Meteo
Giamarchi 4:610e1572bd1b 8 //
Giamarchi 2:c1a4641eeacf 9 // Utilisation de fonctions décrites dans un fichier séparé
Giamarchi 2:c1a4641eeacf 10 //==============================================================================
Giamarchi 2:c1a4641eeacf 11 // Déclarations des ressources
Giamarchi 0:531f33a2550d 12 #include "mbed.h"
Giamarchi 2:c1a4641eeacf 13 #include "fonctions.h" // Appel des fonctions du fichier : fonctions.h
Giamarchi 6:5a2c3d7d4623 14 #include "serial.h"
Giamarchi 6:5a2c3d7d4623 15 #include "anemo.h"
Giamarchi 2:c1a4641eeacf 16
Giamarchi 2:c1a4641eeacf 17 //==============================================================================
Giamarchi 2:c1a4641eeacf 18 // Déclaration des variables
Giamarchi 6:5a2c3d7d4623 19 unsigned char c; // variable de type caractère
Giamarchi 3:c75f8eddeaf4 20 float temp; // variable de type réel
Giamarchi 6:5a2c3d7d4623 21 unsigned int vitesse; // variable de type 16 bits signée
Giamarchi 6:5a2c3d7d4623 22 unsigned int etat;
Giamarchi 6:5a2c3d7d4623 23 unsigned int cmd_menu;
Giamarchi 1:95172f59262a 24
Giamarchi 2:c1a4641eeacf 25 //==============================================================================
Giamarchi 2:c1a4641eeacf 26 // Début du Programme
Giamarchi 2:c1a4641eeacf 27 int main() // Fonction principale
Giamarchi 0:531f33a2550d 28 {
Giamarchi 6:5a2c3d7d4623 29 Init_Fonctions(); // Exécute cette fonction
Giamarchi 6:5a2c3d7d4623 30
Giamarchi 3:c75f8eddeaf4 31
Giamarchi 6:5a2c3d7d4623 32 Init_Serial();
Giamarchi 6:5a2c3d7d4623 33
Giamarchi 6:5a2c3d7d4623 34 etat = 0;
Giamarchi 2:c1a4641eeacf 35 //==============================================================================
Giamarchi 2:c1a4641eeacf 36 // Boucle Infinie
Giamarchi 6:5a2c3d7d4623 37 while(true)
Giamarchi 0:531f33a2550d 38 {
Giamarchi 6:5a2c3d7d4623 39 Commande_Up(); // Lecture d'une commande montante
Giamarchi 6:5a2c3d7d4623 40
Giamarchi 6:5a2c3d7d4623 41 switch (etat)
Giamarchi 5:46a732673cc5 42 {
Giamarchi 6:5a2c3d7d4623 43 case 0: // Initialisation du système
Giamarchi 6:5a2c3d7d4623 44 Init_Anemo();
Giamarchi 6:5a2c3d7d4623 45
Giamarchi 6:5a2c3d7d4623 46 cmd_menu = 0;
Giamarchi 6:5a2c3d7d4623 47 etat = 1;
Giamarchi 6:5a2c3d7d4623 48 break;
Giamarchi 6:5a2c3d7d4623 49 case 1: // Menu
Giamarchi 6:5a2c3d7d4623 50 Menu();
Giamarchi 6:5a2c3d7d4623 51 cmd_menu = Get_Config();
Giamarchi 6:5a2c3d7d4623 52 etat = 2;
Giamarchi 6:5a2c3d7d4623 53 break;
Giamarchi 6:5a2c3d7d4623 54 case 2: // Gestion des Instrumesnts
Giamarchi 6:5a2c3d7d4623 55 // Gestion_Temperature(cmd_menu);
Giamarchi 6:5a2c3d7d4623 56 Gestion_Anemometre(cmd_menu);
Giamarchi 6:5a2c3d7d4623 57 // Gestion_Girouette(cmd_menu);
Giamarchi 6:5a2c3d7d4623 58 // Gestion_Pluviometre(cmd_menu);
Giamarchi 6:5a2c3d7d4623 59 etat = 3;
Giamarchi 6:5a2c3d7d4623 60 break;
Giamarchi 6:5a2c3d7d4623 61 case 3: // Gestion des données
Giamarchi 6:5a2c3d7d4623 62 vitesse = Lecture_Anemometre();
Giamarchi 6:5a2c3d7d4623 63 if(vitesse > 0)
Giamarchi 6:5a2c3d7d4623 64 {
Giamarchi 6:5a2c3d7d4623 65 pc.printf("#A%d\r\n",vitesse);
Giamarchi 6:5a2c3d7d4623 66 }
Giamarchi 6:5a2c3d7d4623 67 etat = 1;
Giamarchi 6:5a2c3d7d4623 68 break;
Giamarchi 6:5a2c3d7d4623 69 default:
Giamarchi 6:5a2c3d7d4623 70 etat = 0;
Giamarchi 6:5a2c3d7d4623 71 break;
Giamarchi 5:46a732673cc5 72 }
Giamarchi 6:5a2c3d7d4623 73 }// Fin du while(true)
Giamarchi 2:c1a4641eeacf 74 //==============================================================================
Giamarchi 6:5a2c3d7d4623 75 }// Fin du Programme
Giamarchi 6:5a2c3d7d4623 76 //==============================================================================