当前位置:首页 > 通信技术 > 通信设计应用
[导读]CC2430和ZigBee2006协议栈的通信模块设计 摘要:介绍了CC2430芯片的基本特性和ZigBee2006协议栈的基本内容。论述了以CC22430芯片为核心的无线通信模块的硬件设计,和以Z

CC2430和ZigBee2006协议栈的通信模块设计

摘要:介绍了CC2430芯片的基本特性和ZigBee2006协议栈的基本内容。论述了以CC22430芯片为核心的无线通信模块的硬件设计,和以ZigB-ee2006协议栈为基础的软件设计。在实现短距离多网络节点间的无线通信的同时,使用串口实现无线通信模块与终端采集部分和本地控制部分的数据传输。

引言
    随着微电子技术、汁算技术和无线通信等技术的进步,无线传感器网络被列为21世纪最有影响的21项技术和改变世界的10大技术之一。它能够实时监测、感知和采集各种环境或监测对象的信息,并对其进行处理。传感器节点是组成无线传感器网络的基本单位,是构成无线传感器网络的基础平台。
    ZigBee是一种新兴的短距离、低速率无线网络技术,是一组基于IEEE 802.15.4无线标准研制开发的,有关组网、安全和应用软件的技术标准。它具有功耗低、成本低、安全、工作频段灵活等优点,通过和传感器组成无线传感器ZigBee网络,使得数据的自动采集、分析和处理变得更加容易,可以作为决策辅助系统的重要组成部分。

1 CC2430及ZigBee协议栈体系结构
    CC2430是真正的系统芯片(SoC)CMOS解决方案,能够提高性能并满足以ZigBee为基础的2.4 GHz ISM波段应用对低成本、低功耗的要求。它结合了高性能的2.4GHz DSSS(直接序列扩频)射频收发器核心和1颗工业级小巧高效的8051控制器。CC22430在单个片上集成了ZigBee射频(RF)前端、内存和微控制器,使用1个8位MCU(8051),具有32/64/128 KB的编程闪存和8 KB的RAM,还包含模/数转换器(ADC)、定时器(TImer)、AES128安全协处理器、看门狗定时器(watchdog TImer)、32 kHz晶振的休眠模式定时器、上电复位电路、掉电检测电路以及21个可编程I/0引脚。CC2430的8051内核的目标代码兼容标准8051微处理器,可以使用标准8051的汇编器和编译器进行软件开发。其21个可编程I/O引脚均可以通过软件设定1组SFR寄存器的位和字节,使这些引脚作为通常的I/O口或者作为接ADC、定时器或USART部件的外围设备I/O口使用。
    ZigBee协议栈由一组子层构成,每层为其上层提供一组特定的服务:数据实体提供数据传输服务,管理实体提供全部其他服务。每个服务实体通过一个服务接入点(SAP)为上层提供服务接口,并且每个SAP提供一系列的基本服务指令来完成相应的功能。ZigBee协议栈的体系结构模型如图1所示,IEEE 802.15.4标准定义了物理层(PHY)和介质接入控制子层(MAC);ZigBee联盟定义了网络层和应用层(APL)框架的设计。


    ZigBee协议栈于2004年发布第1版,称为ZigBee2004。ZigBee2004是全源代码的协议栈,这个协议栈已经有了网络的概念,并能完成一些简单的通信。但它只能组建串状网络和星状网络,如果需要组建网状网络必须外加程序,另外在安全和路由方面也做得不是很理想。ZigB-ee2006协议栈很好地解决了网络组网问题,整个协议栈的安全性更好,层次性更强,功耗方面也有了进步,并实现了网状网络。在ZigBee-2006协议栈中已经将CC2430的底层驱动全部固化在协议栈中,可以直接调用。

    综上所述,选用CC2430芯片作为无线通信模块硬件核心芯片,软件部分选用ZigBee2006协议栈来实现无线模块之间的通信功能。


