An example program using the Sprint Mobile Braodband to provide and SMS alert when the temperature read from the LM75B exceeds 32^C
Dependencies: LM75B SprintUSBModem mbed-rtos mbed
Fork of SprintUSBModemSMSTest by
main.cpp@1:17036ca8cb9f, 2012-10-31 (annotated)
- Committer:
- chris
- Date:
- Wed Oct 31 01:35:49 2012 +0000
- Revision:
- 1:17036ca8cb9f
- Parent:
- 0:9488714d539f
First commit;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
donatien | 0:9488714d539f | 1 | #include "mbed.h" |
donatien | 0:9488714d539f | 2 | #include "SprintUSBModem.h" |
chris | 1:17036ca8cb9f | 3 | #include "LM75B.h" |
donatien | 0:9488714d539f | 4 | |
chris | 1:17036ca8cb9f | 5 | LM75B tmp(p28,p27); |
chris | 1:17036ca8cb9f | 6 | |
chris | 1:17036ca8cb9f | 7 | #define MY_PHONE_NUMBER "+447957363267" |
donatien | 0:9488714d539f | 8 | |
chris | 1:17036ca8cb9f | 9 | void test(void const*) |
donatien | 0:9488714d539f | 10 | { |
chris | 1:17036ca8cb9f | 11 | DigitalOut led4(LED4); |
donatien | 0:9488714d539f | 12 | SprintUSBModem modem(p18); |
chris | 1:17036ca8cb9f | 13 | char msg[128]; |
chris | 1:17036ca8cb9f | 14 | |
donatien | 0:9488714d539f | 15 | |
donatien | 0:9488714d539f | 16 | printf("Switching power on\r\n"); |
donatien | 0:9488714d539f | 17 | modem.power(true); |
chris | 1:17036ca8cb9f | 18 | |
donatien | 0:9488714d539f | 19 | modem.sendSM(MY_PHONE_NUMBER, "Hello from mbed:)"); |
donatien | 0:9488714d539f | 20 | |
chris | 1:17036ca8cb9f | 21 | while(true) { |
chris | 1:17036ca8cb9f | 22 | if (tmp.read() > 32.0) { |
chris | 1:17036ca8cb9f | 23 | led4 = 1; |
chris | 1:17036ca8cb9f | 24 | sprintf(msg,"Temperature : %.1f!",tmp.read()); |
chris | 1:17036ca8cb9f | 25 | modem.sendSM(MY_PHONE_NUMBER, msg); |
chris | 1:17036ca8cb9f | 26 | while (tmp.read() > 30.0) { |
chris | 1:17036ca8cb9f | 27 | Thread::wait(1000); |
chris | 1:17036ca8cb9f | 28 | } |
chris | 1:17036ca8cb9f | 29 | led4=0; |
donatien | 0:9488714d539f | 30 | } |
chris | 1:17036ca8cb9f | 31 | } |
donatien | 0:9488714d539f | 32 | |
chris | 1:17036ca8cb9f | 33 | modem.disconnect(); |
chris | 1:17036ca8cb9f | 34 | |
chris | 1:17036ca8cb9f | 35 | modem.power(false); |
chris | 1:17036ca8cb9f | 36 | |
donatien | 0:9488714d539f | 37 | } |
donatien | 0:9488714d539f | 38 | |
donatien | 0:9488714d539f | 39 | |
donatien | 0:9488714d539f | 40 | int main() |
donatien | 0:9488714d539f | 41 | { |
chris | 1:17036ca8cb9f | 42 | DBG_INIT(); |
chris | 1:17036ca8cb9f | 43 | DBG_SET_SPEED(115200); |
chris | 1:17036ca8cb9f | 44 | DBG_SET_NEWLINE("\r\n"); |
chris | 1:17036ca8cb9f | 45 | Thread testTask(test, NULL, osPriorityNormal, 1024 * 5); |
chris | 1:17036ca8cb9f | 46 | DigitalOut led(LED1); |
chris | 1:17036ca8cb9f | 47 | while(1) { |
chris | 1:17036ca8cb9f | 48 | led=!led; |
chris | 1:17036ca8cb9f | 49 | Thread::wait(1000); |
chris | 1:17036ca8cb9f | 50 | } |
donatien | 0:9488714d539f | 51 | |
chris | 1:17036ca8cb9f | 52 | return 0; |
donatien | 0:9488714d539f | 53 | } |