q4

Dependencies:   mbed

Committer:
brunostgr
Date:
Tue Oct 22 13:40:33 2019 +0000
Revision:
0:259f4b805853
q4

Who changed what in which revision?

UserRevisionLine numberNew contents of line
brunostgr 0:259f4b805853 1 #include "mbed.h"
brunostgr 0:259f4b805853 2
brunostgr 0:259f4b805853 3 AnalogIn analog_value(PA_0); // Entree analogique
brunostgr 0:259f4b805853 4 Serial PC(USBTX, USBRX); // Port USB
brunostgr 0:259f4b805853 5 I2C i2c(I2C_SDA,I2C_SCL); // Port I2C
brunostgr 0:259f4b805853 6
brunostgr 0:259f4b805853 7 Ticker enregist; // Fonction d'ecriture dans la EEPROM
brunostgr 0:259f4b805853 8
brunostgr 0:259f4b805853 9 // Declaration des variables
brunostgr 0:259f4b805853 10 float mesure,temp;
brunostgr 0:259f4b805853 11 int compte = 0;
brunostgr 0:259f4b805853 12 char data[1] = {};
brunostgr 0:259f4b805853 13 const int addr = 0xA0;
brunostgr 0:259f4b805853 14
brunostgr 0:259f4b805853 15 void enregistre(){
brunostgr 0:259f4b805853 16
brunostgr 0:259f4b805853 17 // Conversion
brunostgr 0:259f4b805853 18 mesure = analog_value.read(); // Assigne une valeur de 0.0 à 1.0 a mesure
brunostgr 0:259f4b805853 19 temp = mesure * 330; // Conversion en degres Celsius
brunostgr 0:259f4b805853 20 data[1] = (char)temp; // Enregistrement dans data
brunostgr 0:259f4b805853 21
brunostgr 0:259f4b805853 22 // Enregistrement
brunostgr 0:259f4b805853 23 i2c.write(addr,data,1,0);
brunostgr 0:259f4b805853 24
brunostgr 0:259f4b805853 25 // Verification du temps ecoule
brunostgr 0:259f4b805853 26 compte = compte +1;
brunostgr 0:259f4b805853 27 if(compte == 599){
brunostgr 0:259f4b805853 28 enregist.detach();
brunostgr 0:259f4b805853 29 }
brunostgr 0:259f4b805853 30 }
brunostgr 0:259f4b805853 31
brunostgr 0:259f4b805853 32 int main()
brunostgr 0:259f4b805853 33 {
brunostgr 0:259f4b805853 34 enregist.attach(&enregistre,0.1); // Ticker appele a toutes les 100 ms
brunostgr 0:259f4b805853 35 while(1) {
brunostgr 0:259f4b805853 36 // Attente
brunostgr 0:259f4b805853 37 }
brunostgr 0:259f4b805853 38 }