0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

关于IEEE 802.15.4的CC2530无线数据收发设计

电子设计 来源:网络整理 作者:工程师吴畏 2018-06-12 16:39 次阅读

引言

基于IEEE 802.15.4的无线传感器网络(Wireless Sensor Network,WSN)是综合了传感器技术、信息处理技术和无线通信技术,采用大量的节点覆盖监测区域,形成一个自组织网络系统,目前已在自动控制、环境监测等领域得到广泛的应用。在对无线传感器网络MAC层深入研究的基础上,结合TI公司SoC芯片CC2530,实现了节点间的点对点通信功能,为研究上层协议打下了基础。

1 CC2530芯片简介

CC2530是TI公司针对2.4 GHz ISM频带推出的第二代支持ZigBee/IEEE 802.15.4协议的片上集成芯片。其内部集成了高性能射频收发器工业标准增强型8051MCU内核、256 KB Flash ROM和8 KB RAM。其主要特性:具有2个USART、8位和16位定时器看门狗定时器、8路输入可配置的12位ADC、21个GPIO、AES128协同处理器硬件支持CSMA-CA、数字化的RSSI/LQI和强大的DMA功能,具备电池监测和温度感测功能;支持5种工作模式,且转换时间短,可以较好地满足超低功耗系统的要求;在接收和发送模式下,电流损耗分别为24 mA和29 mA。由于其硬件设计简单,封装小,功耗低,在无线传感器网络中得到了越来越广泛的应用。

2 CSMA-CA机制

IEEE 802.15.4协议中采用CSMA-CA机制来避免数据冲突。根据是否采用信标,网络分为非信标网络和信标网络两种。非信标模式下,节点使用CSMA-CA机制竞争信道:节点随机退避一段时间,执行CCA(空闲信道评估),若信道IDLE则传送数据,若信道BUSY则重新等待一段随机时间后执行CCA。

在信标网络中,将超帧划分了16个时隙,因此执行的退避时间都是以时隙为单位,CCA在退避周期的边界处开始执行。图1是IEEE 802.15.4标准规定的CSMA-CA算法流程。

关于IEEE 802.15.4的CC2530无线数据收发设计

每个节点在每次尝试传输时都需要维护3个变量:后退次数NB、竞争窗口CW和后退指数BE。变量NB是尝试当前帧发送过程中CSMA-CA算法执行随机退避的次数,每个新的传输尝试之前NB应初始化为0。在IEEE802.15.4中,定义NB的最大值为4,如果节点经过4次信道忙碌退避后仍然无法接入进行数据传送,则放弃数据传送,并向上层报告。变量CW是竞争窗口的长度,它表示允许发送前要求信道连续空闲的时间,只用于时隙CSMA-CA算法,可以给处理器处理不同时隙留有时间保护带,以免数据帧冲突。BE值的大小影响节点接入信道的能力,若设置得过小,起不到降低冲突的作用;设置得过大,延时作用不明显。IEEE 802.15.4推荐的默认值为3,最大值为5。当BE设为0时,则只进行一次碰撞检测

3 命令选通协处理器

CC2530片上集成的命令选通协处理器(CSP)提供了MCU和无线电之间的接口,有立即选通命令和程序执行两种模式,可以处理MCU发出的命令。同时还有一个24字节的程序存储器,配合MAC定时器自动执行CSMA-CA算法,充当MCU的协处理器。CSP复位后,指令写指针复位到位置0,在每次RFST写入期间指令写指针累加1,直到程序存储器的终点。另外,CSP还有4个寄存器:CSPT、CSPX、CSPY和CSPZ。MCU可以对它们读写,设置CSP运行所需的参数。程序执行模式下运行一个CSP的流程如图2所示。

关于IEEE 802.15.4的CC2530无线数据收发设计

4 节点通信实现

4.1 通信机制

CC2530是通过寄存器TXFIFO和RXFIFO来实现数据收发的。发送数据时,往TXFIFO中写入数据,无线电模块自动添加PHY层同步头和FCS,通过选通命令STXON或STXONCCA发送数据;数据接收完成时,产生RXPKTDONE中断,在中断服务程序中通过读取RXFIFO即可。

本文根据IEEE 802.15.4协议,定义了精简的MAC层帧格式,如图3所示。

关于IEEE 802.15.4的CC2530无线数据收发设计

帧控制域占一个字节。其中,帧类型占2位,00表示同步帧,01表示数据帧,10表示确认帧,11表示命令帧;确认请求占1位,1表示接收设备在接收到数据帧或命令帧时如果判断其为有效帧就要向发送设备反馈一个确认帧,0表示该接收设备不需要反馈确认帧。帧序号唯一标识各个帧,用于确认帧和数据帧或命令帧的匹配。目标地址和源地址分别用2个字节表示。由于IEEE 802.15.4规范中定义了物理服务数据单元(PSDU)的最大长度为127字节,而其中的8字节已经被使用,因此有效负载(pay-load)的字节长度为1~119字节。

数据发送有3种模式:非CSMA-CA、时隙CSMA-CA和非时隙CSMA-CA。待数据按上述格式写入TXFIFC)后,执行“RFST—ISTXON”启动CSP程序。

以下为基于时隙CSMA-CA模式的CSP程序代码

关于IEEE 802.15.4的CC2530无线数据收发设计

4.2 实验结果

本网络是由一个中心节点及10个终端节点组成的星状网。硬件采用由CC2530制作的传感器板,测试数据由片内自带的温度传感器提供。

如图4所示,中心节点采用轮询的方式采集终端数据,通过串口显示到上位机软件上。其中,a代表中心节点发送的命令帧;b为上传的数据帧;c为中心节点发送的确认帧。终端节点采用非时隙CSMA-CA的方式发送数据。

