Wireless temperature transmitter with ER400TRS transceiver and MCP9700 temperature sensor.

Dependencies:   mbed

Committer:
lnadal
Date:
Wed Aug 31 04:08:11 2011 +0000
Revision:
0:407b38152be7

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
lnadal 0:407b38152be7 1
lnadal 0:407b38152be7 2 /*
lnadal 0:407b38152be7 3 ****************************************************************************************************
lnadal 0:407b38152be7 4 Wireless temperature transmitter with ER400TRS wireless transceiver and MCP9700 temperature sensor.
lnadal 0:407b38152be7 5 433 MHz transceiver. 180 bytes of data. 19200 Baud.
lnadal 0:407b38152be7 6 MCP9700 temperature sensor: -40ºC - +125ºC.
lnadal 0:407b38152be7 7
lnadal 0:407b38152be7 8 Wiring MCP9700:
lnadal 0:407b38152be7 9 p1: +3V3. p2(Vout): mBed's p15. p3: ground.
lnadal 0:407b38152be7 10
lnadal 0:407b38152be7 11 Wiring ER400TRS:
lnadal 0:407b38152be7 12 p1: antenna(17 cm). p2,p7(Host Ready Input) and p9: ground.
lnadal 0:407b38152be7 13 p6(Serial Data In): mBed's p9(tx). p8: Vcc = +5 V.
lnadal 0:407b38152be7 14
lnadal 0:407b38152be7 15 Author: Lluis Nadal. August 2011.
lnadal 0:407b38152be7 16 *****************************************************************************************************
lnadal 0:407b38152be7 17 */
lnadal 0:407b38152be7 18
lnadal 0:407b38152be7 19 #include "mbed.h"
lnadal 0:407b38152be7 20 //#include "TextLCD.h" . Optional
lnadal 0:407b38152be7 21
lnadal 0:407b38152be7 22 // LCD optional
lnadal 0:407b38152be7 23 // Define LCD connections.
lnadal 0:407b38152be7 24 //TextLCD lcd(p24, p26, p27, p28, p29, p30); // rs, e, d4, d5, d6, d7
lnadal 0:407b38152be7 25
lnadal 0:407b38152be7 26 Serial pc(USBTX, USBRX); // tx, rx
lnadal 0:407b38152be7 27 Serial transmitter(p9, p10); // tx, rx
lnadal 0:407b38152be7 28 AnalogIn temp(p15);
lnadal 0:407b38152be7 29
lnadal 0:407b38152be7 30 char s1[10];
lnadal 0:407b38152be7 31 char s2[10];
lnadal 0:407b38152be7 32 float T;
lnadal 0:407b38152be7 33
lnadal 0:407b38152be7 34
lnadal 0:407b38152be7 35 float tempRead() {
lnadal 0:407b38152be7 36
lnadal 0:407b38152be7 37 float Ta = 0.0;
lnadal 0:407b38152be7 38 float t = temp.read(); // read the analog data
lnadal 0:407b38152be7 39 Ta = ((t * 3.3) - 0.5)/ 0.01;
lnadal 0:407b38152be7 40
lnadal 0:407b38152be7 41 return Ta; // return the temp
lnadal 0:407b38152be7 42 }
lnadal 0:407b38152be7 43
lnadal 0:407b38152be7 44
lnadal 0:407b38152be7 45 int main() {
lnadal 0:407b38152be7 46
lnadal 0:407b38152be7 47 //lcd.cls();
lnadal 0:407b38152be7 48 pc.printf("Init: 19200 Baud\r\n\r\n");
lnadal 0:407b38152be7 49 //lcd.printf("Init: 19200 Baud");
lnadal 0:407b38152be7 50 wait(2);
lnadal 0:407b38152be7 51 transmitter.baud(19200);
lnadal 0:407b38152be7 52
lnadal 0:407b38152be7 53 while (1) {
lnadal 0:407b38152be7 54 T = tempRead();
lnadal 0:407b38152be7 55 sprintf(s1, "%.1f", T);
lnadal 0:407b38152be7 56 sprintf(s2, "%.1f\n", T); //scanf in the receiver needs a whitespace or newline character
lnadal 0:407b38152be7 57 transmitter.printf(s2);
lnadal 0:407b38152be7 58 //lcd.cls();
lnadal 0:407b38152be7 59 sprintf(s1,"%s C", s1);
lnadal 0:407b38152be7 60 pc.printf(" %s\r\n", s1);
lnadal 0:407b38152be7 61 //lcd.printf(s1);
lnadal 0:407b38152be7 62
lnadal 0:407b38152be7 63 wait(2);
lnadal 0:407b38152be7 64 }
lnadal 0:407b38152be7 65 }