MCU除錯gprs模組遇到些問題總結如下

2021-08-07 10:21:01 字數 3833 閱讀 5310

mcu除錯gprs模組遇到些問題總結如下:

1、保證gprs模組工作,檢查供電,以及gprs模組是否是按鍵開機模式

使用使用at 指令at+sautopoweron=0 配置成按鍵開機模式,可使用power_key 按

鍵關機,或者傳送at+cpof 指令關機。

開機關機的話需要配置power_key引腳,低電平有效,確保

低電平2s,

2、pc與gprs模組通過uart連線的時候,需要共地,當出現串列埠有資料但是是亂碼的時候,可以檢查baud率是否正確

3、at互動的時候,模組返回需要時間,檢查資料的時候,需要等待模組返回資料了,再檢查資料是否ok

4、接收資料放到緩衝區的時候需要關閉中斷,防止資料被中斷打斷造成操作錯誤

5、cc2640使用tios的npi的串列埠傳送資料時候,可以將資料指標直接傳遞過來,不用拷貝資料過來

附錄基本的at指令如下:

1. "at\r\n"//檢測模組串列埠工作

2. "at+ccid\r\n"//檢查是否插卡

3. "at+creg?\r\n"//檢查網路註冊情況

4. "at+cgatt=1\r\n"//附著網路

5. "at+cgdcont=1,\"ip\",\"cmnet\"\r\n"//設定pdp引數

6. "at+cgact=1,1\r\n"//啟用網路

7. "at+cipstart=\"tcp\",\"121.41.***.***\",port\r\n"//連線tcpip伺服器

注意:每傳送一條指令以\r\n結尾,對應的ascii碼為 0d 0a

1. at+cipsend=5\r\n 傳送資料的長度

2. 傳送的資料 以ctrl+z截止

例如:hello 1a 1a為ctrl+z的ascii碼

1. at+ccid

作 用 用來讀取sim 卡唯一標識號(card identification number)

讀取命令 at+ccid?

返 回+ccid:」sim number」

ok執行命令 at+ccid

返 回+ccid: 」sim number」

ok測試命令 at+ccid=?

返 回+ccid:

okat+creg

作 用 設定自動報告網路狀態

設定命令 at+creg=

返 回 ok/error

讀取命令 at+creg?

返 回 +creg: ,[,,[,]]

共 179 頁 第 78 頁 a8300 at 指令集_v1.1

ok測試命令 at+creg=?

返 回+creg:(0,1,2)

ok引數說明

mode:預設值為0

0:取消網路註冊報告

1:啟用網路註冊報告,返回+creg:

2:啟用網路註冊和本地資訊報告,返回+creg: ,, ,

返回資訊說明如下:

引數名稱 含義

state

0:沒有註冊網路,me 沒有搜尋新的網路

1:成功註冊本地網路

2:沒有註冊網路,me 正在搜尋新的網路

3:網路註冊被拒絕

4:未知

5:成功註冊漫遊網路

8: 緊急呼叫狀態

lac 小區位置**

ci 小區id 號

actaccess technology of the registered network

0:gsm

1:gsm compact

2:utran

3:gsm w/egprs (3gpp ts 44.060 [71] specifies the system information

messages)

at+cgatt

作 用附著(attach)或去附(detach) gprs 服務。如果mt 已經在所要求的狀態,設定命令

被忽略並返回ok;如果所要求的狀態無法獲得,返回error。mt 去附

(detach)gprs 服務後,任何已啟用的pdp context 自動去活(deactive)

設定命令 at+cgatt=

返 回 ok/error

讀取命令 at+cgatt?

返 回+cgatt:

ok測試命令 at+cgatt=?

返 回+cgatt: (list of supported s)

ok引數說明

state:

0:去附了gprs 服務

1:附著了gprs 服務

6.1. at+cgdcont

作 用mt 傳送pdp 上下文啟用訊息的時候使用這個命令配置pdp 上下文引數。系統重

啟動後,該命令所做的設定將不被儲存

設定命令

at+cgdcont=[[,[,[,[,[,

]]]]]]

返 回 ok/error

讀取命令 at+cgdcont?

返 回+cgdcont:

,,,,,

[+cgdcont:

,,,,,[...]]

ok測試命令 at+cgdcont=?

返 回+cgdcont: (range of supported s),,(list of supported

s and s)

引數說明

cid:(pdp context identifier)整型(範圍1-11),指定pdp 上下文的id 號

pdp_type:(packet data protocol type),目前只支援ip(internet protocol)

apn:(access point name)字串,用來選擇2 或其它的分組資料網路,請諮詢

當地的網路運營商,中國移動為internet 服務的apn 為 「cmnet」,wap 服務的

apn 為 「cmwap」

pdp_address:字串,給定pdp 的位址。此值可不填,由網路動態分配乙個位址

d_comp:pdp 資料是否需要壓縮。目前mt、網路都不支援資料壓縮。

0:不採用壓縮,1:採用壓縮。此值可不填,預設值為0。

h_comp:pdp 頭部資料是否需要壓縮。目前mt、網路都不支援資料壓縮。

0:不採用壓縮,1:採用壓縮。此值可不填,預設值為0。

at+cgact

作 用啟用(activate)或去活(deactive)指定的pdp 上下文。如果mt 已經在所要求的狀

態,設定命令被忽略並返回ok;如果所要求的狀態無法獲得,返回error。如

果在啟用指定pdp 上下文命令執行時,mt 尚未進行gprs attach 操作,則mt

先進行gprs attach 操作,再進行啟用指定pdp 上下文操作。如果gprs

attach 操作失敗,返回error

設定命令 at+cgact=[[,[,[,...]]]]

返 回 ok/error

讀取命令 at+cgact?

返 回+cgact: ,

[+cgact: ,[...]]

ok測試命令 at+cgact=?

返 回+cgact: (list of supported s)

ok引數說明

state:

0:pdp 上下文去活

1:pdp 上下文啟用

cid:pdp context identifier,指定乙個pdp 上下文的id 號。整型:1~11。

在未指定號時,啟用pdp 上下文預設為cid=1,即at+cgact=1 與

at+cgact=1,1;在去活pdp 上下文時如未指定,則預設去活所有活動的

pdp 上下文

【示例】

at+cgact=1,1

okat+cgact=0,1

ok

iPhone 6 Plus真機除錯時遇到的問題

在iphone 6 plus上跑的時候遇到了這麼乙個錯誤 ld can t link with a main executable file for architecture armv7,然後就各種改啊改啊,因為我明明已經把arm64加入了豪華午餐陣容了呀,為啥還提示我不允許在64位處理器上跑啊?這...

Linux 下讀取串列埠並除錯的時候遇到的問題

今天繼續調樹黴派串列埠讀取uwb資料的問題。一開始由於用了版本不對的定位庫的原因造成了程式的崩潰,是執行緒崩潰了導致程序崩潰這個想法就一直蒙蔽了我的雙眼。後來我只執行讀取串列埠的程式,然後用printf 來除錯看是 出了問題。這裡就埋下了伏筆!用ssh連線板子printf 中如果不加 n 那麼這個訊...

Ubuntu下安裝vsftp遇到的一些問題

1.執行make安裝vsftpd 報告錯誤 undefined reference to crypt 解決方法 開啟makefile vim makefile libs vsf findlibs.sh 末尾增加 lcrypt 變成 libs vsf findlibs.sh lcrypt 2.執行ma...