SIM900A

Dependencies:   GPS mbed

Committer:
tusharbhanarkar
Date:
Tue Apr 18 11:22:28 2017 +0000
Revision:
0:f07c569c074c
GSM SIM900;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tusharbhanarkar 0:f07c569c074c 1 #include "mbed.h"
tusharbhanarkar 0:f07c569c074c 2 #include <string>
tusharbhanarkar 0:f07c569c074c 3
tusharbhanarkar 0:f07c569c074c 4
tusharbhanarkar 0:f07c569c074c 5 Serial pc(USBTX, USBRX); // pc comunication
tusharbhanarkar 0:f07c569c074c 6 Serial SIM900(p13, p14); //tx, rx SIM 900
tusharbhanarkar 0:f07c569c074c 7 string result;
tusharbhanarkar 0:f07c569c074c 8 char x;
tusharbhanarkar 0:f07c569c074c 9
tusharbhanarkar 0:f07c569c074c 10
tusharbhanarkar 0:f07c569c074c 11 void clearString()
tusharbhanarkar 0:f07c569c074c 12 {
tusharbhanarkar 0:f07c569c074c 13 result.clear();
tusharbhanarkar 0:f07c569c074c 14 }
tusharbhanarkar 0:f07c569c074c 15
tusharbhanarkar 0:f07c569c074c 16 void callback_rx() {
tusharbhanarkar 0:f07c569c074c 17
tusharbhanarkar 0:f07c569c074c 18 while (SIM900.readable()) {
tusharbhanarkar 0:f07c569c074c 19 x = SIM900.getc();
tusharbhanarkar 0:f07c569c074c 20 result += x;
tusharbhanarkar 0:f07c569c074c 21 pc.putc(x); // print the answer from SIM900
tusharbhanarkar 0:f07c569c074c 22
tusharbhanarkar 0:f07c569c074c 23 }
tusharbhanarkar 0:f07c569c074c 24 }
tusharbhanarkar 0:f07c569c074c 25
tusharbhanarkar 0:f07c569c074c 26 void sendSMS()
tusharbhanarkar 0:f07c569c074c 27 {
tusharbhanarkar 0:f07c569c074c 28
tusharbhanarkar 0:f07c569c074c 29 clearString();
tusharbhanarkar 0:f07c569c074c 30 SIM900.printf("AT+CMGF=1\r\n"); //at command for send sms
tusharbhanarkar 0:f07c569c074c 31 wait_ms(1000);
tusharbhanarkar 0:f07c569c074c 32 clearString();
tusharbhanarkar 0:f07c569c074c 33 wait_ms(1000);
tusharbhanarkar 0:f07c569c074c 34 SIM900.printf("AT+CMGS=");
tusharbhanarkar 0:f07c569c074c 35 SIM900.putc('"');
tusharbhanarkar 0:f07c569c074c 36 SIM900.printf("+919405204727");
tusharbhanarkar 0:f07c569c074c 37 SIM900.putc('"');
tusharbhanarkar 0:f07c569c074c 38 SIM900.printf("\r");
tusharbhanarkar 0:f07c569c074c 39 SIM900.printf("\n");
tusharbhanarkar 0:f07c569c074c 40 wait_ms(1000);
tusharbhanarkar 0:f07c569c074c 41 SIM900.printf("test1");
tusharbhanarkar 0:f07c569c074c 42 wait_ms(1000);
tusharbhanarkar 0:f07c569c074c 43 SIM900.putc(0x1A);
tusharbhanarkar 0:f07c569c074c 44 wait_ms(5000);
tusharbhanarkar 0:f07c569c074c 45 }
tusharbhanarkar 0:f07c569c074c 46
tusharbhanarkar 0:f07c569c074c 47
tusharbhanarkar 0:f07c569c074c 48 int main() {
tusharbhanarkar 0:f07c569c074c 49
tusharbhanarkar 0:f07c569c074c 50 pc.printf("\r\n GSM 900 TEST\n");
tusharbhanarkar 0:f07c569c074c 51 SIM900.attach(&callback_rx);
tusharbhanarkar 0:f07c569c074c 52 SIM900.baud(9600); //
tusharbhanarkar 0:f07c569c074c 53 wait_ms(100);
tusharbhanarkar 0:f07c569c074c 54
tusharbhanarkar 0:f07c569c074c 55 while(1) {
tusharbhanarkar 0:f07c569c074c 56
tusharbhanarkar 0:f07c569c074c 57 wait_ms(10);
tusharbhanarkar 0:f07c569c074c 58 sendSMS(); // SEND SMS
tusharbhanarkar 0:f07c569c074c 59 wait_ms(100);
tusharbhanarkar 0:f07c569c074c 60
tusharbhanarkar 0:f07c569c074c 61 }
tusharbhanarkar 0:f07c569c074c 62
tusharbhanarkar 0:f07c569c074c 63 }
tusharbhanarkar 0:f07c569c074c 64