女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在uC/OS-ii環(huán)境下實(shí)現(xiàn)Nos-Wlan模塊的移植操作

電子設(shè)計(jì) ? 來(lái)源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2020-01-15 08:00 ? 次閱讀

引言

目前,在無(wú)線監(jiān)控、工業(yè)控制視頻傳輸?shù)刃袠I(yè)應(yīng)用中,嵌入式無(wú)線系統(tǒng)主要采用以NORDIC解決方案為代表的無(wú)操作系統(tǒng)環(huán)境,該方案由“CPU+無(wú)線數(shù)傳模塊”構(gòu)成,能夠?qū)崿F(xiàn)短距離低帶寬無(wú)線通信。為滿足這種需求,北京中電華大電子設(shè)計(jì)有限責(zé)任公司(以下簡(jiǎn)稱華大電子)適時(shí)的推出了不依賴于任何操作系統(tǒng)的Nos-Wlan模塊以加速現(xiàn)有產(chǎn)品的無(wú)線功能的升級(jí),模塊支持國(guó)內(nèi)(WAPI)/國(guó)際(802.11i)安全標(biāo)準(zhǔn)。本文主要介紹了華大電子Nos-Wlan模塊在基于ARM7核處理器LPC2478的uC/OS-ii環(huán)境下的移植。

Nos-Wlan模塊介紹

Nos-Wlan系列模塊產(chǎn)品是為了滿足工業(yè)應(yīng)用、安防監(jiān)控等領(lǐng)域中,現(xiàn)有產(chǎn)品的無(wú)線功能升級(jí)的需要而研發(fā)的,其最大的特點(diǎn)在于:它提供了一個(gè)不基于任何操作系統(tǒng)的驅(qū)動(dòng)軟件,可以集成到任何的系統(tǒng)平臺(tái)中運(yùn)行,并實(shí)現(xiàn)高速的數(shù)據(jù)傳輸,使得沒(méi)有操作系統(tǒng)也能使用Wi-Fi進(jìn)行視頻傳輸成為可能。Nos-Wlan產(chǎn)品硬件如圖1所示:

圖1:TLG09UB09。

Nos-Wlan其驅(qū)動(dòng)軟件結(jié)構(gòu)如圖2所示:

在uC/OS-ii環(huán)境下實(shí)現(xiàn)Nos-Wlan模塊的移植操作

圖2:Nos-Wlan驅(qū)動(dòng)結(jié)構(gòu)。

Nos-Wlan模塊集成到主機(jī)系統(tǒng)中的位置如圖3所示:

在uC/OS-ii環(huán)境下實(shí)現(xiàn)Nos-Wlan模塊的移植操作

圖3:Nos-Wlan在主機(jī)系統(tǒng)的位置。

LPC2478處理器uC/OS-ii系統(tǒng)框圖

該系統(tǒng)以NXP的LPC2478處理器為核心,外圍集成了FLASH,SDRAMUART模塊,以太網(wǎng)接口模塊,USB OTG接口模塊,LCD液晶屏和觸摸屏模塊,以及以FPGA為核心的視頻采集模塊以及華大電子的Nos-Wlan模塊,該系統(tǒng)主要應(yīng)用于視頻監(jiān)控領(lǐng)域,其系統(tǒng)硬件框架如圖4所示:

在uC/OS-ii環(huán)境下實(shí)現(xiàn)Nos-Wlan模塊的移植操作

圖4:系統(tǒng)硬件框架。

Nos-Wlan模塊軟件移植

根據(jù)華大電子Nos-Wlan軟件用戶手冊(cè),Nos-Wlan模塊軟件移植所調(diào)用的模塊內(nèi)部接口函數(shù)有:hedrv_Init,hedrv_UsbPlugIn,hedrv_UsbPullOut,hedrv_UsbRx,hedrv_UsbTxDone,hedrv_UsbControlDone,hedrv_TickFunction,所需要實(shí)現(xiàn)的模塊內(nèi)部回調(diào)函數(shù)有:hosts_UsbHostReset,hosts_UsbTx,hosts_UsbControl,Nos-Wlan 模塊軟件移植代碼部分主要實(shí)現(xiàn)模塊內(nèi)部的初始化,模塊內(nèi)部所使用源時(shí)鐘注冊(cè),USB控制幀及批量傳輸幀的發(fā)送和接收。其中,系統(tǒng)USB HOST(OHCI)驅(qū)動(dòng)是基于周立功公司所提供的基于U盤的OHCI驅(qū)動(dòng)修改而來(lái),以適應(yīng)USB無(wú)線網(wǎng)卡的需求。

