Arduino GSM shield 與 86Duino 的連接方式

Arduino GSM Shield 與 86Duino 的連接方式與 Arduino 略有不同,在使用此函式庫前,請先參考下面說明將 Arduino GSM Shield 正確連接到 86Duino 上(注意不可將 Arduino GSM Shield 直接堆疊到 86Duino 上)。

Arduino GSM Shield 主要是以 UART 通訊介面與控制板溝通。它有通訊和控制兩種不同功能的腳位,其中,通訊腳位為 GSMTX、GSMRX,請將這兩隻腳位依序連接到 86Duino 的 digital pin 42、3;控制腳位為 Reset,請將它連接到 86Duino 的 digital pin 7。同時因為 Arduino GSM Shield 需要供應 5V 電源,因此我們將 86Duino 的 5V 輸出與 GND 分別接到 Arduino GSM Shield 的 5V 與 GND 腳位,如此即可用 GSM 函式庫控制 GSM 模組。

接下來,請參考下面的連接示意圖,將 86Duino 和 Arduino GSM Shield 連接起來(這裡以 86Duino Zero 為例):

GSM_1

實際連接範例:

GSM_3

另外,在 GSM 函式庫有支援另一種傳輸模式,為 Hardware Serial 模式。在預設情況下,GSM 函式庫是工作在 Software Serial 模式下的,啟用 Hardware Serial 模式可增加資料在傳輸過程中的穩定性。以下將介紹如何啟用 Hardware Serial 模式,並介紹 Hardware Serial 模式下連接 Arduino GSM shield 的方式。

首先,在 sketch 中,呼叫 useHardwareSerial() 來啟用 Hardware Serial 模式(需要在 begin() 之前呼叫),請參考下面範例:

#include <GSM.h>

#define PINNUMBER ""
GSM gsmAccess;
GSMVoiceCall vcs;

void setup() {
    useHardwareSerial(); // 啟用 Hardware Serial 模式
    boolean notConnected = true;
    while(notConnected)
    {
      if(gsmAccess.begin(PINNUMBER)==GSM_READY)
        notConnected = false;
      else
      {
        Serial.println("Not connected");
        delay(1000);
      }
    }
    // ....
}
 
void loop() {
    // ....
}

將 sketch 編譯並上傳至 86Duino 後,請參考下面的連接示意圖,將 86Duino 和 Arduino GSM shield 連接起來:

GSM_2

實際連接範例:

GSM_4


函式庫參考主頁面

The text of the 86Duino reference is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.