added arduino, modified build
This commit is contained in:
@@ -0,0 +1,115 @@
|
||||
/*
|
||||
Band Management
|
||||
|
||||
This sketch, for the Arduino GSM shield, checks the band
|
||||
currently configured in the modem and allows you to change
|
||||
it.
|
||||
|
||||
Please check http://www.worldtimezone.com/gsm.html
|
||||
Usual configurations:
|
||||
Europe, Africa, Middle East: E-GSM(900)+DCS(1800)
|
||||
USA, Canada, South America: GSM(850)+PCS(1900)
|
||||
Mexico: PCS(1900)
|
||||
Brazil: GSM(850)+E-GSM(900)+DCS(1800)+PCS(1900)
|
||||
|
||||
|
||||
Circuit:
|
||||
* GSM shield
|
||||
|
||||
created 12 June 2012
|
||||
by Javier Zorzano, Scott Fitzgerald
|
||||
|
||||
This example is in the public domain.
|
||||
*/
|
||||
|
||||
// libraries
|
||||
#include <GSM.h>
|
||||
|
||||
// initialize the library instance
|
||||
GSMBand band;
|
||||
|
||||
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
|
||||
}
|
||||
|
||||
// Beginning the band manager restarts the modem
|
||||
Serial.println("Restarting modem...");
|
||||
band.begin();
|
||||
Serial.println("Modem restarted.");
|
||||
|
||||
};
|
||||
|
||||
|
||||
void loop() {
|
||||
// Get current band
|
||||
String bandName = band.getBand(); // Get and print band name
|
||||
Serial.print("Current band:");
|
||||
Serial.println(bandName);
|
||||
Serial.println("Want to change the band you’re on?");
|
||||
String newBandName;
|
||||
newBandName = askUser();
|
||||
// Tell the user what we are about to do…
|
||||
Serial.print("\nConfiguring band ");
|
||||
Serial.println(newBandName);
|
||||
// Change the band
|
||||
boolean operationSuccess;
|
||||
operationSuccess = band.setBand(newBandName);
|
||||
// Tell the user if the operation was OK
|
||||
if (operationSuccess) {
|
||||
Serial.println("Success");
|
||||
} else {
|
||||
Serial.println("Error while changing band");
|
||||
}
|
||||
|
||||
if (operationSuccess) {
|
||||
while (true);
|
||||
}
|
||||
}
|
||||
|
||||
// This function offers the user different options
|
||||
// through the Serial interface
|
||||
// The user selects one
|
||||
String askUser() {
|
||||
String newBand;
|
||||
Serial.println("Select band:");
|
||||
// Print the different options
|
||||
Serial.println("1 : E-GSM(900)");
|
||||
Serial.println("2 : DCS(1800)");
|
||||
Serial.println("3 : PCS(1900)");
|
||||
Serial.println("4 : E-GSM(900)+DCS(1800) ex: Europe");
|
||||
Serial.println("5 : GSM(850)+PCS(1900) Ex: USA, South Am.");
|
||||
Serial.println("6 : GSM(850)+E-GSM(900)+DCS(1800)+PCS(1900)");
|
||||
|
||||
// Empty the incoming buffer
|
||||
while (Serial.available()) {
|
||||
Serial.read();
|
||||
}
|
||||
|
||||
// Wait for an answer, just look at the first character
|
||||
while (!Serial.available());
|
||||
char c = Serial.read();
|
||||
if (c == '1') {
|
||||
newBand = GSM_MODE_EGSM;
|
||||
} else if (c == '2') {
|
||||
newBand = GSM_MODE_DCS;
|
||||
} else if (c == '3') {
|
||||
newBand = GSM_MODE_PCS;
|
||||
} else if (c == '4') {
|
||||
newBand = GSM_MODE_EGSM_DCS;
|
||||
} else if (c == '5') {
|
||||
newBand = GSM_MODE_GSM850_PCS;
|
||||
} else if (c == '6') {
|
||||
newBand = GSM_MODE_GSM850_EGSM_DCS_PCS;
|
||||
} else {
|
||||
newBand = "GSM_MODE_UNDEFINED";
|
||||
}
|
||||
return newBand;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user