基于ARM平台的Zigbee网关设计

发布时间:2010-11-29 阅读量:2545 来源: 发布人:

【中心议题】

  • 提出一种基于ARM平台的Zigbee网关解决方案
  • 就系统的软、硬件设计开发出适合的网关系统

【解决方案】

  • ARM9 STR912FW44X处理器上移植μCOS-Ⅱ操作系统和无线射频收发模块cc2430搭建网关开发平台
  • 网关节点选取uC/OS-II操作系统、Zigbee协议栈Z-Stack和轻量级Tcp/ip协议栈LwIP作为软件支持层的上层部分

1引言

Zigbee技术作为最近发展起来的一种近距离无线通讯技术,被业界认为是最有可能应用在工业监控、传感器网络、家庭监控、安全系统等领域的无线技术。而且随着技术水平的发展,Zigbee在各种领域越来越被关注,得到了应用。本文的主要内容是如何将Zigbee网络与以太网紧密融合,实现对其的有效支持、补充和延伸,提出一种基于ARM平台的Zigbee网关解决方案,并就系统的软、硬件设计开发出适合的网关系统。

2系统基本原理及框架设计

Zigbee网关为Zigbee网络的一部分,节点类型为中心节点,在整个无线网络中具有唯一性,所有无线节点数据均发送给网关,并由其进行地址、协议转换后发送给以太网;反之,以太网数据也需由网关进行地址、协议转换后,方发送给Zigbee网络。总的来说Zigbee网关是Zigbee无线网络与以太网数据交换的中转站。

Zigbee网关采用模块化分层设计方案,由硬件层、软件支持层和应用层构成,参见图1

 

3系统硬件设计

系统硬件结构图可参考图2,按模块划分Zigbee网关主要由供电模块、主控模块、外设模块和Zigbee模块构成。供电模块采用市电供电方式,5V DC输入,通过电平转换芯片分别为系统提供3.3V1.8V两种电压;主控模块为整个网关的核心模块,负责Zigbee网络及以太网数据的收发、网间协议转换、网间地址解析等。选取意法半导体基于ARM966E-S内核的STR912芯片,STR912可达96MIPS的峰值性能,集成以太网、USBCAN等接口且内置高达544KBFlash96KBRAM,这些外设配置使得STR912成为一个将嵌入式应用连接到以太网的单芯片解决方案;外设模块主要包括RAM存储器、以太网、串口等扩展模块。其中存储器选取IS62WV51216 SRAM扩展芯片,容量为512K,采用EMI方式与主控制器通讯。以太网控制器选取ST100P控制芯片,提供10/100M传输速率,采用MII方式与主控制器通讯;Zigbee模块负责与Zigbee网络其他无线节点进行网络通讯,采用USART方式与主控制器通讯。选取德州仪器(TI)公司的Zigbee SoC射频芯片CC2430-F128,片上集成高性能8051内核、ADCUSART等,支持Z-STACK协议栈。

4系统软件设计

网关节点软件主要由硬件设备底层驱动、操作系统与协议栈的剪裁与移植和网关应用程序三大部分构成,参见图1。通过系统的软件设计可以完成系统控制及网络通信等。

4.1硬件设备底层驱动

硬件设备底层驱动是对物理硬件设备功能的软件封装,提供软件接口给操作系统或应用程序调用。网关节点驱动主要由以太网驱动、USART驱动、存储器驱动、板载初始化及复位驱动等构成。另外系统预留一些其他的通信接口,例如:RS-485驱动、USB驱动等。

4.2操作系统与协议栈的移植

网关节点选取uC/OS-II操作系统、Zigbee协议栈Z-Stack和轻量级Tcp/ip协议栈LwIP作为软件支持层的上层部分。其中Z-Stack协议栈TI公司提供有针对CC2430的移植版本,可直接从TI官方网站上下载得到,因此在操作系统与协议栈的移植过程中,主要是针对uC/OS-II操作系统与LwIP协议栈的移植:LwIPuC/OS-II上的移植以及uC/OS-II在主控芯片STR912上的移植。

LwIP协议栈将与硬件、操作系统、编译器相关的部份模块化,位于\src\arch目录下。LwIP在μC/OS-II上的移植需要修改该目录下的文件,主要的工作包括以下几部分:1)与CPU或编译器相关的include文件的修改;2)操作系统相关部分,sys_arch.h中定义与操作系统相关的一些结构和函数;3)新线程的创建部分;4lib_arch8个外部库函数的实现,这些函数通常与用户使用的系统以及网络设备驱动有关。

完成以上代码移植的工作后,LwIP就可以顺利运行在μC/OS-II下。由于在μC/OS,没有线程(thread)的概念,只有任务(Task)。它提供了创建新任务的系统API调用OSTaskCreate,因此只要把OSTaskCreate封装一下,就可以实现sys_thread_new。需要注意的是LwIP中的thread并没有μC/OS-II中优先级的概念,实现时要由用户事先为LwIP中创建的线程分配好优先级。

4.3 ZigBee协议栈的实现

