そのライブラリは、M10モジュールが搭載されているほとんどすべてのもので動作するはずです。
私はSIM900モジュールの経験しかありません。EBayで最も安いものを見つけました。
これらのものとのインターフェースは最初は難しい場合がありますが、実際に必要なのは、すべてのATコマンドのマニュアルを読んで実行することだけです。私は役立つかもしれないいくつかの関数を書きました:
注:安全のすべてのインスタンス置き換えることDEBUG_PRINT
とDEBUG_PRINTLN
してSerial.print
としSerial.println
。
SoftwareSerial SIM900(7, 8);
/*
Sends AT commands to SIM900 module.
Parameter Description
command String containing the AT command to send to the module
timeout A timeout, in milliseconds, to wait for the response
Returns a string containing the response. Returns NULL on timeout.
*/
String SIMCommunication::sendCommand(String command, int timeout) {
SIM900.listen();
// Clear read buffer before sending new command
while(SIM900.available()) { SIM900.read(); }
SIM900.println(command);
if (responseTimedOut(timeout)) {
DEBUG_PRINT(F("sendCommand Timed Out: "));DEBUG_PRINTLN(command);
return NULL;
}
String response = "";
while(SIM900.available()) {
response.concat((char)SIM900.read());
delayMicroseconds(500);
}
return response;
}
/*
Waits for a response from SIM900 for <ms> milliseconds
Returns true if timed out without response. False otherwise.
*/
bool SIMCommunication::responseTimedOut(int ms) {
SIM900.listen();
int counter = 0;
while(!SIM900.available() && counter < ms) {
counter++;
delay(1);
}
// Timed out, return null
if (counter >= ms) {
return true;
}
counter = 0;
return false;
}