《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 解決方案 > 基于ARM7處理器uC/OS系統的Nos-Wlan移植

基于ARM7處理器uC/OS系統的Nos-Wlan移植

2011-06-24
作者:余俊(北京中電華大電子設計有限責任公司)

1 引言

目前,在無線監控、工業控制、視頻傳輸等行業應用中,嵌入式無線系統主要采用以NORDIC解決方案為代表的無操作系統環境,該方案由“CPU+無線數傳模塊”構成,能夠實現短距離低帶寬無線通信。為滿足這種需求,北京中電華大電子設計有限責任公司(以下簡稱華大電子)適時的推出了不依賴于任何操作系統的Nos-Wlan模塊以加速現有產品的無線功能的升級,模塊支持國內(WAPI)/國際(802.11i)安全標準。本文主要介紹了華大電子Nos-Wlan模塊在基于ARM7核處理器LPC2478uC/OS-ii環境下的移植。

2 Nos-Wlan模塊介紹

Nos-Wlan系列模塊產品是為了滿足工業應用、安防監控等領域中,現有產品的無線功能升級的需要而研發的,其最大的特點在于:它提供了一個不基于任何操作系統的驅動軟件,可以集成到任何的系統平臺中運行,并實現高速的數據傳輸,使得沒有操作系統也能使用Wi-Fi進行視頻傳輸成為可能。Nos-Wlan產品硬件如圖1所示:

圖 1 TLG09UB09

Nos-Wlan其驅動軟件結構如圖2所示:

圖 2 Nos-Wlan驅動結構

Nos-Wlan模塊集成到主機系統中的位置如圖3所示:

圖 3 Nos-Wlan在主機系統的位置

3 LPC2478處理器uC/OS-ii系統框圖

該系統以NXP的LPC2478處理器為核心,外圍集成了FLASH,SDRAM,UART模塊,以太網接口模塊,USB OTG接口模塊,LCD液晶屏和觸摸屏模塊,以及以FPGA為核心的視頻采集模塊以及華大電子的Nos-Wlan模塊,該系統主要應用于視頻監控領域,其系統硬件框架如圖4所示:

圖 4 系統硬件框架

4 Nos-Wlan模塊軟件移植

根據華大電子Nos-Wlan軟件用戶手冊,Nos-Wlan模塊軟件移植所調用的模塊內部接口函數有:hedrv_Init,hedrv_UsbPlugIn,hedrv_UsbPullOut,hedrv_UsbRx,hedrv_UsbTxDone,hedrv_UsbControlDone,hedrv_TickFunction,所需要實現的模塊內部回調函數有:hosts_UsbHostReset,hosts_UsbTx,hosts_UsbControl,Nos-Wlan模塊軟件移植代碼部分主要實現模塊內部的初始化,模塊內部所使用源時鐘注冊,USB控制幀及批量傳輸幀的發送和接收。其中,系統USB HOST(OHCI)驅動是基于周立功公司所提供的基于U盤的OHCI驅動修改而來,以適應USB無線網卡的需求。

4.1 模塊初始化

模塊初始化函數aq3_usb_init,完成整個模塊的初始化,包括Nos Wifi模塊內部內存池的初始化(調用模塊接口函數hedrv_Init)、USB傳輸部分主數據結構的初始化、USB傳輸主線程的創建、模塊內部源時鐘的初始化及網卡的初始化(調用模塊接口函數hedrv_UsbPlugIn),網卡初始化完成后模塊內部會調用用戶注冊的初始化完成回調函數(DevInitDone,用戶實現),該函數由網卡初始化函數hedrv_UsbPlugIn的參數傳入。

4.2 模塊的卸載

模塊卸載函數aq3_usb_exit,完成整個模塊的卸載,包塊模塊主源時鐘的釋放、Nos Wifi模塊的卸載(調用模塊接口函數hedrv_UsbPullOut)及所申請資源的釋放等。

