1. 程式人生 > >安信可A7模組GPRS功能測試及初步學習AT指令

安信可A7模組GPRS功能測試及初步學習AT指令

一、GPRS簡介

GSM模組,是將GSM射頻晶片、基帶處理晶片、儲存器、功放器件等整合在一塊線路板上,具有獨立的作業系統、GSM射頻處理、基帶處理並提供標準介面的功能模組。GSM模組根據其提供的資料傳輸速率又可以分為GPRS模組、EDGE模組和純簡訊模組。簡訊模組只支援語音和簡訊服務。GPRS,可說是GSM的延續。它經常被描述成“2.5G”,也就是說這項技術位於第二代(2G)和第三代(3G)移動通訊技術之間。GPRS的傳輸速率從56K到114Kbps不等,理論速度最高達171k。相對於GSM的9.6kbps的訪問速度而言,GPRS擁有更快的訪問資料通訊速度,GPRS技術還具有在任何時間、任何地點都能實現連線,永遠線上、按流量計費等特點。EDGE技術進一步提升了資料傳輸的速率到384K-473K,被稱為”2.75G”,資料傳輸速率更2倍於GPRS。目前,國內的GSM網路普遍具有GPRS通訊功能,移動和聯通的網路都支援GPRS,EDGE在部分省市實現了網路覆蓋。 
GPRS模組,是具有GPRS資料傳輸功能的GSM模組

。GPRS模組就是一個精簡版的手機,整合GSM通訊的主要功能於一塊電路板上,具有傳送短訊息、通話、資料傳輸等功能。GPRS模組相當於手機的核心部分,如果增加鍵盤和螢幕就是一個完整的手機。普通電腦或者微控制器可以通過RS232串列埠與GPRS模組相連,通過AT指令控制GPRS模組實現各種基於GSM的通訊功能。 
GPRS模組區別於傳統的純簡訊模組,兩者都是GSM模組,但是簡訊模組只能收發簡訊和語音通訊,而GPRS模組還具有GPRS資料傳輸功能。”

二、串列埠除錯

上一篇介紹A7模組及接線時已經連線GPRS模組,可以用secureCRT或者串列埠除錯助手測試,這裡直接在串列埠除錯助手上進行測試,參考A7使用者手冊即可,要用英文輸入法,插入sim卡

開啟裝置管理器,檢視cp2102的埠號,設定串列埠除錯助手埠號,波特率設為115200,我的埠號是COM5,secureCRT上的設定也一樣

連線成功如下圖:


三、基本AT指令使用GPRS

傳送AT 是否能返回 Ok 檢查模組和板子是不是連線好的模組能不能正常的工作

AT

OK

1、AT+CPIN?檢測手機SIM卡是否安裝好

AT+CPIN?

+CPIN:READY//安裝好則顯示READY

OK

2、AT+CSQ:檢測手機訊號強度

AT+CSQ

+CSQ: 3,99

OK
訊號差,連上天線後
AT+CSQ

+CSQ: 10,99//訊號變強很多

OK

3、AT+CCID :檢視SIM卡ID

AT+CCID

+CCID:898600B2171477617018

OK

4、AT+CREG?:網路註冊及狀態查詢

AT+CREG?

+CREG: 1,1

OK

第一個引數<n>:    
  •     0 禁用網路註冊非請求結果碼
  •     1 啟用網路註冊非請求結果碼+CREG: <stat>
  •     2 啟用網路註冊和位置資訊非請求結果碼+CREG: <stat>[,<lac>,<ci>]
第二個引數<stat>:
  •      0 未註冊;ME 當前沒有搜尋到要註冊業務的新營運商
  •      1 已註冊,本地網
  •      2 未註冊,但ME 正在搜尋要註冊業務的新營運商
  •      3 註冊被拒絕
  •      4 未知
  •      5 已註冊,漫遊

5、定位基站位置

輸入命令AT+CREG=<n>,

當n=0,表示禁用網路。

當n=1時,返回+CREG:<n>,<stat>。

當n=2,返回+CREG:<n>,<stat>[,<lac>,<ci>]

AT+CREG=2

OK
AT+CREG?

+CREG: 2,1,"703E","AC8B"

OK//小區ID和位置區號(每次定位基站不同,列印位置也不同)

6、AT+COPS?:查詢運營商

AT+COPS?

+COPS: 0,2,"46000"

OK
這裡46000表示運營商標識,460表示中國00表示中國移動,01表示中國聯通,該模組暫不支援中國電信的SIM卡

