GPS/GSM serial test for Crunchtrack https://hackaday.io/project/7134-crunchtrack

Dependencies:   GPS_CanSat mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "mbed.h"
00002 #include "GPS.h"
00003   
00004  Serial pc(SERIAL_TX, SERIAL_RX);
00005  //v0.2
00006  Serial GSM(PC_10, PC_11);
00007 // Serial GPS(PB_6, PB_7);
00008  GPS g1(PB_6, PB_7);
00009 
00010  
00011  //v0.1
00012  //Serial GPS(PC_10, PC_11);
00013  //Serial GSM(PA_14, PA_15);
00014  
00015 //breadboard
00016 //Serial GSM(PB_6, PB_7);
00017 //Serial GPS(PC_4, PC_5);
00018 
00019 //GPS g1(PC_10, PC_11);
00020 
00021 DigitalIn mybutton(USER_BUTTON);
00022 DigitalOut myled(PB_2);
00023 DigitalOut GSMsw(PA_15);
00024 
00025 DigitalOut DET(PB_13);
00026  /*
00027 int main() {
00028   while(1) {
00029     if (mybutton == 0) { // Button is pressed
00030       myled = !myled; // Toggle the LED state
00031       wait(0.2); // 200 ms
00032     }
00033   }
00034 }
00035  */
00036  
00037 int main() {
00038   
00039   DET = 0;
00040   
00041   pc.baud(115200);
00042   //GPS.baud(9600);
00043   GSM.baud(115200);
00044   int i = 1;
00045   pc.printf("Hello World !\n");
00046   
00047   
00048   ///INIT
00049   myled = 1;
00050   //GSMsw = 1;
00051   wait(1);
00052   myled = 0;
00053   
00054   pc.printf("ON\n");
00055    
00056       
00057   /*    GSM.printf("AT\n");
00058   wait(1);
00059       GSM.printf("AT\n");
00060   wait(1);*/
00061       
00062  while(1) { 
00063  
00064         
00065   //GSM.printf("AT\n");
00066   
00067       /*if(GSM.readable())
00068         pc.putc(GSM.getc());
00069       if(pc.readable())
00070         GSM.putc(pc.getc());*/
00071        
00072       /*if(GPS.readable())
00073         pc.putc(GPS.getc());
00074       if(pc.readable())
00075         GPS.putc(pc.getc());*/
00076        
00077 
00078       wait(1);
00079       pc.printf("ns: %d\r\n", g1.ns());
00080       pc.printf("ew: %d\r\n", g1.ew());
00081       pc.printf("lock: %d\r\n", g1.lock());
00082       pc.printf("t: %f\r\n", g1.time());
00083       pc.printf("lat: %f\r\n", g1.latitude());
00084       pc.printf("lon: %f\r\n", g1.longitude());
00085       /*pc.printf("This program runs since %d seconds.\n", i++);
00086       s3.putc('U');
00087       while(GPS.readable())
00088         pc.putc(GPS.getc());
00089         */
00090         /*
00091         pc.putc('G');
00092        while(GSM.readable())
00093         pc.putc(GSM.getc());
00094      GSM.printf("AT+CGMI\n\r");
00095       //wait(0.001);
00096       while(GSM.readable())
00097         pc.putc(GSM.getc());
00098         */
00099        
00100         
00101       //myled = !myled;
00102   }
00103 }
00104