2 硬件设计
    无线通信部分作为监测系统中重要的数据传输通道,不仅需要实现无线通信模块之间的数据接收和发送功能,同时还需要提供数据接口与终端数据采集部分及本地主控制系统以进行连接。系统结构如图2所示。


    图3所示为无线模块硬件原理图。电路选用CC2430芯片作为无线传感器网络节点的核心CPU。选用1个32.768 kHz的石英谐振器(X2)和2个电容(C441和C431)组成32.768 kHz的晶振电路;选用1个32 MHz的石英谐振器(X1)和2个电容(C191和C211)组成32 MHz的晶振电路。电压调节器可为所有要求1.8 V电压的内部电源供电,电容C241和C421是用来作为电源滤波的去耦合电容,以提高芯片工作的稳定性。电路中J1是10引脚JTAG仿真器接口,J2是3.3 V电源接口,J3是CC2430芯片扩展输出口,在扩展输出口上主要预留了SPI口和整个PO I/O口。设计了2个发光二极管指示灯,作为电路调试指示灯。使用1个非平衡天线,为了使天线性能更好,在天线与CC2430之间连接了1个非平衡变压器。非平衡变压器由电容C341和电感L321、L331、L341以及1个PCB微波传输线组成,整个结构满足RF输入/输出匹配电阻(50 Ω)的要求。

3 协议栈软件设计
    软件开发的软件环境:IAR 7.30B、数据分析仪、串口调试工具以及各硬件驱动软件等;硬件环境:计算机、CC2430开发板等。
    系统软件基于TI/Chipcon公司免费提供的ZigBee2006协议栈,以ZStack-1.4.3-1.2.1版本中GenericApp例程为基础。GenericApp例子基本功能很齐全,而且在ZStack上实现了无线网络数据传输。例程没有多余的功能,所以是典型的ZStack模板,即为用户提供了一个通用模板,可以通过它建立自己的应用程序。因此,建立一个项目的方法主要是改动应用层(APP)程序。
    无线通信模块通过串口分别实现与数据采集部分及本地主控制部分的连接。因此,应用层软件主要功能是实现串口数据的收发和无线网络数据传输。在ZStack程序中嵌入了实时操作系统,用于统一调度网络组建、节点加入、数据收发等功能运行。其工作机制主要是多任务事件运行机制,对于同一个任务可能有多种事件发生,需要执行不同的事件处理。为了方便,对于每个任务的事件处理函数都统一在一个事件处理函数中实现,然后根据任务ID号(task id)和该任务的具体事件(event)调用某个任务的事件处理函数。进入该任务的事件处理函数之后,再根据event来判别是该任务的哪一种事件发生,进而执行相应的事件处理。任务处理部分具体流程如图4所示。


    下面详细介绍串口部分和无线接收、发送部分程序。

3.1 串口部分程序
    (1)串口初始化
    主要是设置halUARTCfg_t结构体成员值:

    通过对halUARTCfg_t赋值,可以设置波特率、字符数、数据位、停止位、奇偶校验位和硬件流控等。其中call-BackFunc是自定义设置串口回调函数,即一旦串口有数据传送,OSAL会就自动转到自定义的回调函数,执行自定义的操作。
    (2)串口回调函数
    首先调用Hal_UART_RxBufLen(uint8 port)函数确定串口数据的长度,然后再调用HalUARTRead(uint8 port,uint8*buf,uintl6 len)读取串口数据到自定义的串口数据缓冲区,并调用osal_set_event(byte task_id,UINTl6 event_flag)函数发送事件信号,进行数据的无线发送。
3.2 无线接收、发送部分程序
    (1)无线接收
    当有数据通过无线发送到应用层时,应用层会发送1个AE_INCOMING_MSG_CMD消息事件。
