This program read temperature using two LM35 sensors on A0 and A1 analog inputs and displays average temperature using serial. Also, if the temp is in the range (18,22) C then the green led is on, if the temp is in the range (16,18) and (22,24) C the blue led is on, else red led will be on. You can see the connection diagram on my blog sdizdarevic.com soon.
Revision 0:cd3e218305bb, committed 2014-08-06
- Comitter:
- sdizdarevic
- Date:
- Wed Aug 06 13:03:00 2014 +0000
- Commit message:
- Program to read and display temperature using two LM35 temperature sensors
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
mbed.bld | Show annotated file Show diff for this revision Revisions of this file |
diff -r 000000000000 -r cd3e218305bb main.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/main.cpp Wed Aug 06 13:03:00 2014 +0000 @@ -0,0 +1,56 @@ +/* + This program read temperature using two LM35 + sensors on A0 and A1 analog inputs and displays + average temperature using serial + Also, if the temp is in the range (18,22) C then + the green led is on, if the temp is in the range + (16,18) and (22,24) C the blue led is on, else + red led will be on. + You can see the connection diagram on my blog + sdizdarevic.com soon +*/ + + +#include "mbed.h" +DigitalOut red(LED_RED); // Red led +DigitalOut blue(LED_BLUE); //blue led +DigitalOut green(LED_GREEN); // green LED +AnalogIn T1(PTB2); // temperature sensor T1 on A0 +AnalogIn T2(PTB3); // temperature sensor T2 on A1 +float T; // average temperature +float tempF; //average temperature in Fahrenheit +float K=3.3*100; // scaling coefficient for calculating + // analog value to temperature + + Serial pc(USBTX,USBRX); // print temperature on console (eg. Putty) + + +int main() { + pc.printf("LM35 temperature sensor\n"); + + while(1) { + red=0;//red=0; + blue=0; //blue=0; + green=0; //green=0; + T=(T1+T1)/2.*K; // average temperature value in Celsius (C) + + +tempF=(9.0*T)/5.0 + 32.0; //average temperature value in fahrenheit (F) + + + + wait(0.2f); //wait a little + pc.printf("Temperature (in Celsius) is %4.2f \r\n",T); + + + wait(0.2f); //wait a little + pc.printf("Temperature (in Fahrenheit) is %4.2f \r\n",tempF); + + + if ( T>=18 && T<=22 ) green=1; + else if ((T>=16 && T<18)||(T>22 && T<=24)) blue=1; + else red=1; + wait(0.2); + + } +} \ No newline at end of file
diff -r 000000000000 -r cd3e218305bb mbed.bld --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed.bld Wed Aug 06 13:03:00 2014 +0000 @@ -0,0 +1,1 @@ +http://mbed.org/users/mbed_official/code/mbed/builds/6213f644d804 \ No newline at end of file