当前位置:首页 > 通信技术 > 通信网络
[导读] 本文中CSMA/CA协议的实现基于MCl3213芯片。构建了1个小型ZigBee通信系统,仅使用了MCl3213的物理层无线收发功能和内嵌单片机,所以本算法实现也可以移植到433 MHz通信等其

本文中CSMA/CA协议的实现基于MCl3213芯片。构建了1个小型ZigBee通信系统,仅使用了MCl3213的物理层无线收发功能和内嵌单片机,所以本算法实现也可以移植到433 MHz通信等其他短距离无线通信系统中。

1、 MCl3213芯片及通信小系统

MCl3213集成了1个符合IEEE 807.15.4协议的2.4 GHz收发器和飞思卡尔公司的低电压低功耗HCS08单片机核心,并带有嵌入式闪存、UART接口、低压中断和键盘中断等功能。MCl3213支持专用点到点、简单星形和MUSH网络,以及采用Figure 8 Wireless Z-stack的符合ZigBee标准的网络。

本设计只使用了MCl3213的1个串口,连接电脑或者传感器,用于从电脑接收需要通过无线发送的数据,并把无线接收到的数转发到电脑。

(1)数据发送

数据发送主程序的流程如图1所示。

(2)CSMA_MAC协议及3次重发的实现

流程如图2所示。

(3)无线接收数据至串口的实现

流程如图3所示。

2、无线状态转换图

程序上电初始化后,第一次的无线状态为INITIAL_STATE初始化状态。初始化状态后,无线模块进入RX_STATE接收状态,将模块的接收天线打开。而后进入WAITING_FOR_ACK等待状态,等待接收无线数据。当接收到无线数据时,根据WT_Txbuffer0_Flag来判断此时接收到的数据帧为ACK还是数据帧:如果WT_Txbuffer0_Flag=0xff,则说明此时接收到的数据帧为ACK,进入WAITING_ACK处理,处理完毕,无线模块重新进入RX_STATE接收状态;如果WT_Txbuffer0_Flag=0x00,则说明此时接收到的数据为无线发送来的数据帧,进入GOOD_PACKET好包状态,处理完毕,无线模块重新进入RX_STATE接收状态。

无线状态转换图如图4所示。

3、实现协议的关键

①串口数据帧的拷贝。为保存串口接收到的数据帧,并为以后能区分缓存不同的数据帧,设计了能缓存4个数据帧的缓存空间。在接收到串口的数据帧时,跟原来直接处理数据的做法不同,新的程序中,首先将数据存在缓存区中,如果缓存区满,则不再保存新的数据帧。

②串口缓存区数据帧的处理顺序。按照接收到数据的先后顺序进行处理。

③随机退避的处理。由于MCl3213不仅需要发送数据和接收数据,还需要与串口进行通信,此处随机退避采用中断方式,当退避时间到时,置退避时间完成标志位,而后进入随机退避完成的处理过程。

④无线数据帧3次重发的实现。DATA类型的数据如果发送不成功,需要有3次重传机制,实现过程与之前有很大不同。当数据发送成功后,在一定的时间内等待ACK,如果没有接收到ACK,则判断是否重传3次。

若未到3次,置重传标志位,重传数据帧,否则丢弃此帧。随机退避次数大于最大退避次数时,同样判断是否重传3次:若未到3次,置重传标志位,重传数据帧,否则丢弃此帧。在此帧数据没有发送成功,并且重传次数未到时,不处理之后的数据帧,保证重传的数据帧是需要重传的数据帧。

⑤无线模块的状态切换。为了保证无线模块状态切换的时序没有错误,防止由于无线模块状态切换而导致的严重问题,在CSMA_MAC协议实现过程中,无论对无线模块进行了什么操作,最终都需要把无线模块的状态置为RX_STATE,打开无线模块的接收天线。

⑥串口数据帧3次重发的实现。DATA类型的数据帧发送完成后,如果在一定的时间内未收到ACK,将对数据进行重发,直至收到ACK;或者重发超过3次,丢弃此帧。