4.3 Nos-Wlan模塊臨界保護的實現

由于ucos-ii是實時的多任務嵌入式操作系統,模塊需要對相關數據結構進行臨界保護,其實現只需要使用ucos-ii提供的臨界保護函數即可:

void hosts_EnterCritical (void)

{

OS_ENTER_CRITICAL();

}

void hosts_LeaveCritical (void)

{

OS_EXIT_CRITICAL();

}

4.4 模塊源時鐘

模塊的源時鐘時由系統tick定時器產生的,驅動向系統tick服務程序注冊定時器超時回調函數,該函調函數進行計時,當10ms定時時間到時,該函數調用模塊定時器超時處理回調函數hedrv_TickFunction。

4.5 USB控制幀、Bulkin幀、Bulkout幀傳輸

本系統中USB幀的發送都是統一在USB傳輸主線程里處理的,USB相關幀的傳輸接口函數只需要完成相關發送數據結構的初始化后將其提交給USB傳輸處理主線程即可。USB控制幀傳輸函數hosts_UsbControl只需完成USB標準請求數據結構USB_DEV_REQ的初始化,USB BULKOUT幀傳輸函數hosts_UsbTx只需要完成USB請求數據結構urb的初始化,USB BULKIN幀傳輸函數usb_bulkin也是只需要完成USB請求數據結構urb的初始化。USB傳輸主線程usb_transfer_thread,主要處理USB控制幀和批量傳輸幀的發送及其USB傳輸完成后的處理,其中USB控制傳輸采用同步的通信方式,批量傳輸采用異步的方式,提交urb后即返回,等到傳輸完成后USB HOST驅動調用提交urb時注冊的回調函數,該回調函數發送消息給USB傳輸主線程,由主線程完成對傳輸完成后的后續處理。USB傳輸完成后,主線程將根據完成幀的類型分別調用模塊控制幀回調函數hedrv_UsbControlDone或者BULKOUT幀回調函數hedrv_UsbTxDone通知模塊本次傳輸完成,后模塊判斷內部緩存隊列是否為空,若不為空,則模塊調用控制幀或者BULKOUT幀傳輸回調函數(hosts_UsbControl,hosts_UsbTx)繼續發送。BULKIN幀傳輸完成后,傳輸完成回調函數將調用模塊內部接口函數hedrv_UsbRx將接收到的數據幀提交模塊處理后繼續提交BULKIN幀以接受網卡上行數據。

4.6 Nos-Wlan網絡協議棧接口

該部分移植代碼涉及的模塊回調函數有:hedrv_AllocateNetBuf,hedrv_NetSendNetBuf及hedrv_NetSend,需要用戶實現的模塊回調函數是hosts_NetRecv。其中hedrv_NetSend是hedrv_AllocateNetBuf和hedrv_NetSendNetBuf的綜合,hedrv_AllocateNetBuf用于向模塊申請發送內存,hedrv_NetSendNetBuf進行發送操作,而hedrv_NetSend函數則是將用戶數據拷貝到模塊內部所申請的動態內存里進行相關處理及發送。用戶實現hosts_NetRecv回調函數用于處理網卡接收的數據幀,其中數據幀是以以太網包的形式由模塊內部調用該函數以提交給用戶進行處理的。

調用模塊MAC幀發送函數需要用戶將需要發送的數據包打包成以太網數據包后提交模塊發送,調用函數hedrv_NetSend,用戶只需將打包的以太網數據包和長度傳給該函數即可,模塊內部將完成緩存空間的申請和釋放,用戶也可以調用函數hedrv_AllocateNetBuf自行申請緩存空間并將以太網數據包拷貝至空間后調用函數hedrv_NetSendNetBuf進行發送,申請的空間不需要用戶進行釋放操作,模塊內部將會在發送成功后自行釋放。

當網卡接收到MAC數據幀時,模塊將調用回調函數hosts_NetRecv提交用戶處理,該函數由用戶實現,提交該函數的MAC數據模塊將其打包成以太網數據包,用戶只需要按以太網數據包處理即可。