关于IEEE 802.15.4的CC2530无线数据收发设计

图5所示测试结果表明:在节点通信半径内,当轮询时间大于等于15.36 ms时,节点间通信未丢失任何数据包,且没有误码现象。随着节点距离增大,节点丢包率逐渐上升。周期时间随着节点的增多而增大,延时积累明显。

关于IEEE 802.15.4的CC2530无线数据收发设计

结语

本文设计了基于CC2530的无线传感器网络节点,并详细介绍了两个节点之间点对点通信的实现,同时对CSMA-CA算法进行了详细说明。实验结果表明节点能够正常通信。

本文为进一步的上层通信协议设计提供了基础,具有一定的参考价值。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 无线传感器
    +关注

    关注

    15

    文章

    769

    浏览量

    98304
  • SoC芯片
    +关注

    关注

    1

    文章

    608

    浏览量

    34863
  • 射频收发器
    +关注

    关注

    4

    文章

    256

    浏览量

    25384
收藏 人收藏

    评论

    相关推荐

    CC2530的一些基本常识

    和应用彼此可以兼容,基于CC2530的新设备可以与任何基于CC2430的设备(或任何IEEE802.15.4兼容无线电)通信和兼容。——既然TI生产
    发表于 04-14 15:34

    TI CC2530的特性和应用简介

    地提供了一个强大和完整的ZigBee RF4CE 远程控制解决方案。CC2530的特性–适应2.4-GHz IEEE 802.15.4 的RF 收发器–极高的接收灵敏度和抗干扰性能–可
    发表于 04-19 15:10

    CC2530,pdf datasheet (A True S

    The CC2530 is a true system-on-chip (SoC) solution for IEEE 802.15.4, Zigbee and RF4CE
    发表于 06-29 08:06 101次下载

    CC2530F32, CC2530F64, CC2530F1

    The CC2530 is a true system-on-chip (SoC) solution for IEEE 802.15.4, Zigbee and RF4CE
    发表于 06-29 08:10 5次下载

    cc2530 adc测外部电压

    CC2530 是用于2.4-GHz IEEE 802.15.4、ZigBee 和RF4CE 应用的一个真正的片上系统(SoC)解决方案。它能够以非常低的总的材料成本建立强大的网络节点。要在zigbee的组网中加入烟雾传感器的模块
    发表于 11-07 18:53 5590次阅读
    <b class='flag-5'>cc2530</b> adc测外部电压

    cc2530定时器

    CC2530 具有一个IEEE 802.15.4 兼容无线收发器。RF 内核控制模拟无线模块。另
    发表于 11-08 09:11 5276次阅读

    cc2530是什么_cc2530能做什么

    CC2530 是用于2.4-GHz IEEE 802.15.4、ZigBee 和RF4CE 应用的一个真正的片上系统(SoC)解决方案。它能够以非常低的总的材料成本建立强大的网络节点。CC25
    发表于 11-08 09:28 4.6w次阅读

    cc2530芯片有哪些功能

    CC2530是专门针对IEEE 802.15.4和Zigbee应用的单芯片解决方案,经济且低功耗。 CC2530有四种不同的版本:CC2530
    发表于 11-08 11:05 2.3w次阅读

    cc2530引脚图及功能

    CC2530 具有一个IEEE 802.15.4 兼容无线收发器。RF 内核控制模拟无线模块。另
    发表于 11-08 15:07 6.4w次阅读

    cc2530程序设计实例之CC2530 RF部分使用—实现点对点收发

    本文主要介绍了cc2530程序设计实例之CC2530 RF部分使用—实现点对点收发,通过串口调试助手发送字节数据。例如通过串口向设备A发送HelloCC
    发表于 12-09 12:22 2.2w次阅读
    <b class='flag-5'>cc2530</b>程序设计实例之<b class='flag-5'>CC2530</b> RF部分使用—实现点对点<b class='flag-5'>收发</b>

    cc2530 不跑协议栈无线收发程序下载

    cc2530 不跑协议栈无线收发程序。支持每秒最大六千字节传送,传送需要配合自身硬件测试。
    发表于 03-27 15:46 9次下载

    如何利用CC2530实现无线串口

    CC2530是符合802.15.4标准的无线收发芯片,但是本文并没有遵守802.15.4协议规则,在发送过程中忽略了网络ID、源地址和目标地
    发表于 11-16 16:06 6593次阅读

    CC2530数据手册和CC2530的应用手册免费下载

    CC2530是一个真正的系统芯片(SOC)解决方案,适用于IEEE 802.15.4、ZigBee和RF4CE应用。它能够以非常低的总物料清单成本构建强健的网络节点。CC2530将领先
    发表于 01-18 08:00 126次下载
    <b class='flag-5'>CC2530</b>的<b class='flag-5'>数据</b>手册和<b class='flag-5'>CC2530</b>的应用手册免费下载

    CC2530芯片的基本特性和CC2530无线模块的设计

    本文介绍了CC2530芯片的基本特性,论述了以CC2530芯片为核心的无线通信模块的硬件设计和调试软件设计,在介绍设计规范和模块结构的基础上,采用TI公司的CC2530芯片作为主控制芯
    发表于 02-11 08:00 97次下载
    <b class='flag-5'>CC2530</b>芯片的基本特性和<b class='flag-5'>CC2530</b><b class='flag-5'>无线</b>模块的设计

    CC2530芯片的主要特点及应用领域

    CC2530是适用于IEEE 802.15.4、Zigbee和RF4CE应用的系统芯片(SoC)。
    的头像 发表于 07-20 15:39 1.6w次阅读
    <b class='flag-5'>CC2530</b>芯片的主要特点及应用领域