单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录110:50单片机原理与接口技术第11章单片机系统无线扩展技术单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录210:50(1)熟悉单片机无线接口的工作原理。(2)熟悉nRF905无线数传芯片接口电路的设计方法。(3)了解无线传感网络ZigBee的基本原理和应用。本章教学要求单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录310:50本章目录11.1点对点无线通信11.1.1nRF905芯片介绍11.1.2应用nRF905扩展单片机无线接口11.2ZigBee无线网络技术简介11.2.1ZigBee网络框架11.2.2ZigBee网络中的设备11.2.3ZigBee网络拓扑结构11.2.4ZigBee技术的特点和应用领域11.3ZigBee无线网络技术应用实例11.3.1支持ZigBee无线网络的单片机选择11.3.2串行总线接口的数字式温湿度传感器选择11.3.3ZigBee无线网络节点的硬件电路设计11.3.4软件设计习题与思考题单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录410:50前言与有线通信技术相比,无线通信技术具有如下优点:布线成本低,不需要专门的电缆;只需将设备与无线数据传输模块相连接,建网快捷、扩展性好;维护方便,灵活性高,易用性好,可快速构建应用系统。随着射频技术和集成电路的发展,短距离无线数据传输速率也越来越快,抗干扰能力也越来越强,体积却越来越小,功率和成本越来越低,开发简单快速,极大地促进了移动电子设备的发展。目前,无线数据传输使用范围非常广泛,包括工业控制、交通物流、环境监测、市政设施、粮情监测、仓库监测、医疗监护、家庭电子、社区服务和物业管理等诸多方面。单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录510:50前言目前广泛应用的无线通信技术主要有:无线传感网络(ZigBee);蓝牙(Bluetooth);红外(IrDA);无线局域网802.11(Wi-Fi)。还有一些近距离无线技术标准,例如:射频标签RFID;超宽频UWB(UltraWideBand);短距离通信(NFC);HomeRF等。这些技术都有各自的特点和适用的场合。本章将以点对点无线通信和ZigBee无线传感网络为例介绍单片机无线接口技术。单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录610:5011.1点对点无线通信早期的无线收发电路采用分立元件组成,调试复杂而且稳定性欠佳。随着大规模集成电路技术的发展,短距离无线收发芯片已经集成化,形成单片数字信号射频收发芯片,只需要增加少量外围器件就可组成一致性良好,性能稳定的无线收发模块。这些射频收发芯片一般均采用串行接口同单片机进行通信,因此单片机只要通过通信接口对射频收发芯片内部的寄存器进行配置就可以改变发射功率、工作频率等参数,数据的传输也是通过串行接口进行的,极大地方便了单片机无线应用开发。这些射频收发芯片主要有挪威Nordic公司生产的nRF401,nRF905,nRF2401等,美国Analog公司生产的ADF7021,ADF7022,ADF7025等,Chipcon公司生产的CC1100,CC1020,CC2500等,SiliconLabs公司生产的Si4430/31/32等芯片。本节将以nRF905为例介绍射频收发芯片与单片机的接口技术。----射频收发芯片单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录710:5011.1.1nRF905芯片介绍nRF905是集成度很高的多频段单片射频收发器。工作于433/868/915MHz三个ISM(工业、科学和医学)频道。nRF905采用GFSK调制方式,最高工作速率50kbps。芯片内部集成了曼彻斯特编码和解码器。利用SPI接口同单片机进行数据交换。外部只需连接少量电阻和电容元件,配置简单方便。最大发射功率为10dBm。接收灵敏度为-100dBm。工作电压为1.9~3.6V。功耗低,发送功率-10dBm时电流为9mA,接收时为12.5mA,待机模式下仅为2.5A。适用于无线数据通信、无线报警及安全系统、无线监测等领域。----nRF905芯片单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录810:5011.1.1nRF905芯片介绍nRF905内部结构图nRF905由电源管理模块,频率合成器,接收解调器,功率放大器,晶体振荡器,低噪声放大器,功率放大器,调制器,内部寄存器和SPI总线接口等模块组成。nRF905采用32引脚QFN封装(5×5mm)----nRF905结构单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录910:5011.1.1nRF905芯片介绍1.nRF905的引脚功能引脚名称功能引脚名称功能MISOSPI接口输出信号uCLK时钟输出MOSISPI接口输入信号XC1晶振输入或外部时钟输入SCKSPI接口时钟XC2晶振输入CSNSPI接口使能信号VDD_PA功率输出,向外部天线提供功率PWR_UP数字输入,芯片上电ANT1天线接口1TRX_CE芯片发射或接收使能ANT2天线接口2TX_EN发送或接收控制信号,TX_EN=1为发送模式,TX_EN=0为接收模式IREF参考电流输入CD数字输出,载波检测指示输出信号DVDD_1V2连接外部解耦电容AM地址匹配指示输出信号VDD电源DR数字输出,指示接收或发射数据完成VSS地----nRF905引脚单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录1010:5011.1.1nRF905芯片介绍2.nRF905的工作模式nRF905有两种工作模式和两种节能模式。两种工作模式是:ShockBurstTM接收模式ShockBurstTM发送模式两种节能模式是:掉电模式和待机模式。其工作模式由PWR_UP、TRX_CE和TX_EN三个引脚决定,见下表。PWR_UPTRX_CETX_EN工作模式0××掉电10×待机110射频接收111射频发送----nRF905工作模式单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录1110:5011.1.1nRF905芯片介绍3.nRF905的内部寄存器nRF905有5个内部寄存器,可通过对这5个寄存器的操作实现对芯片控制、发送和接收数据。各寄存器功能描述:1)状态寄存器状态寄存器(Status-Register)是只读寄存器,其中位7是地址匹配状态(AM)信息,位5是数据就绪DR,其他位没有用。2)射频配置寄存器射频配置寄存器(RF-ConfigurationRegister)共有9字节,用来配置nRF905的射频工作频段、输出功率,工作方式、本机地址、发送和接收字节数等信息。具体内容见表11-3和表11-4。----nRF905寄存器单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录1210:5011.1.1nRF905芯片介绍表11-3nRF905的射频配置寄存器字节列表字节编号位内容初始0CH_NO[7:0]011011001位[7:6]没用,其余各位依次为AUTO_RETRAN,RX_RED_PWR,PA_PWR[1:0],HFREQ_PLL,CH_NO[8]000000002位[7]没用,位[6:4]为TX_AFW[2:0],位[3]没用,位[2:0]为RX_AFW[2:0]010001003位[7:6]没用,其余各位依次为RX_PW[5:0]001000004位[7:6]没用,其余各位依次为TX_PW[5:0]001000005本机接收地址字节0E76本机接收地址字节1E77本机接收地址字节2E78本机接收地址字节3E79CRC_MODE,CRC_EN,XOF[2:0],P_CLK_EN,UP_CLK_FREQ[1:0]11100111----nRF905射频配置寄存器单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录1310:5011.1.1nRF905芯片介绍表11-4nRF905的RF配置寄存器相关位说明参数位宽含义CH_NO9结合HFREQ_PLL一起来设定射频信号中心频率(默认值为001101100b=108d)HFREQ_PLL1设置nRF905内置PLL的工作频段。0(默认值):433MHz;1:868/915MHzPA_PWR2设置芯片输出功率。00(默认值):-10dBm;01:-2dBm;10:+6dBm;11:+10dBmRX_RED_PWR1降低接收电流至1.6mA(会导致接收灵敏度降低)0(默认值):正常;1:降低功率AUTO_RETRAN1设置在TRX_CE和TX_EN为高的情况下是否重发TX寄存器中的内容。0(默认值):不重发;1:重发数据包RX_AFW3接收地址字节数。001:1字节;100(默认值):4字节TX_AFW3发送地址字节数。001:1字节;100(默认值):4字节RX_PW6接收数据字节数。000000:1字节;000010:2字节;……;100000(默认值):32字节TX_PW6发送数据字节数。000000:1字节;000010:2字节;……;100000(默认值):32字节RX_ADDRESS32本机接收地址。使用字节数由RX_AFW确定(默认值为E7E7E7E7h)UP_CLK_FREQ2输出时钟频率。00:4MHz;01:2MHz;10:1MHz;11(默认值):500kHzUP_CLK_EN1时钟输出允许。0:不允许;1(默认值):允许XOF3晶振频率,必须与外部连接的晶振频率相符。000:4MHz;001:8MHz;010:12MHz;011:16MHz;100(默认值):20MHzCRC_EN1CRC校验允许。0:禁止;1(默认值):允许CRC_MODE1CRC校验模式。0:8CRC校验位;1(默认值):16CRC校验位----nRF905的RF配置寄存器单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录1410:5011.1.1nRF905芯片介绍3)发送地址寄存器发送地址寄存器(TX-Address)用来写入要访问的目标无线终端设备的地址信息。该寄存器共有4字节,但实际使用的字节数由射频配置寄存器中的TX_AFW决定。4)发送数据缓冲区发送数据缓冲区(TX-Payload)用来写入要向目标无线终端设备发送的数据信息。该缓冲区共有32字节,但实际使用的字节数由射频配置寄存器中的TX_PW决定。5)接收数据缓冲区接收数据缓冲区(RX-Payload)用来保存nRF905接收到的数据信息,供主机进行读取。该数据信息包含字头和CRC校验位信息。该缓冲区共有32字节,但实际使用的字节数由射频配置寄存器中的RX_PW决定。----nRF905寄存器单片机原理与接口技术(第2版).李晓林.电子工业出版社返回目录1510:5011.1.1nRF905芯片介绍4.nRF905的SPI接口命令主机在访问nRF905相关寄存器时需要按下表中的工作命令操作。命令名称命令格式命令操作写配置寄存(WC)0000AAAA从AAAA指出的开始字节地址写配置寄存器读配置寄存(RC)0001AAAA从AAAA指出的开始字节地址读配置寄存器写发送数(WTP)00100000从字节0开始写发送有效数据,长度为1~32字节读发送数据(RTP)00100001从字节0开始读TX有效数据,长度为1~32字节写发送地(WTA)00100010从字节0开始写TX地址,长度为1~4字节读发送地址(RTA)00100011从字节0开始读TX地址,长度为1~4字节读接收数据(RRP)00100100从字节0开始读RX数据,长度为1~32字节通道配置命(CC)cccccccc专用命令,快速设置配置寄存器中CH_NO,HFREQ_PLL和PA_PWR,其中CH_NO=ccccccccc,HFREQ_PLL=h