¡¡LAB 11!!

Dependencies:   ATParser TSL2561 mbed

Fork of Lab10 by CPS_Lab*

Committer:
youngs2
Date:
Tue Apr 24 22:51:44 2018 +0000
Revision:
6:fb1a4c235357
Parent:
5:3b7d8eb3cf35
added sleep when not connecting or taking data

Who changed what in which revision?

UserRevisionLine numberNew contents of line
youngs2 0:c88efeed88e3 1 #include "mbed.h"
youngs2 0:c88efeed88e3 2 #include "ATParser.h"
youngs2 0:c88efeed88e3 3 #include "TSL2561.h"
youngs2 0:c88efeed88e3 4 #include <string.h>
youngs2 0:c88efeed88e3 5 #include <stdlib.h>
youngs2 0:c88efeed88e3 6
youngs2 0:c88efeed88e3 7 BufferedSerial pc(SERIAL_TX, SERIAL_RX);
youngs2 0:c88efeed88e3 8 BufferedSerial device(PA_9, PA_10); // tx, rx
youngs2 0:c88efeed88e3 9 DigitalOut myled(LED1);
youngs2 0:c88efeed88e3 10 TSL2561 lightsensor(PB_7,PB_6);
youngs2 4:ea91348c1e16 11 LowPowerTicker flipper;
youngs2 4:ea91348c1e16 12 DigitalOut Teddy(D8);
youngs2 4:ea91348c1e16 13 ATParser at = ATParser(device, "\n\r", 256, 2000, false);
youngs2 0:c88efeed88e3 14
youngs2 4:ea91348c1e16 15 int i =0;
youngs2 4:ea91348c1e16 16 char *day[5];
youngs2 4:ea91348c1e16 17
youngs2 4:ea91348c1e16 18
youngs2 4:ea91348c1e16 19 void sendit()
youngs2 6:fb1a4c235357 20 {
youngs2 6:fb1a4c235357 21 int sleepvar = 1;
youngs2 4:ea91348c1e16 22 float lightnum = lightsensor.lux();
youngs2 4:ea91348c1e16 23 pc.printf("light = %.5f\n\r", lightnum);
youngs2 4:ea91348c1e16 24 day[i] = new char[8];
youngs2 4:ea91348c1e16 25 sprintf(day[i], "%f", lightnum);
youngs2 4:ea91348c1e16 26 i++;
youngs2 4:ea91348c1e16 27 if (i == 5)
youngs2 4:ea91348c1e16 28 {
youngs2 4:ea91348c1e16 29 Teddy = 1;
youngs2 4:ea91348c1e16 30 int j;
youngs2 4:ea91348c1e16 31 for(j = 0; j < 5; j++)
youngs2 4:ea91348c1e16 32 {
youngs2 4:ea91348c1e16 33 if(at.send("AT+SEND=\"%s\"", day[j]) && 1)
youngs2 4:ea91348c1e16 34 {
youngs2 4:ea91348c1e16 35 pc.printf("success\n\r");
youngs2 4:ea91348c1e16 36 }
youngs2 4:ea91348c1e16 37 else
youngs2 4:ea91348c1e16 38 pc.printf("iserox\n\r");
youngs2 4:ea91348c1e16 39 }
youngs2 4:ea91348c1e16 40 Teddy = 0;
youngs2 4:ea91348c1e16 41 i = 0;
youngs2 4:ea91348c1e16 42 for(j=0; j < 5; j++)
youngs2 4:ea91348c1e16 43 {
youngs2 4:ea91348c1e16 44 free(day[j]);
youngs2 4:ea91348c1e16 45 }
youngs2 6:fb1a4c235357 46 }
youngs2 6:fb1a4c235357 47 sleepvar = 0;
youngs2 4:ea91348c1e16 48 }
youngs2 4:ea91348c1e16 49
youngs2 4:ea91348c1e16 50 void connect()
youngs2 0:c88efeed88e3 51 {
youngs2 0:c88efeed88e3 52 if(at.send("AT") && at.recv("\n\r"))
youngs2 0:c88efeed88e3 53 pc.printf("Bueno#1\n\r");
youngs2 0:c88efeed88e3 54 else
youngs2 0:c88efeed88e3 55 pc.printf("Nope#1\n\r");
youngs2 0:c88efeed88e3 56 if(at.send("AT+NI=1,MTCDT-19400691") && 1)
youngs2 0:c88efeed88e3 57 pc.printf("Bueno#2\n\r");
youngs2 0:c88efeed88e3 58 else
youngs2 0:c88efeed88e3 59 pc.printf("Nope#2\n\r");
youngs2 0:c88efeed88e3 60 if(at.send("AT+NK=1,MTCDT-19400691") && 1)
youngs2 0:c88efeed88e3 61 pc.printf("Bueno #3\n\r");
youngs2 0:c88efeed88e3 62 else
youngs2 0:c88efeed88e3 63 pc.printf("Nope #3\n\r");
youngs2 0:c88efeed88e3 64 if(at.send("AT+FSB=1") && 1)
youngs2 0:c88efeed88e3 65 pc.printf("Bueno #4\n\r");
youngs2 0:c88efeed88e3 66 else
youngs2 0:c88efeed88e3 67 pc.printf("Nope #4\n\r");
youngs2 0:c88efeed88e3 68 if(at.send("AT+JOIN")&& 1)
youngs2 0:c88efeed88e3 69 pc.printf("Bueno #5\n\r");
youngs2 0:c88efeed88e3 70 else
youngs2 4:ea91348c1e16 71 pc.printf("Nope #5\n\r");
youngs2 4:ea91348c1e16 72 }
youngs2 4:ea91348c1e16 73
youngs2 1:62d78e5748b6 74
youngs2 4:ea91348c1e16 75 int main()
youngs2 4:ea91348c1e16 76 {
youngs2 4:ea91348c1e16 77 pc.baud(115200);
youngs2 4:ea91348c1e16 78 device.baud(115200);
youngs2 5:3b7d8eb3cf35 79 pc.printf("Hola!!\n\r");
youngs2 4:ea91348c1e16 80 Teddy = 0;
youngs2 4:ea91348c1e16 81 connect();
youngs2 4:ea91348c1e16 82 flipper.attach(&sendit, 10);
youngs2 6:fb1a4c235357 83 while(sleepvar == 0)
youngs2 0:c88efeed88e3 84 {
youngs2 6:fb1a4c235357 85 sleep();
youngs2 0:c88efeed88e3 86 }
youngs2 0:c88efeed88e3 87 }