5 結論

本文詳細介紹了華大電子Nos-Wlan模塊在LPC2478處理器uC/OS-ii系統上的移植,整個項目周期為2周,其中系統CPU主頻為40MHz,Nos-Wlan模塊在該平臺下吞吐可達4Mbps,穩定通信可達72小時不斷網。通過該系統的移植,證明了華大電子Nos-Wlan模塊能夠加速客戶產品無線功能的升級。

參考文獻

[1] 北京中電華大電子設計有限公司. Nos-Wlan軟件用戶手冊[Z]. 北京:北京中電華大電子設計有限公司,2009.

[2] Compaq,Microsoft,National Semiconductor.Open Host Controller Interface Specification for USB[S].1999.

[3] Compaq,Hewlett-Packard,Intel,Lucent,Microsoft,NEC,Philips.Universal Serial Bus Specification Revision 1.1 [S].1998.

[4] 邵貝貝等. 嵌入式實時操作系統uC/OS-II[M]. 北京:北京航空航天大學出版社,2006.

[5] NXP Semiconductors.LPC24XX User manual Rev.04[S].2009.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
一本一道久久综合狠狠老精东影业| 亚洲电影免费在线观看| 国产女人aaa级久久久级| 久久亚洲私人国产精品va| 亚洲五月六月| 亚洲精品网站在线播放gif| 亚洲欧美区自拍先锋| 亚洲美女诱惑| 激情欧美亚洲| 国产情人综合久久777777| 欧美日韩伊人| 免费日韩av| 久久久久久久久久久一区| 亚洲欧美日本另类| 亚洲国产日韩欧美| 香蕉国产精品偷在线观看不卡| 日韩视频免费观看| 亚洲国产欧美在线人成| 国产偷国产偷亚洲高清97cao| 欧美日韩中文字幕日韩欧美| 欧美丰满高潮xxxx喷水动漫| 久久亚洲精品欧美| 欧美一区二区三区男人的天堂 | 亚洲美女av网站| 经典三级久久| 国语自产精品视频在线看8查询8| 国产伦精品一区二区三区免费迷| 国产精品久久久久久久久免费桃花| 欧美精品一二三| 欧美国产日韩二区| 久久成人18免费网站| 亚洲欧美日韩一区在线| 亚洲男人第一网站| 亚洲综合欧美日韩| 亚洲欧美日韩精品久久| 亚洲女人小视频在线观看| 亚洲免费在线观看视频| 亚洲视频欧美在线| 亚洲一区二区三区国产| 亚洲一区二区三区777| 亚洲小说春色综合另类电影| 亚洲三级电影全部在线观看高清| 亚洲激情欧美激情| 亚洲激情在线观看视频免费| 欧美在线亚洲在线| 亚洲国产精彩中文乱码av在线播放| 久久精品一区二区国产| 亚洲动漫精品| 亚洲精品国久久99热| 日韩视频永久免费| 亚洲无吗在线| 欧美一级专区免费大片| 久久精品一区二区国产| 久久免费视频在线观看| 久久这里只有| 久久综合国产精品| 欧美日韩www| 亚洲欧美日韩一区在线| 久久av在线| 欧美国产免费| 国产精品色午夜在线观看| 红桃av永久久久| 日韩视频免费| 欧美影院成人| 一区二区三区四区五区视频| 欧美一级久久久久久久大片| 欧美高清在线视频| 国产精品亚洲第一区在线暖暖韩国| 国外成人免费视频| 夜夜嗨av一区二区三区四季av| 欧美一区二区三区四区在线观看| 99精品视频免费观看视频| 欧美一级专区| 欧美另类女人| 韩日视频一区| 亚洲一区日韩| 日韩亚洲视频| 久久色中文字幕| 国产精品爱久久久久久久| 在线日韩一区二区| 亚洲欧美文学| 亚洲色在线视频| 米奇777超碰欧美日韩亚洲| 欧美午夜精品久久久久久浪潮| 伊人狠狠色j香婷婷综合| 亚洲午夜精品久久久久久浪潮| 亚洲国产日韩美| 久久精品国产91精品亚洲| 欧美日韩一区综合| 在线欧美不卡| 欧美一区二区黄| 亚洲欧美不卡| 欧美日韩高清区| 亚洲福利视频网| 久久精品欧洲| 欧美在线播放一区| 欧美三级视频| 亚洲日本无吗高清不卡| 亚洲福利一区| 久久精品国产一区二区三区免费看 | 在线成人性视频| 欧美一区二区三区免费视频| 亚洲一区制服诱惑| 欧美日韩大陆在线| 亚洲欧洲综合另类在线| 亚洲黄色av一区| 久久婷婷久久| 国模精品一区二区三区| 亚洲性线免费观看视频成熟| 在线视频亚洲| 欧美日韩你懂的| 亚洲精品在线视频| 亚洲精品国产日韩| 免费欧美日韩| 亚洲第一免费播放区| 久久精品九九| 久久久久国产精品一区三寸| 国产精品一二一区| 亚洲永久在线观看| 羞羞视频在线观看欧美| 国产精品久久久久9999高清| 中文有码久久| 亚洲女同精品视频| 国产精品久久久一区麻豆最新章节| 亚洲免费福利视频| 日韩一级网站| 欧美三级午夜理伦三级中文幕 | 欧美一区三区三区高中清蜜桃| 欧美性猛交视频| 亚洲午夜三级在线| 午夜精品一区二区三区在线| 国产精品日韩一区二区三区| 亚洲综合大片69999| 午夜免费在线观看精品视频| 国产精品青草综合久久久久99 | 亚洲人成网站999久久久综合| 老鸭窝毛片一区二区三区| 黄色成人av| 亚洲电影网站| 欧美国产日韩在线| 日韩视频精品在线| 亚洲午夜精品久久久久久app| 欧美视频在线免费| 中文在线一区| 久久精品国产免费| 精品51国产黑色丝袜高跟鞋| 亚洲精品欧美激情| 欧美日韩一二区| 亚洲一区精品电影| 久久国产日本精品| 亚洲第一成人在线| aa国产精品| 国产精品乱码人人做人人爱| 亚洲欧美国产77777| 麻豆亚洲精品| 亚洲精品乱码视频| 午夜亚洲性色福利视频| 国产亚洲精品久久久久久| 亚洲国产视频直播| 欧美久久99| 亚洲午夜在线观看| 久久亚洲综合色一区二区三区| 亚洲成色777777在线观看影院| 亚洲免费观看| 国产精品福利片| 久久国产福利| 欧美精品激情在线观看| 亚洲少妇最新在线视频| 欧美在线一二三| 亚洲电影在线看| 亚洲欧美99| 伊人成人开心激情综合网| 99国产精品视频免费观看| 国产精品乱码一区二区三区| 欧美主播一区二区三区| 欧美噜噜久久久xxx| 亚洲欧美日韩一区二区在线 | 欧美午夜片在线观看| 性欧美在线看片a免费观看| 欧美精品色一区二区三区| 亚洲一区日韩| 女仆av观看一区| 亚洲一区二区日本| 欧美国产日本高清在线| 亚洲欧美成人一区二区三区| 欧美xart系列在线观看| 亚洲影院高清在线| 欧美成人dvd在线视频| 亚洲一区中文| 欧美大色视频| 亚洲综合视频一区| 欧美黄色小视频| 欧美一区二区三区在线观看视频| 欧美精品激情| 欧美怡红院视频| 欧美午夜精品久久久久久超碰| 亚洲国产第一| 国产伦精品一区二区三区照片91| 亚洲精品国产拍免费91在线| 国产欧美日韩91|