需要准備的硬件
- MC20開發板 1個
https://item.taobao.com/item.htm?id=562661881042 - GSM/GPRS天線 1根
https://item.taobao.com/item.htm?id=531979567261 - IPEX接口轉SMA接口轉接線 1根
https://item.taobao.com/item.htm?id=531979903836 - GPS有源天線 1根
https://item.taobao.com/item.htm?id=26241892024 - 中國移動或者聯通的SIM卡一張,micro sim尺寸的
需要自備,如果只是測試GPRS可以購買物聯網卡,該卡不能測試電話和短信功能
https://item.taobao.com/item.htm?id=562257211778 - DC9V1A電源一個
https://item.taobao.com/item.htm?id=41915338664
或者兩節串聯的18650電池
https://item.taobao.com/item.htm?id=530904849115 - USB-TTL模塊 1個
https://item.taobao.com/item.htm?id=39481188174 - 杜邦線若干
https://item.taobao.com/item.htm?id=562848773709 - ARDUINO UNO R3開發板
https://item.taobao.com/item.htm?id=27554596680 - ARDUINO MEGA2560 R3開發板
https://item.taobao.com/item.htm?id=38041409136
使用代碼源碼位置:

功能:
可以通過ARDUINO撥打電話給某個號碼,這個代碼寫的比較完善,不是簡單的只是發送指令,
而且對MC20的反饋數據進行解析分析判斷是否正常。正常則運行下一個執行,不正常就會重復發送該指令。
可以從調試信息很清楚判定現在的工作狀態。
測試流程:
- 把TimeOne的庫復制粘貼到自己的arduino開發環境的libraries文件夾下,
然后重新打開開發環境 - 修改代碼內的需要被撥打的電話號碼,然后編譯正常通過。
char phoneNumber[] = "173XXXXXXX1"; //替換成需要被撥打電話的號碼

3. 把程序下載進ARDUINO UNO開發板
然后根據連接圖連接MC20板子和UNO板子,因為接上線就會影響下載程序了,下載程序和接MC20模塊的D0和D1兩個IO是復用的。

4. 這里如果你想要看到調試信息,可以用一個USB-TTL模塊接調試輸出的那個虛擬串口,如果不想知道就不用接打開串口調試助手,對應那個USB-TTL模塊,等待接收調試信息

5. 打開arduino開發環境內的串口監視器,觀看程序發送出去的指令效果

看到ATD指令,說明已經開始撥打電話了,
上面的CPIN指令可以查詢是否插入識別SIM卡,如果卡在這里,往下不執行,說明沒識別你用的SIM卡,檢查下是否為移動聯通卡,或者是否卡插正確,
而CREG指令可以獲取現在的SIM卡是否已經有服務信息了。
在USB-TTL對應的串口可以看到發送給MC20和MC20返回的數據的調試信息

6. 如果都正常,您已經用ARDUINO撥打出去電話了