4 、测试结果

在我们搭建的一个无线定位小系统测试中,定位节点与定位卡通信,工作正常;两个定位节点之间的通信,定位节点收发状态正常,工作正常;定位节点将接收到的定位卡的数据帧转发至PC上,经过定位算法处理后,定位误差在2 m范围之内。

5、结 语

本文基于ZigBee基带芯片实现了简单的CSMA/CA协议,同时也适用于其他短距离无线通信系统。已经在1套433 MHz定位系统中使用了同一协议,收到了良好的效果。本文介绍实现的只是基本的CSMA/CA协议,在应用于不同的无线通信系统中时,可以根据系统的特点再加以改进,就可以达到更好的无线通信效果。

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

文章设计了一种基于物联网技术的物流柜振动远程监控系统,可实时监控物品运输过程中的温湿度、方位角、加速度、振动功率谱等参数,并通过N8-410T接入物联网云端,可实时查询,并对可能发生的货物损坏做出预警

关键字: 物联网 Zigbee 数字信号处理器

高速芯片是一种专门设计用于处理高速数据传输的集成电路芯片。它们通常用于网络设备、通信系统、计算机和其他需要高速数据传输和处理的应用中。

关键字: 高速芯片 网络设备 通信系统

随着信息技术的飞速发展,光纤通信技术以其高速、大容量、低损耗等优势,在通信领域占据了越来越重要的地位。光纤收发器作为光纤通信系统中的关键设备之一,其连接方法的正确与否直接关系到整个系统的稳定性和性能。本文将详细阐述光纤收...

关键字: 光纤通信 光纤收发器 通信系统

5G是指第五代移动通信系统。它们属于移动通信标准的下一个主要阶段,目前的4G网络将遵从国际移动通信(IMT)于2020制定的ITU-R要求,与目前4G以下的系统相比.

关键字: 5G 数据通信 通信系统

随着信息技术的飞速发展,数据处理和传输速度的要求越来越高,从而催生了高速器件技术的迅速崛起。高速器件,也称为高频器件或高速集成电路,是指能够在高频或高速条件下工作的电子器件。它们在现代通信系统、计算机、雷达、电子对抗、高...

关键字: 数据处理 高速器件 通信系统

地网天线作为一种广泛应用于无线通信领域的天线类型,其性能与原理对于通信系统的设计和优化至关重要。本文将从地网天线的基本概念出发,详细阐述其工作原理、性能特点以及应用场景,旨在为读者提供全面的地网天线理论知识,并为其在实际...

关键字: 地网天线 无线通信 通信系统

物联网应用中常见的通信技术包括有线通信技术和无线通信技术两大类。有线通信技术包括以太网、RS-232、RS-485、M-Bus和PLC等技术。这些技术通过物理线路进行数据传输,具有稳定性强、可靠性高的优点,但是受限于媒介...

关键字: 物联网 Zigbee

我国现代通信系统的发展现状,我国已建成全球最大规模的通信网络,包括移动通信网、固定电话网和互联网。截至2021年底,我国移动通信用户总数已超过15亿,互联网用户也已超过9亿,显示出我国通信网络的广泛覆盖和普及程度。此外,...

关键字: 通信系统 5G

ZigBee,也称紫蜂,是一种低速短距离传输的无线网上协议,底层是采用IEEE 802.15.4标准规范的媒体访问层与物理层。主要特色有低速、低耗电、低成本、支持大量网上节点、支持多种网上拓扑。

关键字: Zigbee 通信 无线网上协议

数字集群通信系统是一种基于数字技术的无线通信系统,具有高效、可靠、安全等优点。它广泛应用于公共安全、交通运输、工业生产等领域,为人们提供了更加便捷、高效的通信方式。本文将详细介绍数字集群通信系统的主要应用领域,以帮助读者...

关键字: 数字集群 通信系统 无线
关闭
关闭