最近有很多朋友問怎樣查找和設(shè)置mobile頻段并獲取相關(guān)參數(shù),那么我們今天就從介紹,準備,問題等方面聊聊…
1、mobile概述
1.1 簡介
“4G mobile”指的是第四代移動通信技術(shù),常用于描述通過4G網(wǎng)絡(luò)進行的高速無線數(shù)據(jù)傳輸和通信。4G網(wǎng)絡(luò)最顯著的特征是其高速數(shù)據(jù)傳輸能力。理論上,4G可以提供下行速率高達100Mbps(移動環(huán)境下)和上行速率達50Mbps(靜止或低速移動環(huán)境下)。
1.2 架構(gòu)
4G網(wǎng)絡(luò)采用了全IP網(wǎng)絡(luò)架構(gòu),所有數(shù)據(jù)和語音通信都是通過IP(InternetProtocol)傳輸?shù)摹O啾戎暗囊苿油ㄐ偶夹g(shù)(如2G和3G),4G能夠更有效地處理數(shù)據(jù)流量,尤其是用于互聯(lián)網(wǎng)服務(wù)和多媒體應(yīng)用。
1.3 采用技術(shù)
4g主要采用正交頻分復用技術(shù)(OFDM)和多輸入多輸出技術(shù)(MIMO)。OFDM將寬頻帶劃分為多個窄頻帶,從而提高了頻譜的利用效率,并減少了信號間的干擾。它使得4G能夠在同樣的頻譜下傳輸更多的數(shù)據(jù),并具有更強的抗干擾能力。多輸入多輸出(MIMO)技術(shù)也廣泛應(yīng)用于4G網(wǎng)絡(luò)中。MIMO使用多個天線來同時發(fā)送和接收數(shù)據(jù),增加了信號的容量和覆蓋范圍,顯著提高了數(shù)據(jù)傳輸速率。
關(guān)于4gmobile技術(shù)更詳細的使用說明,請參考:https://zh.wikipedia.org/wiki/4G
2、演示功能概述
本demo演示了查找和設(shè)置mobile頻段,和獲取相關(guān)參數(shù)。
3、準備硬件環(huán)境
3.1 開發(fā)板準備
1)Air780E核心板一個:
https://item.taobao.com/item.htm?id=693774140934
2)此核心板的詳細使用說明參考:
https://docs.openluat.com/air780e/product/
Air780E產(chǎn)品手冊中的《開發(fā)板Core_Air780E使用說明V1.0.5.pdf》,核心板使用過程中遇到任何問題,可以直接參考這份使用說明pdf文檔。
3.2 SIM卡
請準備一張可正常上網(wǎng)的SIM卡,該卡可以是物聯(lián)網(wǎng)卡或您的個人手機卡。
特別提醒:
請確保SIM卡未欠費且網(wǎng)絡(luò)功能正常,以便順利進行后續(xù)操作。
3.3 數(shù)據(jù)通信線
3.4 PC電腦
WINDOWS系統(tǒng)。
4、準備軟件環(huán)境
4.1 基本的下載調(diào)試工具
使用說明參考:
Luatools下載和詳細使用:
https://docs.openluat.com/Luatools/
5、mobile的使用軟硬件資料
5.1 源碼和工具
780E模塊使用固件:SDK&Demo-合宙文檔中心,本demo使用的固件版本是:
LuatOS-SoC_V1112_EC618_FULL.soc
本教程使用的demo:
https://gitee.com/openLuat/LuatOS-Air780E/tree/master/demo/mobile
將固件和腳本燒錄到模塊中,使用說明參考:Luatools下載和詳細使用
源碼和固件已打包,如下所示:點我,下載完整壓縮文件包
5.2 常量消息
這里是發(fā)布的消息,可以使用sys.waitUntil()或者sys.subscribe()函數(shù)來獲取消息是否發(fā)布。
常量 | 類型 | 解釋 |
---|---|---|
mobile.UNREGISTER |
number |
未注冊 |
mobile.REGISTERED |
number |
已注冊 |
mobile.SEARCH |
number |
正在搜索中 |
mobile.DENIED |
number |
注冊被拒絕 |
mobile.UNKNOW |
number |
未知 |
mobile.REGISTERED_ROAMING |
number |
已注冊,漫游 |
mobile.SMS_ONLY_REGISTERED |
number |
已注冊,僅SMS |
mobile.SMS_ONLY_REGISTERED_ROAMING |
number |
已注冊,漫游,僅SMS |
mobile.EMERGENCY_REGISTERED |
number |
已注冊,緊急服務(wù) |
mobile.CSFB_NOT_PREFERRED_REGISTERED |
number |
已注冊,非主要服務(wù) |
mobile.CSFB_NOT_PREFERRED_REGISTERED_ROAMING |
number |
已注冊,非主要服務(wù),漫游 |
mobile.CONF_RESELTOWEAKNCELL |
number |
小區(qū)重選信號差值門限,需要飛行模式設(shè)置 |
mobile.CONF_STATICCONFIG |
number |
網(wǎng)絡(luò)靜態(tài)模式優(yōu)化,需要飛行模式設(shè)置 |
mobile.CONF_QUALITYFIRST |
number |
網(wǎng)絡(luò)切換以信號質(zhì)量優(yōu)先,需要飛行模式設(shè)置,0不開,1開啟,2開啟并加速切換,功耗會增加 |
mobile.CONF_USERDRXCYCLE |
number |
LTE跳paging,需要飛行模式設(shè)置,謹慎使用,0是不設(shè)置,1~7增大或減小DrxCycle周期倍數(shù),1:1/8倍2:1/4倍3:1/2倍4:2倍5:4倍6:8倍7:16倍,8~12配置固定的DrxCycle周期,僅當該周期大于網(wǎng)絡(luò)分配的DrxCycle周期時該配置才會生效,8:320ms9:640ms10:1280ms11:2560ms12:5120ms |
mobile.CONF_T3324MAXVALUE |
number |
PSM模式中的T3324時間,單位S |
mobile.CONF_PSM_MODE |
number |
PSM模式開關(guān),0關(guān),1開 |
mobile.CONF_CE_MODE |
number |
attach模式,0為EPSONLY2為混合,遇到IMSIdetach脫網(wǎng)問題,設(shè)置為0,注意設(shè)置為EPSONLY時會取消短信功能 |
mobile.CONF_SIM_WC_MODE |
number |
SIM寫入次數(shù)的配置和讀取 |
mobile.CONF_FAKE_CELL_BARTIME |
number |
偽基站禁止接入的時間,取值為0時取消,0xffff永久 |
mobile.CONF_RESET_TO_FACTORY |
number |
刪除已保存的協(xié)議棧參數(shù),重啟后會使用默認配置 |
mobile.CONF_USB_ETHERNET |
number |
蜂窩網(wǎng)絡(luò)模塊的usb以太網(wǎng)卡控制,bit0開關(guān),1開,0關(guān),bit1模式,1NAT,0獨立IP(在usb以太網(wǎng)卡開啟前可以修改,開啟過就不行),bit2協(xié)議1ECM,0RNDIS,飛行模式里設(shè)置 |
mobile.CONF_DISABLE_NCELL_MEAS |
number |
關(guān)閉鄰區(qū)測量1關(guān),0開,除了功耗測試外不建議使用 |
mobile.PIN_VERIFY |
number |
驗證PIN碼操作 |
mobile.PIN_CHANGE |
number |
更換PIN碼操作 |
mobile.PIN_ENABLE |
number |
使能PIN碼驗證 |
mobile.PIN_DISABLE |
number |
關(guān)閉PIN碼驗證 |
mobile.PIN_UNBLOCK |
number |
解鎖PIN碼 |
5.3 本demo使用api簡介
mobile.status()
作用:獲取網(wǎng)絡(luò)狀態(tài)。
參數(shù):
無
返回值:
返回值類型 | 解釋 |
---|---|
int |
當前網(wǎng)絡(luò)狀態(tài) |
mobile.getBand(band,is_default)
作用:獲取當前使用/支持的band
參數(shù):
傳入值類型 | 解釋 |
---|---|
zbuff |
輸出band |
boolean |
true默認支持,false當前支持的, 默認是false,當前是預(yù)留功能,不要寫true |
返回值:
返回值類型 | 解釋 |
---|---|
boolean |
成功返回true,失敗返回false |
mobile.setBand(band,num)
作用:設(shè)置使用的band
參數(shù):
傳入值類型 | 解釋 |
---|---|
zbuff |
輸入使用的band |
int |
band數(shù)量 |
返回值:
返回值類型 | 解釋 |
---|---|
boolean |
成功返回true,失敗返回false |
mobile.flymode(index,enable)
作用:進出飛行模式
參數(shù):
傳入值類型 | 解釋 |
---|---|
int |
編號,默認0.在支持雙卡的模塊上才會出現(xiàn)0或1的情況 |
bool |
是否設(shè)置為飛行模式,true為設(shè)置,false為退出,可選 |
返回值:
返回值類型 | 解釋 |
---|---|
boolean |
原飛行模式的狀態(tài) |
mobile.vsimOnOff(enable)
作用:切換內(nèi)置虛擬卡和外置實體卡,2024年8月13日啟用,虛擬卡需要固件支持,否則切換后無網(wǎng)絡(luò),需要在飛行模式下切換,或者切換后重啟協(xié)議棧。
參數(shù):
傳入值類型 | 解釋 |
---|---|
bool |
開啟,true開啟,false關(guān)閉 |
返回值:
返回值類型
解釋
nil |
無返回值 |
返回值:
返回值類型 | 解釋 |
---|---|
string |
獲取到的默認APN值,失敗返回nil |
mobile.rtime(time,auto_reset_stack,data_first)
作用:設(shè)置RRC自動釋放時間間隔,當開啟時后,遇到極弱信號+頻繁數(shù)據(jù)操作可能會引起網(wǎng)絡(luò)嚴重故障,因此需要額外設(shè)置自動重啟協(xié)議棧。
參數(shù):
傳入值類型 | 解釋 |
---|---|
int |
RRC自動釋放時間,等同于Air724的AT+RTIME,單位秒,寫0或者不寫則是停用,不要超過20秒,沒有意義 |
boolean |
網(wǎng)絡(luò)遇到嚴重故障時嘗試自動恢復,和飛行模式/SIM卡切換沖突,true開啟,false關(guān)閉,留空時,如果設(shè)置了時間則自動開啟。本參數(shù)于2023年9月14日已廢棄 |
boolean |
是否啟用數(shù)據(jù)傳輸優(yōu)化,true啟用,false關(guān)閉,留空為false,開啟后必須等到TCP數(shù)據(jù)ACK或者超時失敗,或者socketCONNECT完成(無論成功或者失敗)才允許RRC提前釋放,可能會增加功耗。本參數(shù)于2024年8月12日啟用 |
返回值:
返回值類型 | 解釋 |
---|---|
nil |
無返回值 |
mobile.setAuto(check_sim_period,get_cell_period,search_cell_time,auto_reset_stack,network_check_period)
作用:設(shè)置一些輔助周期性或者自動功能,目前支持SIM卡暫時脫離后恢復,周期性獲取小區(qū)信息,網(wǎng)絡(luò)遇到嚴重故障時嘗試自動恢復。
參數(shù):
傳入值類型 | 解釋 |
---|---|
int | SIM卡自動恢復時間,單位毫秒,建議5000~10000,和飛行模式/SIM卡切換沖突,不能再同一時間使用,必須錯開執(zhí)行。寫0或者不寫則是關(guān)閉功能 |
int | 周期性獲取小區(qū)信息的時間間隔,單位毫秒。獲取小區(qū)信息會增加部分功耗。寫0或者不寫則是關(guān)閉功能 |
int | 每次搜索小區(qū)時最大搜索時間,單位秒。不要超過8秒 |
boolean | 網(wǎng)絡(luò)遇到嚴重故障時嘗試自動恢復,和飛行模式/SIM卡切換沖突,true開啟,false關(guān)閉,開始狀態(tài)是false,留空則不做改變 |
int | 設(shè)置定時檢測網(wǎng)絡(luò)是否正常并且在檢測到長時間無網(wǎng)時通過重啟協(xié)議棧來恢復,無網(wǎng)恢復時長,單位ms,建議60000以上,為網(wǎng)絡(luò)搜索保留足夠時間,留空則不做更改 |
返回值:
返回值類型 | 解釋 |
---|---|
nil |
無返回值 |
mobile.imei(index)
獲取:獲取IMEI。
參數(shù):
傳入值類型 | 解釋 |
---|---|
int |
編號,默認0.在支持雙卡的模塊上才會出現(xiàn)0或1的情況 |
返回值:
返回值類型 | 解釋 |
---|---|
string |
當前的IMEI值,若失敗返回nil |
mobile.imsi(index)
作用:獲取IMSI。
參數(shù):
傳入值類型 | 解釋 |
---|---|
int |
編號,默認0.在支持雙卡的模塊上才會出現(xiàn)0或1的情況 |
返回值:
返回值類型 | 解釋 |
---|---|
string |
當前的IMSI值,若失敗返回nil |
mobile.iccid(id)
作用:獲取或設(shè)置ICCID。
參數(shù):
傳入值類型 | 解釋 |
---|---|
int |
SIM卡的編號,例如0,1,默認0 |
返回值:
返回值類型 | 解釋 |
---|---|
string |
ICCID值,若失敗返回nil |
mobile.csq()
作用:獲取csq。
參數(shù):
無
返回值:
返回值類型 | 解釋 |
---|---|
int |
當前CSQ值,若失敗返回0.范圍0-31,越大越好 |
mobile.rssi()
作用:獲取rssi。
參數(shù):
無
返回值:
返回值類型 | 解釋 |
---|---|
int |
當前rssi值,若失敗返回0.范圍0到-114,越小越好 |
mobile.rsrp()
作用:獲取rsrp,參考信號接收功率。
參數(shù):
無
返回值:
返回值類型 | 解釋 |
---|---|
int |
當前rsrp值,若失敗返回0.取值范圍:-44~-140,值越大越好 |
mobile.rsrq()
作用:獲取rsrq,參考信號發(fā)送功率。
參數(shù):
無
返回值:
返回值類型 | 解釋 |
---|---|
int |
當前rsrq值,若失敗返回0.取值范圍:-3~-19.5,值越大越好 |
mobile.snr()
作用:獲取snr,信噪比。
參數(shù):
無
返回值:
返回值類型 | 解釋 |
---|---|
int |
當前snq值,若失敗返回0.范圍0-30,越大越好 |
mobile.simid(id)
作用:獲取當前SIM卡槽,或者切換卡槽。
參數(shù):
填入的參數(shù)以表格中的為準。
傳入值類型 | 解釋 |
---|---|
int |
SIM卡的編號,例如0,1,如果支持雙卡,比如EC618,可以填2來自適應(yīng),但是會占用掉4個IO(gpio4/5/6/23)。如果不填就直接讀取當前卡槽 |
boolean |
是否優(yōu)先用SIM0,只有SIM卡編號寫2自適應(yīng)才有用!!!。true優(yōu)先用SIM0,false則由具體平臺決定,支持雙卡雙待SIM0優(yōu)先,不支持的是上一次檢測到的優(yōu)先,默認是false,必須在開機就配置,否則就無效了 |
返回值:
返回值類型 | 解釋 |
---|---|
int |
當前sim卡槽編號,若失敗返回-1 |
mobile.apn(index,cid,new_apn_name,user_name,password,ip_type,protocol)
作用:獲取或設(shè)置APN,設(shè)置APN必須在入網(wǎng)前就設(shè)置好,比如在SIM卡識別完成前就設(shè)置好。
參數(shù):
填入的參數(shù)以表格中的為準。
傳入值類型 | 解釋 |
---|---|
int | 編號,默認0。在支持雙卡的模塊上才會出現(xiàn)0或1的情況 |
int | cid,默認0。如果要用非默認APN來激活,必須>0 |
string | 新的APN,不填就是獲取APN,填了就是設(shè)置APN,是否支持設(shè)置取決于底層實現(xiàn) |
string | 新的APN的username,如果APN不是空,那必須填寫,如果沒有則留空字符串""。如果APN是空的,則可以為nil |
string | 新的APN的password,如果APN不是空,那必須填寫,如果沒有則留空字符串""。如果APN是空的,則可以為nil |
int | 激活A(yù)PN時的IPTYPE,1=IPV4,2=IPV6,3=IPV4V6,默認是1 |
int | 激活A(yù)PN時,如果需要username和password,就要寫鑒權(quán)協(xié)議類型(0沒有,1:PAP,2:CHAP),1~3,默認3。一般沒有用戶名密碼的寫0,反之寫3,如果不行1和2都可以嘗試。不需要鑒權(quán)的寫0 |
boolean | 是否刪除APN,true表示是,其他都否。只有參數(shù)3新的APN不是string的時候才有效 |
返回值:
返回值類型 | 解釋 |
---|---|
string |
獲取到的默認APN值,失敗返回nil |
mobile.scell()
作用:獲取當前服務(wù)小區(qū)更詳細的信息。
參數(shù):
無
返回值:
返回值類型 | 解釋 |
---|---|
table |
服務(wù)小區(qū)的信息 |
mobile.getCellInfo()
作用:獲取基站信息。
參數(shù):
無
返回值:
返回值類型 | 解釋 |
---|---|
table |
包含基站數(shù)據(jù)的數(shù)組 |
mobile.config(item,value)
作用:網(wǎng)絡(luò)特殊配置。
參數(shù):
傳入值類型 | 解釋 |
---|---|
int |
配置項目,看mobile.CONF_XXX |
int |
配置值,根據(jù)具體配置的item決定 |
返回值:
返回值類型 | 解釋 |
---|---|
boolean |
是否成功 |
mobile.reqCellInfo(timeout)
作用:發(fā)起基站信息查詢,含臨近小區(qū)。
參數(shù):
傳入值類型 | 解釋 |
---|---|
int |
超時時長,單位秒,默認15.最少5,最高60 |
返回值:
返回值類型 | 解釋 |
---|---|
nil |
無返回值 |
mobile.number(id)
作用:獲取手機卡號,注意,只有寫入了手機號才能讀出,因此有可能讀出來是空的。
參數(shù):
傳入值類型 | 解釋 |
---|---|
int |
SIM卡的編號,例如0,1,默認0 |
返回值:
返回值類型 | 解釋 |
---|---|
string |
number值,若失敗返回nil |
6、代碼示例介紹
6.1查詢mobile的band和iccid和csq等信息。
6.1.1查詢、更改、和恢復band的設(shè)置
6.1.2查詢mobile相關(guān)數(shù)據(jù)
6.1.3訂閱查詢的信息:
6.1.5獲取SIM卡狀態(tài)
7、功能驗證
實現(xiàn)了設(shè)置頻率和查找到的mobile相關(guān)參數(shù)的功能。
8、總結(jié)
本demo實現(xiàn)了查找和設(shè)置mobile頻段,和獲取imei、imsi、iccid、csq、rssi、rsrq、rsrp、snr等相關(guān)參數(shù)。
9、常見問題
9.1 獲取模塊SN
出廠未必有寫SN,一般用途的唯一id,可以用mobile.imei()代替,如需要真正的唯一ID,使用mcu.unique_id()。
9.2 專網(wǎng)卡如何上網(wǎng)
使用函數(shù)mobile.apn()時,專網(wǎng)卡設(shè)置的demo,name,user,password聯(lián)系卡商獲取。
審核編輯 黃宇
-
4G
+關(guān)注
關(guān)注
15文章
5579瀏覽量
120914 -
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2930文章
46095瀏覽量
390377 -
頻段
+關(guān)注
關(guān)注
1文章
331瀏覽量
24862
發(fā)布評論請先 登錄
小靈通頻段獲準用于國產(chǎn)4G發(fā)展
PMAC_參數(shù)設(shè)置
4G DTU和GPRS/3G DTU的對比,誰的優(yōu)勢更明顯
4G/5G頻段及四大運營商頻段劃分
4G DTU的優(yōu)勢及功能
變頻器功能參數(shù)設(shè)置
變頻器參數(shù)設(shè)置

4G通信模塊的特點
Vivado布線和生成bit參數(shù)設(shè)置

變頻器參數(shù)設(shè)置方法
4G路由器設(shè)置技巧,輕松實現(xiàn)高速暢游互聯(lián)網(wǎng)
德力西變頻器em60g7r5t4b參數(shù)設(shè)置
通信開關(guān)電源參數(shù)設(shè)置方法
SkyOne? 低頻段 Tx-Rx 前端模塊,適用于低頻段/高頻段 2G 的 3G / 4G / 5G 應(yīng)用 skyworksinc

評論