Dependencies:   mbed

Committer:
Enenkel
Date:
Tue Jun 02 07:50:10 2015 +0000
Revision:
0:0e33c5501b99
HI_Temp_LM75B

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Enenkel 0:0e33c5501b99 1 /***********************************
Enenkel 0:0e33c5501b99 2 name: BERTL_2014_TEST
Enenkel 0:0e33c5501b99 3 author: Gottfried Enenkel HTL BULME
Enenkel 0:0e33c5501b99 4 email: ene@bulme.at
Enenkel 0:0e33c5501b99 5 description:
Enenkel 0:0e33c5501b99 6 meßt die Temeratur und zegt sie am PC an
Enenkel 0:0e33c5501b99 7
Enenkel 0:0e33c5501b99 8 ***********************************/
Enenkel 0:0e33c5501b99 9 #include "mbed.h"
Enenkel 0:0e33c5501b99 10 #include "LM75B.h"
Enenkel 0:0e33c5501b99 11 // **************** KONSTANTE ****************
Enenkel 0:0e33c5501b99 12 //Create an LM75B object at the default address (ADDRESS_0)
Enenkel 0:0e33c5501b99 13 LM75B sensor(p28, p27); //i²C Sensor Leitungen
Enenkel 0:0e33c5501b99 14
Enenkel 0:0e33c5501b99 15 DigitalOut pumpe(LED1);
Enenkel 0:0e33c5501b99 16 DigitalOut Vauf(LED2); //Heizungsventil AUF
Enenkel 0:0e33c5501b99 17 DigitalOut Vzu(LED3); //Heizungsventil ZU
Enenkel 0:0e33c5501b99 18 float(Tsoll); //Soll Temperatur
Enenkel 0:0e33c5501b99 19 float(Tist);
Enenkel 0:0e33c5501b99 20 float(Tmp); // Rechenwert
Enenkel 0:0e33c5501b99 21
Enenkel 0:0e33c5501b99 22 // ****************** HAUPTPROGRAMM *****************
Enenkel 0:0e33c5501b99 23 int main()
Enenkel 0:0e33c5501b99 24 {
Enenkel 0:0e33c5501b99 25 Vzu=1; // Vorlaufventil zu machen bis es wirklich zu ist!
Enenkel 0:0e33c5501b99 26 wait (90); // 90 sec lang auf !
Enenkel 0:0e33c5501b99 27 Vzu = 0;
Enenkel 0:0e33c5501b99 28
Enenkel 0:0e33c5501b99 29 Tsoll=30;
Enenkel 0:0e33c5501b99 30
Enenkel 0:0e33c5501b99 31 //Try to open the LM75B
Enenkel 0:0e33c5501b99 32 if (sensor.open()) {
Enenkel 0:0e33c5501b99 33 printf("Device detected!\n\r");
Enenkel 0:0e33c5501b99 34 while (1) {
Enenkel 0:0e33c5501b99 35 //Print the current temperature
Enenkel 0:0e33c5501b99 36 printf("Temp = %.3f", (float)sensor);
Enenkel 0:0e33c5501b99 37 printf(" Soll Temperatur = %.1f\n\r", (float)Tsoll);
Enenkel 0:0e33c5501b99 38 //Sleep for 0.5 seconds
Enenkel 0:0e33c5501b99 39 wait(0.5);
Enenkel 0:0e33c5501b99 40
Enenkel 0:0e33c5501b99 41 //zu KALT
Enenkel 0:0e33c5501b99 42 if ((float)sensor < Tsoll-0.2 ) {
Enenkel 0:0e33c5501b99 43 Vauf = 1;
Enenkel 0:0e33c5501b99 44 Vzu = 0;
Enenkel 0:0e33c5501b99 45 }
Enenkel 0:0e33c5501b99 46 //zu WARM
Enenkel 0:0e33c5501b99 47 if ((float)sensor > Tsoll+0.1 ){
Enenkel 0:0e33c5501b99 48 Vzu = 1;
Enenkel 0:0e33c5501b99 49 Vauf = 0;
Enenkel 0:0e33c5501b99 50 }
Enenkel 0:0e33c5501b99 51 }
Enenkel 0:0e33c5501b99 52
Enenkel 0:0e33c5501b99 53 }
Enenkel 0:0e33c5501b99 54 else {
Enenkel 0:0e33c5501b99 55 error("Device not detected!\n");
Enenkel 0:0e33c5501b99 56 }
Enenkel 0:0e33c5501b99 57 }
Enenkel 0:0e33c5501b99 58 // ******************* ENDE ************************