AT+COPS=<mode>[,<format>[,<oper>]]
     //這裡 < > 表示必選,[  ]表示可選,[ < a> [  <b > ] ] 表示a,b都是可選的,但是優先選b。  

  •  0  自動,<oper> 欄位可忽略
  •  1  手動,<oper> 欄位不可忽略
  •  2  從註冊網路登出
  •  3  僅設定<format> (用於查詢命令AT+COPS?);不嘗試進行註冊或登出(<oper>
  •      欄位可忽略);該取值不適用於查詢命令的返回結果
  •  4  手動/自動,<oper> 欄位不可忽略;如果手動選擇失敗,將進入自動選擇模式(<mode>=0)
第二個引數format:
  •       0  長字元型(採用字母數字格式),最多16 個字元
  •       1  短字元型(採用字母數字格式),最多8 個字元
  •       2  數字型<oper>
第三個引數 oper:         字元型;<format>表示該字串採用字母數字型還是數字型;數字型表示GSM 未知區標識號碼,該號碼包括一個3 位BCD 國家程式碼(符合ITU-TE.212 Annex A[10]標準)和一個2 位BCD 網路程式碼,後者與管理有關

如果想用字母代替46000來顯示運營商名字,則需要執行AT+COPS=0,0

AT+COPS=0,0

OK
AT+COPS?

+COPS: 0,0,"CMCC"

OK

7、ATD命令撥打電話號碼,ATH命令結束通話電話

ATD10086//撥號

OK

+CIEV: "CALL",1

+CIEV: "SOUNDER",1

+CIEV: "SOUNDER",1
ATH//結束通話

+CIEV: "CALL",0

OK

8、ATA接電話

用於應答電話,當收到來電的時候(串列埠接收螢幕上會一直打ring),給模組傳送: ATA,即可接聽來電。

ATH    用於結束通話電話,要想結束正在進行的通話,只需給模組傳送: ATH,即可結束通話。

RING

RING

RING
ATA

+CIEV: "CALL",1

CONNECT

可能聽不見聲音的解決方法:
AT+SNFS=1        // 預設為喇叭輸出,該命令切換成耳機模式

9、傳送英文簡訊

AT+CMGF=1//設定TEXT MODE
AT+CSCS="GSM" // 命令通知ME 選擇的字符集ME 可以對輸入或顯示的字元迚行轉化此命令用於傳送讀或寫短訊息GSM表示預設值
AT+CMGS="xxxxxxx"//其中電話號碼要傳送給誰簡訊就寫誰
>ASHFUUDN//這裡寫任意簡訊內容,英文數字標點等
1A

在secureCRT下發送時只需在>後輸入內容即可,按下Ctrl+z鍵就可以傳送,但是在串列埠除錯助手上你需要在>後輸入內容後再次輸入16進位制的1A表示確認傳送,才能傳送後面傳送簡訊都是一樣的,必須有確認的過程。

10、傳送中文簡訊


AT+CMGF=0    //設定PDU格式  
AT+CSCS="GSM" 
AT+CMGS=23  //CMGW改為CMGS
>0891683108200105F0110005910180F60008AA0C4E2D56FDFF0C4F60597DFF01
1A//16進位制

11、接收中英文簡訊

AT+CMGF=1//等於1為TEXT MODE,等於0為PDU模式
AT+CSDH=1//顯示文字格式
AT+CNMI=0,2,0,0,0//顯示新收到的簡訊
指令收發簡訊主要有兩種模式:Text模式和PDU(Protocol Data Unit,協議資料單元)模式。使用Text模式收發簡訊程式碼簡單,很容易實現,最大缺點不支援中文簡訊。PDU模式不僅能傳送中文簡訊,也能傳送英文簡訊,如果想只是接發英文簡訊,可以設定為TEXT模式,AT指令為:AT+CMGF=1

問題總結:

1、

AT+CPIN?
+CME ERROR:10
原因是你的sim卡沒有插好

2、

AT+CPIN?
+CME ERROR:58
原因是埠被佔用,無法連線,你可能打開了多個串列埠除錯助手

3、

關於有些耳機插進去後仍然聽不到的問題: 

A7模組耳機麥克使用一體式四段介面OMTP標準,而不是CTIA標準。兩者的區別在於插頭最後兩節 。 
GND和MIC順序相反。CTIA耳機插入OMTP裝置會造成聲音小且失真。 
OMTP 標準:蘋果4S及更新的版本所配耳機(中國銷售的部分),諾基亞、華為、中興、聯想、山寨機等。聯想耳機及華為有部分是CTIA。 
CTIA 標準:三星、蘋果(中國以外銷售的部分)、索尼、MOTO(部分)。 
因此有部分耳機是不被支援的……