礦用低功耗Wi―Fi移動終端設(shè)計
2 Wi-Fi移動終端軟件設(shè)計
Wi—Fi模組RN171向外提供UART、SPI、GPIO接口與外部主機進行通信,外部主機可以通過RN171提供給用戶的串口命令,或者通過SPI協(xié)議訪問RN171相應(yīng)地址寄存器這兩種方式對RN171進行訪問控制和數(shù)據(jù)傳輸。完整的TCP/IP網(wǎng)絡(luò)協(xié)議棧、Wi—Fi模組的實時時鐘系統(tǒng)、電源管理、Wi—Fi密碼加速器都固化在模組內(nèi)部。
2.1 軟件架構(gòu)分析
Wi—Fi移動終端的軟件架構(gòu)如圖2所示。本文引用地址:http://m.butianyuan.cn/article/148145.htm
Wi—Fi移動終端的軟件架構(gòu)主要包括硬件接口驅(qū)動層、任務(wù)調(diào)度抽象層和應(yīng)用層這3層。主機控制器在軟件底層通過RN171 Wi—Fi模組所提供的SPI,UART和GPIO硬件接口對Wi—Fi模組進行訪問控制操作以及Wi—Fi數(shù)據(jù)的傳輸。
在硬件接口驅(qū)動層,主機主要完成SPI、UART和GPIO外設(shè)的驅(qū)動程序設(shè)計,這3個外設(shè)程序設(shè)計都是通過中斷方式對外設(shè)接口進行數(shù)據(jù)訪問,減少了主控制器的等待時間,提高了執(zhí)行效率。
在任務(wù)調(diào)度層,通過硬件接口驅(qū)動層的外設(shè)驅(qū)動程序接口,在程序后臺建立了4個調(diào)度任務(wù),分別處理Wi—Fi數(shù)據(jù)的收發(fā)和基于低功耗要求的睡眠任務(wù),以及人機交互等一些輔助功能,并向應(yīng)用層提供相應(yīng)的任務(wù)接口。主機的后臺程序通過輪詢方式監(jiān)測任務(wù)的發(fā)生并進行相應(yīng)的處理,處理內(nèi)容包括任務(wù)結(jié)構(gòu)體和數(shù)據(jù)幀結(jié)構(gòu)體的初始化、任務(wù)的分配和管理、內(nèi)存管理、任務(wù)時間片分配等。
在本終端軟件的應(yīng)用層,依據(jù)任務(wù)調(diào)度層提供的相應(yīng)軟件接口,可以進行多種數(shù)據(jù)應(yīng)用和電源管理應(yīng)用設(shè)計。由于RN171支持IEEE802. 11b/g協(xié)議標(biāo)準(zhǔn),提供高達(dá)54MHz的數(shù)據(jù)傳輸帶寬,并能獲取其所在AP(接入點)的AP MAC地址、RSSI(接收信號強度)等Wi—Fi網(wǎng)絡(luò)信息,因此,本終端可以實現(xiàn)Wi—Fi終端的區(qū)域定位、監(jiān)測監(jiān)控、多媒體流(語音、視頻)數(shù)據(jù)傳輸?shù)葦?shù)據(jù)業(yè)務(wù)應(yīng)用功能。
2.2 建立連接
Wi—Fi模組RN171有兩種建立連接的方式:一是連接固定SSID的AP;二是搜索接收范圍內(nèi)的所有AP,優(yōu)先連接RSSI強度高的AP。當(dāng)成功連接AP后,會通過Wi—Fi模組Flash中存儲的阿絡(luò)設(shè)置信息進行設(shè)置,建立連接的設(shè)置信息包括服務(wù)器IP地址(Remote IP)、服務(wù)器端口號(Remo te Port)、網(wǎng)關(guān)IP地址、靜態(tài)IP方式/DHCP服務(wù)器IP自動分配、終端自身1P地址、終端端口號、TCP/UDP通信協(xié)議承載。
2.3 數(shù)據(jù)通信
Wi—Fi模組RN171根據(jù)設(shè)置的TCP/UDP通信協(xié)議進行數(shù)據(jù)通信,通過其內(nèi)置的32位SPARC處理器來執(zhí)行。只有當(dāng)接收到有效的數(shù)據(jù)包時,才會通過UART接口把數(shù)據(jù)傳送給主機,觸發(fā)主機的接收功能。當(dāng)有數(shù)據(jù)發(fā)送時,主機通過UART接口把數(shù)據(jù)傳送給Wi—Fi模組,Wi—Fi模組會根據(jù)數(shù)據(jù)的承載協(xié)議按照設(shè)置的通信參數(shù)把數(shù)據(jù)發(fā)送出去。
2.4 低功耗軟件設(shè)計
根據(jù)移動終端的具體運用場合,在軟件設(shè)計上定義了連續(xù)工作模式(AetiveMode)、間歇性工作模式(Run_Intermitent Mode),以及深度睡眠模式(Deepsleep Mode)3種模式,3種模式之間可以根據(jù)應(yīng)用需求相互轉(zhuǎn)換。連續(xù)工作模式時,低功耗電源管理關(guān)閉,主控芯片、Wi—Fi模組,以及輔助功能芯片都處于正常運行狀態(tài),終端的功耗達(dá)到最大值。當(dāng)需要傳輸多媒體流數(shù)據(jù)時,通信過程中數(shù)據(jù)不能間斷,移動終端就處于連續(xù)工作模式以滿足應(yīng)用需求,當(dāng)通信任務(wù)完成后,終端就進入深度睡眠模式以節(jié)省功耗,并通過按鍵的外部中斷來喚醒主控制器以發(fā)起多媒體流的通信任務(wù)。間歇性工作模式時,主機通過定時器外設(shè)控制Wi—Fi模組在一個固定時間內(nèi)發(fā)送/接收數(shù)據(jù),剩余的大部分時間,終端上的所有芯片都處于低功耗的睡眠模式。主控制器在低頻率(32 kHz)下進入掉電模式,通過實時時鐘自動喚醒,然后由主機喚醒Wi—Fi模組和其他功能模塊。在完成周期性數(shù)據(jù)通信的同時,最大程度地降低終端功耗。對于類似于定位系統(tǒng)應(yīng)用這種通信數(shù)據(jù)量少且只需要周期性觸發(fā)通信的應(yīng)用場合,Wi—Fi終端應(yīng)切換為這種工作模式,以降低功耗。
評論