·模塊初始化

模塊初始化函數(shù)aq3_usb_init,完成整個(gè)模塊的初始化,包括Nos Wi-Fi模塊內(nèi)部?jī)?nèi)存池的初始化(調(diào)用模塊接口函數(shù)hedrv_Init)、USB傳輸部分主數(shù)據(jù)結(jié)構(gòu)的初始化、USB傳輸主線程的創(chuàng)建、模塊內(nèi)部源時(shí)鐘的初始化及網(wǎng)卡的初始化(調(diào)用模塊接口函數(shù)hedrv_UsbPlugIn),網(wǎng)卡初始化完成后模塊內(nèi)部會(huì)調(diào)用用戶注冊(cè)的初始化完成回調(diào)函數(shù) (DevInitDone,用戶實(shí)現(xiàn)),該函數(shù)由網(wǎng)卡初始化函數(shù)hedrv_UsbPlugIn的參數(shù)傳入。

·模塊的卸載

模塊卸載函數(shù)aq3_usb_exit,完成整個(gè)模塊的卸載,包塊模塊主源時(shí)鐘的釋放、Nos Wi-Fi模塊的卸載(調(diào)用模塊接口函數(shù)hedrv_UsbPullOut)及所申請(qǐng)資源的釋放等。

Nos-Wlan模塊臨界保護(hù)的實(shí)現(xiàn)

由于ucos-ii是實(shí)時(shí)的多任務(wù)嵌入式操作系統(tǒng),模塊需要對(duì)相關(guān)數(shù)據(jù)結(jié)構(gòu)進(jìn)行臨界保護(hù),其實(shí)現(xiàn)只需要使用ucos-ii提供的臨界保護(hù)函數(shù)即可:

void hosts_EnterCritical (void)

{

OS_ENTER_CRITICAL();

}

void hosts_LeaveCritical (void)

{

OS_EXIT_CRITICAL();

}

·模塊源時(shí)鐘

模塊的源時(shí)鐘時(shí)由系統(tǒng)tick定時(shí)器產(chǎn)生的,驅(qū)動(dòng)向系統(tǒng)tick服務(wù)程序注冊(cè)定時(shí)器超時(shí)回調(diào)函數(shù),該函調(diào)函數(shù)進(jìn)行計(jì)時(shí),當(dāng)10ms定時(shí)時(shí)間到時(shí),該函數(shù)調(diào)用模塊定時(shí)器超時(shí)處理回調(diào)函數(shù)hedrv_TickFunction。

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

