Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp
00001 //============================================================================== 00002 // FabLab Nîmes 00003 // Initiation à la Programmation 00004 // Auteur : Frédéric Giamarchi 00005 00006 // Date : 06 janv. 2022 00007 // TP : Mesure de la température par une résistance CTN de 4,7k Ohm 00008 // Affichage de la température sur le PC 00009 //============================================================================== 00010 // Déclarations des ressources 00011 #include "mbed.h" 00012 00013 //============================================================================== 00014 // Déclaration des broches 00015 DigitalOut DEL_RO(PA_11); // Ligne PA_11 sur la carte Nucléo 00016 Serial pc(USBTX, USBRX); // Dialogue Série port USB à 9600 Baud 00017 AnalogIn POT(PA_0); // Ligne PA_0 en entrée analogique 00018 00019 //============================================================================== 00020 // Déclaration des variables 00021 uint8_t variable; // variable de type entier (0 à 255) 00022 char c; // variable de type caractère 00023 float temp, temp_mes; // variable de type réel 00024 uint16_t mesure; 00025 00026 //============================================================================== 00027 // Déclaration des Fonctions 00028 float tab[100]; 00029 uint8_t k; 00030 float somme; 00031 00032 // Fonction qui calcule la moyenne de x valeurs et renvoit un résultat 00033 float Moyenne(float valeur, uint8_t nb) 00034 { 00035 somme = somme - tab[k]+ valeur; // Calcul de la somme 00036 tab[k] = valeur; // Mémorise la nouvelle valeur dans le tableau 00037 00038 k++; 00039 if (k == nb) // Limitation du tableau à "nb" valeurs 00040 k = 0; 00041 00042 return somme / nb; // Calcule de la moyenne et renvoit le résultat 00043 } 00044 00045 //============================================================================== 00046 // Début du Programme 00047 int main() // Fonction principale 00048 { 00049 pc.printf("\r\nFabLab TP Mesure Temperature\r\n\n"); 00050 k = 0; 00051 00052 //============================================================================== 00053 // Boucle Infinie 00054 while(1) 00055 { 00056 // mesure = POT.read()*3.3f; // Mesure de la tension 00057 mesure = POT.read_u16()>>4; // Mesure de la valeur numérique alignée à gauche qui doit être replacer à droite 00058 temp = (mesure - 966)*0.023f - 2; // Linéarisation et correction 00059 temp_mes = temp; // Température mesurée 00060 temp = Moyenne (temp,50); // Calcul de la moyenne sur 50 valeurs 00061 00062 wait_ms(50); 00063 pc.printf("Mes: %.1f Moy: %.1f\r\n",temp_mes,temp); 00064 00065 } // Fin du while(1) 00066 //============================================================================== 00067 } // Fin du Programme 00068 //==============================================================================
Generated on Wed Jul 20 2022 16:28:23 by
1.7.2