• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 微波/射频 > RF技术文章 > 华大电子Nos-Wlan模块在基于ARM7核处理器uC/OS-ii系统的移植

华大电子Nos-Wlan模块在基于ARM7核处理器uC/OS-ii系统的移植

录入:edatop.com    点击:

LPC2478处理器uC/OS-ii系统框图

该系统以NXP的LPC2478处理器为核心,外围集成了FLASH,SDRAM,UART模块,以太网接口模块,USB OTG接口模块,LCD液晶屏和触摸屏模块,以及以FPGA为核心的视频采集模块以及华大电子的Nos-Wlan模块,该系统主要应用于视频监控领域,其系统硬件框架如图4所示:

华大电子Nos-Wlan模块在基于ARM7核处理器uC/OS-ii系统的移植
图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无线网卡的需求。

·模块初始化

模块初始化函数aq3_usb_init,完成整个模块的初始化,包括Nos Wi-Fi模块内部内存池的初始化(调用模块接口函数hedrv_Init)、USB传输部分主数据结构的初始化、USB传输主线程的创建、模块内部源时钟的初始化及网卡的初始化(调用模块接口函数hedrv_UsbPlugIn),网卡初始化完成后模块内部会调用用户注册的初始化完成回调函数(DevInitDone,用户实现),该函数由网卡初始化函数hedrv_UsbPlugIn的参数传入。

·模块的卸载

模块卸载函数aq3_usb_exit,完成整个模块的卸载,包块模块主源时钟的释放、Nos Wi-Fi模块的卸载(调用模块接口函数hedrv_UsbPullOut)及所申请资源的释放等。

Nos-Wlan模块临界保护的实现

由于ucos-ii是实时的多任务嵌入式操作系统,模块需要对相关数据结构进行临界保护,其实现只需要使用ucos-ii提供的临界保护函数即可:

void hosts_EnterCritical (void)

{

OS_ENTER_CRITICAL();

}

void hosts_LeaveCritical (void)

{

OS_EXIT_CRITICAL();

}

如何成为一名优秀的射频工程师,敬请关注: 射频工程师养成培训

上一篇:音频滤波器该如何实现一体化ESD/EMI保护
下一篇:个人医疗设备通信标准将无缝通信变成现实

射频和天线工程师培训课程详情>>

  网站地图