本系統(tǒng)中USB幀的發(fā)送都是統(tǒng)一在USB傳輸主線程里處理的,USB相關(guān)幀的傳輸接口函數(shù)只需要完成相關(guān)發(fā)送數(shù)據(jù)結(jié)構(gòu)的初始化后將其提交給USB傳輸處理主線程即可。USB控制幀傳輸函數(shù)hosts_UsbControl只需完成USB標(biāo)準(zhǔn)請(qǐng)求數(shù)據(jù)結(jié)構(gòu)USB_DEV_REQ的初始化,USB BULKOUT幀傳輸函數(shù)hosts_UsbTx只需要完成USB請(qǐng)求數(shù)據(jù)結(jié)構(gòu)urb的初始化,USB BULKIN幀傳輸函數(shù)usb_bulkin也是只需要完成USB請(qǐng)求數(shù)據(jù)結(jié)構(gòu)urb的初始化。USB傳輸主線程 usb_transfer_thread,主要處理USB控制幀和批量傳輸幀的發(fā)送及其USB傳輸完成后的處理,其中USB控制傳輸采用同步的通信方式,批量傳輸采用異步的方式,提交urb后即返回,等到傳輸完成后USB HOST驅(qū)動(dòng)調(diào)用提交urb時(shí)注冊(cè)的回調(diào)函數(shù),該回調(diào)函數(shù)發(fā)送消息給USB傳輸主線程,由主線程完成對(duì)傳輸完成后的后續(xù)處理。USB傳輸完成后,主線程將根據(jù)完成幀的類型分別調(diào)用模塊控制幀回調(diào)函數(shù)hedrv_UsbControlDone或者BULKOUT幀回調(diào)函數(shù)hedrv_UsbTxDone通知模塊本次傳輸完成,后模塊判斷內(nèi)部緩存隊(duì)列是否為空,若不為空,則模塊調(diào)用控制幀或者BULKOUT幀傳輸回調(diào)函數(shù) (hosts_UsbControl,hosts_UsbTx)繼續(xù)發(fā)送。BULKIN幀傳輸完成后,傳輸完成回調(diào)函數(shù)將調(diào)用模塊內(nèi)部接口函數(shù) hedrv_UsbRx將接收到的數(shù)據(jù)幀提交模塊處理后繼續(xù)提交BULKIN幀以接受網(wǎng)卡上行數(shù)據(jù)。

· Nos-Wlan網(wǎng)絡(luò)協(xié)議棧接口

該部分移植代碼涉及的模塊回調(diào)函數(shù)有:hedrv_AllocateNetBuf,hedrv_NetSendNetBuf及hedrv_NetSend,需要用戶實(shí)現(xiàn)的模塊回調(diào)函數(shù)是hosts_NetRecv。其中hedrv_NetSend是hedrv_AllocateNetBuf和 hedrv_NetSendNetBuf的綜合,hedrv_AllocateNetBuf用于向模塊申請(qǐng)發(fā)送內(nèi)存,hedrv_NetSendNetBuf進(jìn)行發(fā)送操作,而hedrv_NetSend函數(shù)則是將用戶數(shù)據(jù)拷貝到模塊內(nèi)部所申請(qǐng)的動(dòng)態(tài)內(nèi)存里進(jìn)行相關(guān)處理及發(fā)送。用戶實(shí)現(xiàn)hosts_NetRecv回調(diào)函數(shù)用于處理網(wǎng)卡接收的數(shù)據(jù)幀,其中數(shù)據(jù)幀是以以太網(wǎng)包的形式由模塊內(nèi)部調(diào)用該函數(shù)以提交給用戶進(jìn)行處理的。

調(diào)用模塊MAC幀發(fā)送函數(shù)需要用戶將需要發(fā)送的數(shù)據(jù)包打包成以太網(wǎng)數(shù)據(jù)包后提交模塊發(fā)送,調(diào)用函數(shù) hedrv_NetSend,用戶只需將打包的以太網(wǎng)數(shù)據(jù)包和長(zhǎng)度傳給該函數(shù)即可,模塊內(nèi)部將完成緩存空間的申請(qǐng)和釋放,用戶也可以調(diào)用函數(shù) hedrv_AllocateNetBuf自行申請(qǐng)緩存空間并將以太網(wǎng)數(shù)據(jù)包拷貝至空間后調(diào)用函數(shù)hedrv_NetSendNetBuf進(jìn)行發(fā)送,申請(qǐng)的空間不需要用戶進(jìn)行釋放操作,模塊內(nèi)部將會(huì)在發(fā)送成功后自行釋放。

當(dāng)網(wǎng)卡接收到MAC數(shù)據(jù)幀時(shí),模塊將調(diào)用回調(diào)函數(shù)hosts_NetRecv提交用戶處理,該函數(shù)由用戶實(shí)現(xiàn),提交該函數(shù)的MAC數(shù)據(jù)模塊將其打包成以太網(wǎng)數(shù)據(jù)包,用戶只需要按以太網(wǎng)數(shù)據(jù)包處理即可。

本文小結(jié)

