基于Linux2.6.24內核的WSN多頻段網(wǎng)關(guān)設計
2.2 3G網(wǎng)絡(luò )接入接口部分
3G網(wǎng)絡(luò )接入部分采用USB接口的華為ET128無(wú)線(xiàn)網(wǎng)卡。接入接口使用USB—HUB芯片AU9254A21,它是一款單芯片USB集線(xiàn)器控制器。AU92 54A21采用12MHz無(wú)源晶振,為芯片工作提供獨立的時(shí)鐘。3G網(wǎng)絡(luò )接入部分接口電路如圖4所示。本文引用地址:http://dyxdggzs.com/article/159421.htm
2.3 以太網(wǎng)接入部分
網(wǎng)關(guān)通過(guò)以太網(wǎng)口發(fā)送數據包的原理是:處理器先將待發(fā)送的數據存入到內部存儲器,提供發(fā)送緩沖區的首地址和數據長(cháng)度,然后執行發(fā)送命令,由DM9000A將數據按TCP/IP協(xié)議格式發(fā)送到物理鏈路上。
因以太網(wǎng)信號電平與以太網(wǎng)控制器信號電平不同,所以在硬件電路實(shí)現上需要在控制器與RJ-45接口間增加一個(gè)網(wǎng)絡(luò )變壓器,網(wǎng)絡(luò )變壓器
采用TRC9016。
電信號通過(guò)網(wǎng)絡(luò )變壓器轉換,然后經(jīng)RJ-45接口接入以太網(wǎng),從而完成數據發(fā)送過(guò)程。DM9000A主要完成數據包和數字電信號之間的相互轉換。
3 網(wǎng)關(guān)軟件系統設計
網(wǎng)關(guān)的軟件環(huán)境采用的是嵌入式Linux系統。移植好的Linux2.6.24源碼已經(jīng)包含了以太網(wǎng)控制器DM9000A、USB接口芯片等芯片的驅動(dòng)。因此,軟件部分只需要設計串口擴展芯片TL1 6C554A的驅動(dòng)程序以及Linux環(huán)境下的應用程序即可。
3.1 串口擴展芯片TL16C554A驅動(dòng)的實(shí)現
Linux2.6.24內核提供了統一的設備驅動(dòng)模型。多串口設備驅動(dòng)的注冊,流程如圖5所示。
3.2 Linux下PPP的管理和配置
根據網(wǎng)關(guān)硬件接口的情況修改、移植通用驅動(dòng)代碼后,通過(guò)相關(guān)的配置,定制和編譯網(wǎng)關(guān)所需的內核映像文件。內核編譯采用的交叉編譯器版本為arm-linux-gcc3.4.1,使用makemenuconfig ARCH=arm命令進(jìn)入內核配置圖形化界面,選擇和PPP(Point-to-Point,點(diǎn)對點(diǎn)協(xié)議)有關(guān)的選項,添加系統對PPP功能的支持。界面如圖6所示。配置完成以后,保存設置,退出內核配置圖形化界面。使用命令:makeuImage ARCH=arm CROSS_COMPILE=arm-linux-.編譯完成以后,會(huì )在源碼包的arch/arm/boot路徑下生成內核映像文件uImage,如圖7所示。
物聯(lián)網(wǎng)相關(guān)文章:物聯(lián)網(wǎng)是什么
評論