diff options
author | Cristian Maglie <c.maglie@bug.st> | 2013-04-03 13:51:04 +0200 |
---|---|---|
committer | Cristian Maglie <c.maglie@bug.st> | 2013-04-03 13:51:04 +0200 |
commit | ee90e68e86dd61d86f5d17b69080338328765b22 (patch) | |
tree | e620c0edc2690ab789b665e567910640597aa6fe /libraries/GSM/examples/ReceiveSMS | |
parent | 0ecdc5ebc96ad4c7c548c438a03d9ce00679db8b (diff) | |
parent | f50c307be280dc6ece9e70c43b301c1db36291a0 (diff) |
Merged 1.0.5
Merge remote-tracking branch 'arduino/master' into ide-1.5.x
Conflicts:
app/src/processing/app/Base.java
build/shared/revisions.txt
hardware/arduino/avr/cores/arduino/malloc.c
hardware/arduino/cores/arduino/avr-libc/malloc.c
hardware/arduino/cores/arduino/malloc.c
todo.txt
Diffstat (limited to 'libraries/GSM/examples/ReceiveSMS')
-rw-r--r-- | libraries/GSM/examples/ReceiveSMS/ReceiveSMS.ino | 98 |
1 files changed, 98 insertions, 0 deletions
diff --git a/libraries/GSM/examples/ReceiveSMS/ReceiveSMS.ino b/libraries/GSM/examples/ReceiveSMS/ReceiveSMS.ino new file mode 100644 index 0000000..af800f4 --- /dev/null +++ b/libraries/GSM/examples/ReceiveSMS/ReceiveSMS.ino @@ -0,0 +1,98 @@ +/* + SMS receiver + + This sketch, for the Arduino GSM shield, waits for a SMS message + and displays it through the Serial port. + + Circuit: + * GSM shield attached to and Arduino + * SIM card that can receive SMS messages + + created 25 Feb 2012 + by Javier Zorzano / TD + + This example is in the public domain. + + http://arduino.cc/en/Tutorial/GSMExamplesReceiveSMS + +*/ + +// include the GSM library +#include <GSM.h> + +// PIN Number for the SIM +#define PINNUMBER "" + +// initialize the library instances +GSM gsmAccess; +GSM_SMS sms; + +// Array to hold the number a SMS is retreived from +char senderNumber[20]; + +void setup() +{ + // initialize serial communications and wait for port to open: + Serial.begin(9600); + while (!Serial) { + ; // wait for serial port to connect. Needed for Leonardo only + } + + Serial.println("SMS Messages Receiver"); + + // connection state + boolean notConnected = true; + + // Start GSM connection + while(notConnected) + { + if(gsmAccess.begin(PINNUMBER)==GSM_READY) + notConnected = false; + else + { + Serial.println("Not connected"); + delay(1000); + } + } + + Serial.println("GSM initialized"); + Serial.println("Waiting for messages"); +} + +void loop() +{ + char c; + + // If there are any SMSs available() + if (sms.available()) + { + Serial.println("Message received from:"); + + // Get remote number + sms.remoteNumber(senderNumber, 20); + Serial.println(senderNumber); + + // An example of message disposal + // Any messages starting with # should be discarded + if(sms.peek()=='#') + { + Serial.println("Discarded SMS"); + sms.flush(); + } + + // Read message bytes and print them + while(c=sms.read()) + Serial.print(c); + + Serial.println("\nEND OF MESSAGE"); + + // Delete message from modem memory + sms.flush(); + Serial.println("MESSAGE DELETED"); + } + + delay(1000); + +} + + |