大家好,今天分享一個(gè)開(kāi)源框架RIL(Radio Interface Layer),嵌入式平臺(tái)的無(wú)線通信模塊管理框架。
簡(jiǎn)介
RIL是一款專(zhuān)門(mén)為嵌入式平臺(tái)開(kāi)發(fā)的無(wú)線通信模組(GSM/GPRS/CatM1/NB-Iot)管理軟件。 它與其它大型框架(例如Android RIL、Wince RIL)不同的是,它被設(shè)計(jì)成應(yīng)用于資源受限物聯(lián)網(wǎng)終端設(shè)備(單片機(jī)+無(wú)線模組的方案),并提供物聯(lián)網(wǎng)通信所需的基本功能,包含網(wǎng)絡(luò)注冊(cè)、連接管理、短信收發(fā)及Socket通信。 目前已支持EC21、BG96、 HL8518等模組,相關(guān)的應(yīng)用也在持續(xù)更新中。
基本特性
包含網(wǎng)絡(luò)注冊(cè)、連接、短信收發(fā)及Socket通信管理等基本功能。
模組驅(qū)動(dòng)使用插件化方式管理,同一個(gè)系統(tǒng)中能夠掛載適配多個(gè)模組,并能夠動(dòng)態(tài)選擇模組驅(qū)動(dòng)程序。
通過(guò)簡(jiǎn)單的修改就能夠適用于不同的RTOS平臺(tái)。
內(nèi)置多種情況下的異常處理機(jī)制,保證模組穩(wěn)定運(yùn)行。
內(nèi)置常用組件,如帶斷點(diǎn)續(xù)傳功能的HTTP文件下載、TFTP傳輸、MQTT等。
系統(tǒng)要求
為了使RIL能夠正常運(yùn)行,目標(biāo)系統(tǒng)必須滿足以下要求:
ROM 資源:至少 13.5K Bytes(取決于掛載的模組個(gè)數(shù)及使用的組件)
RAM 資源:至少 1.2K Bytes(取決于socket創(chuàng)建數(shù)量)
RTOS及堆棧: RIL需要運(yùn)行在兩個(gè)任務(wù)中,每個(gè)任務(wù)的堆棧至少 256 Bytes
編譯器:由于RIL使用了一些C99的特性(柔性數(shù)組、內(nèi)聯(lián)),所以編譯器需要開(kāi)啟對(duì)C99的支持。對(duì)于IAR,它默認(rèn)是打開(kāi)的,而Keil MDK需要手動(dòng)增加編譯選項(xiàng)(--c99 --gnu) 。
軟件架構(gòu)
軟件架構(gòu)圖
開(kāi)發(fā)指南
#include"ril.h" //.... //創(chuàng)建RIL任務(wù) ril_init(&adt,&cfg);//初始化RIL ril_use_device("EC21");//選擇模組型號(hào) ril_open();//打開(kāi)設(shè)備 ril_netconn(true);//啟動(dòng)網(wǎng)絡(luò)連接 //...
審核編輯:湯梓紅
-
嵌入式
+關(guān)注
關(guān)注
5138文章
19524瀏覽量
314704 -
無(wú)線通信
+關(guān)注
關(guān)注
58文章
4705瀏覽量
144840 -
編譯器
+關(guān)注
關(guān)注
1文章
1654瀏覽量
49872
原文標(biāo)題:一個(gè)嵌入式平臺(tái)的無(wú)線通信模塊管理框架
文章出處:【微信號(hào):玩轉(zhuǎn)單片機(jī)與嵌入式,微信公眾號(hào):玩轉(zhuǎn)單片機(jī)與嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
Android RIL架構(gòu)簡(jiǎn)介
WiMax-新興無(wú)線通信技術(shù)簡(jiǎn)介
WiMax無(wú)線通信技術(shù)簡(jiǎn)介
藍(lán)牙芯片的無(wú)線通信模塊設(shè)計(jì)與開(kāi)發(fā)

基于STM32的無(wú)線通信模塊設(shè)計(jì)

無(wú)線通信模塊功能的區(qū)別 無(wú)線通信模塊應(yīng)用范圍
無(wú)線通信原理與應(yīng)用課后題答案簡(jiǎn)介

nRF24L01無(wú)線通信模塊使用簡(jiǎn)介

一個(gè)嵌入式無(wú)線通信模組RIL
Zigbee無(wú)線通信模塊的工作原理和作用
Zigbee無(wú)線通信模塊的特點(diǎn)和應(yīng)用場(chǎng)景
NBIOT無(wú)線通信模塊可以傳輸多遠(yuǎn)?
藍(lán)牙模塊、WiFi模塊等無(wú)線通信模塊使用規(guī)范

評(píng)論