case AF_INCOMING_MSG_CMD:
    GenericApp_MessageMSGCB(MSGpkt);
    break:
    这里表示收到AF_INCOMING_MSG_CMD消息事件,然后调用收到消息事件的信息处理函数GenericApp_MessageMSGCB(MSGpkt),开始接收数据并通过涮用串口HalUARTWrite(uint8 port,uint8*buf,uintl6 len)写函数发送接收到的数据。
    (2)无线发送
    在串口回调函数中当串口有数据输入时,应用层会发送1个GENERICAPP_SEND_MSG_EVT消息事件。

    调用GenericApp_SendThmMessage()数据发送函数,具体到TI/Chipcon公司所提供的ZigBee2006协议栈中即为AF_DataRequest()函数,具体形式如下:


结语
    本文以CC2430为主体设计了无线通信模块的硬件,并选用TI/Chipcon公司免费提供的ZigBee2006协议栈作为软件开发平台。通过实验验证,设计的硬件节点基本达到了项目要求。经调试,串口能够正确地接收和发送数据,能够实现多个无线节点(1个协调器,3个终端设备)在50 m左右的通信和数据传输,并通过计算机串口调试软件测试正确。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

特朗普集团近日取消了其新推出的T1智能手机“将在美国制造”的宣传标语,此举源于外界对这款手机能否以当前定价在美国本土生产的质疑。

关键字: 特朗普 苹果 AI

美国总统特朗普在公开场合表示,他已要求苹果公司CEO蒂姆·库克停止在印度建厂,矛头直指该公司生产多元化的计划。

关键字: 特朗普 苹果 AI

4月10日消息,据媒体报道,美国总统特朗普宣布,美国对部分贸易伙伴暂停90天执行新关税政策,同时对中国的关税提高到125%,该消息公布后苹果股价飙升了15%。这次反弹使苹果市值增加了4000多亿美元,目前苹果市值接近3万...

关键字: 特朗普 AI 人工智能 特斯拉

3月25日消息,据报道,当地时间3月20日,美国总统特朗普在社交媒体平台“真实社交”上发文写道:“那些被抓到破坏特斯拉的人,将有很大可能被判入狱长达20年,这包括资助(破坏特斯拉汽车)者,我们正在寻找你。”

关键字: 特朗普 AI 人工智能 特斯拉

1月22日消息,刚刚,新任美国总统特朗普放出重磅消息,将全力支持美国AI发展。

关键字: 特朗普 AI 人工智能

特朗普先生有两件事一定会载入史册,一个是筑墙,一个是挖坑。在美墨边境筑墙的口号确保边境安全,降低因非法移民引起的犯罪率过高问题;在中美科技产业之间挖坑的口号也是安全,美国企业不得使用对美国国家安全构成威胁的电信设备,总统...

关键字: 特朗普 孤立主义 科技产业

据路透社1月17日消息显示,知情人士透露,特朗普已通知英特尔、铠侠在内的几家华为供应商,将要撤销其对华为的出货的部分许可证,同时将拒绝其他数十个向华为供货的申请。据透露,共有4家公司的8份许可被撤销。另外,相关公司收到撤...

关键字: 华为 芯片 特朗普

曾在2018年时被美国总统特朗普称作“世界第八奇迹”的富士康集团在美国威斯康星州投资建设的LCD显示屏工厂项目,如今却因为富士康将项目大幅缩水并拒绝签订新的合同而陷入了僵局。这也导致富士康无法从当地政府那里获得约40亿美...

关键字: 特朗普 富士康

今年5月,因自己发布的推文被贴上“无确凿依据”标签而与推特发生激烈争执后,美国总统特朗普签署了一项行政令,下令要求重审《通信规范法》第230条。

关键字: 谷歌 facebook 特朗普

众所周知,寄往白宫的所有邮件在到达白宫之前都会在他地进行分类和筛选。9月19日,根据美国相关执法官员的通报,本周早些时候,执法人员截获了一个寄给特朗普总统的包裹,该包裹内包含蓖麻毒蛋白。

关键字: 美国 白宫 特朗普
关闭