在网关系统中利用TI公司提供的免费Z-STACK协议栈,将Z-STACK协议栈移植到CC2430中充分发挥CC2430的性能和特色。CC2430通过UART接口与STR912进行数据的通讯。ZigBee协议栈的开发主要是应用框架层(AF层)和应用支持子层(APS层)的修改并添加自己的驱动程序,网络层是以库的形式提供,通过调用接口函数可以加入网络和查询网络的状态,MAC层和物理层也不用改动。由于在zigbee协议中自带操作系统层(OSAL层),除了初始化一些必要的变量,整个zigbee的启动都是以任务的方式完成启动。主要的程序如下所示:

 

int main(void)

{

osal_int_disable(INTS_ALL);//关闭所有的中断

zmain_ram_init();//初始化内存单元

HalDriverInit();//初始化HAL驱动

osal_nv_init(NULL);//初始化操作系统非易失性存储

ZMacInit();//初始化MAC

osal_init_system();//初始化操作系统

osal_int_enable(INTS_ALL);//打开所有中断

osal_start_system();启动操作系统

}

当启动操作系统之前,操作系统就初始化所要建立的任务,下面是建立任务的函数,这个函数传递的参数包括:初始化函数的句柄,事件处理函数的句柄,事件的优先级。

void osalAddTasks(void)

{

osalTaskAdd(Hal_Init,Hal_ProcessEvent,OSAL_TASK_PRIORITY_LOW);

osalTaskAdd(macTaskInit,macEventLoop,OSAL_TASK_PRIORITY_HIGH);

osalTaskAdd(nwk_init,nwk_event_loop,OSAL_TASK_PRIORITY_MED);

osalTaskAdd(APS_Init,APS_event_loop,OSAL_TASK_PRIORITY_LOW);

osalTaskAdd(GetwayApp_Init,GetwayApp_ProcessEvent,OSAL_TASK_PRIORITY_LOW);

}

在这里首先的任务是Hal_Init,因为它主要完成硬件初始化的工作;下面依次启动的是MAC层任务,网络层任务,应用支持子层,Zigbee设备层等任务的初始化工作,最后是应用程序。这种初始化的过程符合协议栈由低级向高级的进阶,当调用osal_start_system()之后,系统就自行的调用各个函数。整个流程如图3所示。

 

5结束语

该文提出了基于ARM平台的Zigbee集成网关的设计和实现方案,该方案已在国家应急平台试验项目中得到初步验证,实现Zigbee网络与以太网的紧密融合。应用地址适配层及应用协议层的提出,使得网间地址、协议在应用层统一起来,使得该网关系统很容易扩展到其他网络(仅需简单修改应用地址适配层的相应软件接口的实现部分),如GPRS、蓝牙网络等。因此,该网关的设计及实现对未来技术的发展有很大的进步意义。

相关资讯
全球组织瘦身:英特尔启动新一轮裁员应对业绩挑战与战略转型

英特尔公司新一轮全球裁员行动正式启动。根据内部信息,其核心制造部门——英特尔代工厂(Intel Foundry)的“初步”裁员已于7月中旬展开,预计在本月底完成首阶段人员调整。公司高层在致工厂员工的备忘录中强调,该决策旨在“打造一个更精简、更敏捷、以工程及技术能力驱动的制造体系”,此举对于“赢得客户信任”及提升市场竞争力至关重要。

全球DRAM产业加速转向DDR5,美光正式启动DDR4停产计划

全球三大DRAM巨头——三星电子、SK海力士和美光科技——已正式拉开DDR4内存大规模停产的序幕,标志着主流内存技术加速进入更新换代期。继三星率先宣布其DDR4产品线将在2025年底结束生命周期后,美光也正式向核心客户发出通知,确认其DDR4/LPDDR4产品在未来2-3个季度内将逐步停止出货。

三星试产115英寸RGB MicroLED电视,高端显示技术再升级

据行业消息,三星电子近期在其越南工厂启动115英寸RGB MicroLED电视的试生产。电视业务负责人Yong Seok-woo亲赴产线视察流程,标志着该技术正式进入量产准备阶段。尽管产品命名包含"MicroLED",但技术本质为采用RGB三色MiniLED背光的液晶电视(LCD),通过创新背光方案实现画质跃升。

AMD与三星深化AI芯片合作,HBM3E加速量产推动AI服务器升级

AMD在AI Advancing 2025大会上正式宣布,其新一代MI350系列AI加速器将搭载三星电子与美光的12层堆叠HBM3E高带宽内存芯片。这是AMD首次公开确认三星的HBM3E供货身份,标志着双方战略合作进入新阶段。MI350X与MI355X两款芯片采用相同架构设计,仅在散热方案上存在差异,均配备288GB HBM3E内存,较上一代MI300X的192GB提升50%,比MI325X提升12.5%。

舜宇光学5月出货数据解析:车载业务强势增长,高端化战略重塑手机业务格局

全球光学龙头舜宇光学科技(02382.HK)近期披露2025年5月出货量数据,呈现“车载领跑、手机承压、新兴品类崛起”的鲜明态势。在汽车智能化浪潮与消费电子结构性升级的双重驱动下,公司业务版图正经历深度调整。