本文詳細(xì)介紹了華大電子Nos-Wlan模塊在LPC2478處理器uC/OS-ii系統(tǒng)上的移植,整個(gè)項(xiàng)目周期為2周,其中系統(tǒng)CPU主頻為 40MHz,Nos-Wlan模塊在該平臺(tái)下吞吐可達(dá)4Mbps,穩(wěn)定通信可達(dá)72小時(shí)不斷網(wǎng)。通過(guò)該系統(tǒng)的移植,證明了華大電子Nos-Wlan模塊能夠加速客戶產(chǎn)品無(wú)線功能的升級(jí)。

責(zé)任編輯:gt


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19791

    瀏覽量

    233401
  • 無(wú)線
    +關(guān)注

    關(guān)注

    31

    文章

    5532

    瀏覽量

    175326
  • 操作系統(tǒng)
    +關(guān)注

    關(guān)注

    37

    文章

    7069

    瀏覽量

    124898
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    uC/OS-II簡(jiǎn)介

    毫秒或100毫秒發(fā)生一次,時(shí)間頻率取決于用戶對(duì)硬件系統(tǒng)的定時(shí)器編程來(lái)實(shí)現(xiàn)。中斷發(fā)生的時(shí)間間隔是固定不變的,該中斷也成為一個(gè)時(shí)鐘節(jié)拍。uC/OS-II要求用戶定時(shí)中斷的服務(wù)程序中,調(diào)用
    發(fā)表于 10-08 09:11

    uC/OS-II簡(jiǎn)介

    毫秒或100毫秒發(fā)生一次,時(shí)間頻率取決于用戶對(duì)硬件系統(tǒng)的定時(shí)器編程來(lái)實(shí)現(xiàn)。中斷發(fā)生的時(shí)間間隔是固定不變的,該中斷也成為一個(gè)時(shí)鐘節(jié)拍。uC/OS-II要求用戶定時(shí)中斷的服務(wù)程序中,調(diào)用
    發(fā)表于 10-11 09:26

    uC/OS-II簡(jiǎn)介

    毫秒或100毫秒發(fā)生一次,時(shí)間頻率取決于用戶對(duì)硬件系統(tǒng)的定時(shí)器編程來(lái)實(shí)現(xiàn)。中斷發(fā)生的時(shí)間間隔是固定不變的,該中斷也成為一個(gè)時(shí)鐘節(jié)拍。uC/OS-II要求用戶定時(shí)中斷的服務(wù)程序中,調(diào)用
    發(fā)表于 10-15 11:03

    uC/OS-II簡(jiǎn)介

    毫秒或100毫秒發(fā)生一次,時(shí)間頻率取決于用戶對(duì)硬件系統(tǒng)的定時(shí)器編程來(lái)實(shí)現(xiàn)。中斷發(fā)生的時(shí)間間隔是固定不變的,該中斷也成為一個(gè)時(shí)鐘節(jié)拍。uC/OS-II要求用戶定時(shí)中斷的服務(wù)程序中,調(diào)用
    發(fā)表于 10-20 09:35

    uC/OS-II簡(jiǎn)介

    毫秒或100毫秒發(fā)生一次,時(shí)間頻率取決于用戶對(duì)硬件系統(tǒng)的定時(shí)器編程來(lái)實(shí)現(xiàn)。中斷發(fā)生的時(shí)間間隔是固定不變的,該中斷也成為一個(gè)時(shí)鐘節(jié)拍。uC/OS-II要求用戶定時(shí)中斷的服務(wù)程序中,調(diào)用
    發(fā)表于 10-25 09:59

    uC/OS-II簡(jiǎn)介

    毫秒或100毫秒發(fā)生一次,時(shí)間頻率取決于用戶對(duì)硬件系統(tǒng)的定時(shí)器編程來(lái)實(shí)現(xiàn)。中斷發(fā)生的時(shí)間間隔是固定不變的,該中斷也成為一個(gè)時(shí)鐘節(jié)拍。uC/OS-II要求用戶定時(shí)中斷的服務(wù)程序中,調(diào)用
    發(fā)表于 10-27 09:29

    如何進(jìn)行Nos-Wlan移植

    目前,無(wú)線監(jiān)控、工業(yè)控制、視頻傳輸?shù)刃袠I(yè)應(yīng)用中,嵌入式無(wú)線系統(tǒng)主要采用以NORDIC解決方案為代表的無(wú)操作系統(tǒng)環(huán)境,該方案由“CPU+無(wú)線數(shù)傳模塊”構(gòu)成,能夠
    發(fā)表于 10-22 06:07

    uC/OS-II移植過(guò)程記錄

    怎么去移植uC/OS-II系統(tǒng)呢?移植uC/OS-II系統(tǒng)的過(guò)程是怎樣的?
    發(fā)表于 11-01 07:38

    為什么想學(xué)uc/OS-II

    請(qǐng)大家先想一,為什么想學(xué)uc/OS-II?通過(guò)例程學(xué)習(xí)單片機(jī)的時(shí)候有沒(méi)有這樣的疑問(wèn),為什么例程是一個(gè)個(gè)孤立的呢,能否整合在一起?RTOS就是這樣一個(gè)多線程運(yùn)行的好工具,我選取UCO
    發(fā)表于 02-18 07:16

    μC/OS-II Nios上的移植

    首先介紹嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II 和Nios 嵌入式處理器, 分析μC/OS-II 移植對(duì)目標(biāo)處理器的要求, 重點(diǎn)介紹μC/
    發(fā)表于 03-08 09:31 ?90次下載

    μC OS-II Nios 上的移植1

    首先介紹嵌入式實(shí)時(shí)操作系統(tǒng)μC/OS-II 和Nios 嵌入式處理器, 分析μC/OS-II 移植對(duì)目標(biāo)處理器的要求, 重點(diǎn)介紹μC/OS-II
    發(fā)表于 05-16 14:32 ?28次下載

    μC/OS-IIPC機(jī)上移植的設(shè)計(jì)與實(shí)現(xiàn)

    本文介紹了μC/OS-II移植到PC機(jī)上的過(guò)程,使μC/OS-II應(yīng)用系統(tǒng)程序PC機(jī)上脫離DOS或Windows環(huán)境運(yùn)行。著重介紹了Boo
    發(fā)表于 09-02 08:51 ?14次下載

    μC/OS-IIEP7312上的移植

    μC/OS-IIEP7312上的移植首先介紹μC/OS-II操作系統(tǒng)的特點(diǎn),重點(diǎn)分析μC/OS-II
    發(fā)表于 06-16 11:24 ?1260次閱讀
    μC/<b class='flag-5'>OS-II</b><b class='flag-5'>在</b>EP7312上的<b class='flag-5'>移植</b>

    uC/OS-IIARM系統(tǒng)上的移植實(shí)現(xiàn)

    - II 移植到ARM 系統(tǒng)之后,可以充分結(jié)合兩者的優(yōu)勢(shì)。 如果一個(gè)程序一個(gè)環(huán)境里能工作,我們經(jīng)常希望能將它移植到另一個(gè)編譯系統(tǒng)、處理器
    發(fā)表于 10-30 16:08 ?5次下載
    <b class='flag-5'>uC</b>/<b class='flag-5'>OS-II</b><b class='flag-5'>在</b>ARM系統(tǒng)上的<b class='flag-5'>移植</b>與<b class='flag-5'>實(shí)現(xiàn)</b>

    華大電子Nos- Wlan模塊實(shí)現(xiàn)應(yīng)用系統(tǒng)的移植操作

    標(biāo)準(zhǔn)。本文主要介紹了華大電子Nos- Wlan模塊基于ARM7核處理器LPC2478的uC/OS-ii
    的頭像 發(fā)表于 05-25 11:17 ?2254次閱讀
    華大電子<b class='flag-5'>Nos</b>- <b class='flag-5'>Wlan</b><b class='flag-5'>模塊</b><b class='flag-5'>實(shí)現(xiàn)</b>應(yīng)用系統(tǒng)的<b class='flag-5'>移植</b><b class='flag-5'>操作</b>