单片机毕业设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于2.4G射频的汽车防盗报警系统设计
摘要:汽车成为很多人不可缺少的交通工具,现在汽车被盗的现象很多,盗贼的手法也层出不穷。
为对付不断升级的盗车手段,人们研制出各种方式、各种结构的防盗器,但汽车被盗还是非常严重。
基于此现象,本次设计采用以单片微机8051为核心设计的汽车防盗报警系统,该系统主要使用无线收发一体射频模块
nRF24L01、温度传感器、单片机、显示报警电路。
本系统通过温度传感器测量发动机表面温度,然后把信号输入到单片机,单片机根据检测电路输出的温度与设定温度值的比对决定是否启动继电器亮灯,从无线收发模块发射无线电信号,在接收板的显示屏上显示出当前温度,从而判读汽车是否被启动,实现系统的报警功能。
设计了低功耗采集电路,该系统使用方便,扩展十分容易。
关键词:STC89C52 温度传感器 nRF24L01
Based on the 2.4 G car security alarm system
design
Abstract: the become a lot of people do not lack of transportation, now the phenomenon of the car was stolen a lot, rogue technique also emerge in endlessly. To deal with the escalating auto theft means, people developed all kinds of ways, all kinds of structure of the devices, but the car was stolen or very serious. Based on this phenomenon, this design USES the single chip microcomputer 8051 to design as the core of guard against theft alarm system, this system mainly use wireless transceiver module, rf one nRF24L01 temperature sensors, SCM, display alarming circuit. The system through the temperature sensor measuring engine surface temperature, then the signal is input to a single-chip microcomputer, SCM according to the test circuit output temperature and the temperature setting than to decide whether starter relay light, from wireless transceiver module launch radio signals, the receiver display shows that the
current temperature, and thereby reading if the car was launched, the system of alarm function. Design the low consumption acquisition circuit, this system is easy to use, expand very easy.
Key words: STC89C52 temperature sensor nRF24L01
目录
1.绪论 (4)
1.1课题的背景与意义 (5)
1.2系统功能及目的 (5)
2.方案论证 (6)
2.1 系统总体方案论证 (6)
3.元器件选择 (7)
3.1温度传感器部分 (7)
3.2 单片机的选择 (7)
3.3 显示器件的选择 (8)
4.系统的硬件电路设计 (10)
4.1系统总体电路设计 (10)
4.2单片机主控制电路设计 (11)
4.2.1 STC89C52简介 (11)
4.2.2STC89C52引脚说明 (12)
4.3 LCD显示电路设计 (14)
4.3.1 字符型液晶显示模块 (14)
4.3.2 字符型液晶显示模块引脚 (15)
4.3.3 字符型液晶显示模块内部结构 (15)
4.4温度传感器DS18B20电路设计 (16)
4.4.1 DS18B20简介 (16)
4.4.2 电路设计 (18)
4.5无线收发模块 (18)
4.5.1 简介 (18)
4.5.2 nRF24L01概述 (19)
4.5.3 引脚功能及描述 (19)
4.5.4 工作模式 (20)
4.5.5 工作原理 (21)
4.6 电源设计电路 (21)
5.系统软件设计 (23)
5.1无线发射模块软件设计 (23)
5.2 接收端软件设计 (24)
6.总结 (26)
6.1调试总结 (26)
6.2心得体会 (26)
致谢 (28)
参考文献 (29)
附录 (30)
1.绪论
1.1课题的背景与意义
近些年来,随着社会经济的发展以及工业发展的突飞猛进,人民生活水平也有了显著提高,世界的距离也在不断缩小,随着交通日益发达,越来越多的汽车进入了人们的日常生活,随着科学技术的发展,汽车偷窃技术越来越高,令人们防不胜防,已对全世界造成极大的危害,汽车防盗问题也成了一个不容忽视的问题,无论是对汽车制造商还是社会保险业都具有极其重要的研究价值,如何制定出更为严范的法规,开发出更为有效的汽车防盗装置,减少车主的损失是今后人们现就的重要课题。
随着科学技术的进步,为对付不断升级的盗车手段,人们一代一代地研制出各种方式、不同结构的防盗器,目前防盗器按其结构可分三大类:机械式、电子式和网络式。
钩锁、方向盘锁和变速挡锁等基本属于机械式防盗器,它主要是靠锁定离合、制动、油门或方向盘、变速挡来达到防盗的目的,但只防盗不报警。
插片式、按键式和遥控式等都属于电子式防盗器,它主要是靠锁定点火或起动来达到防盗的目的,同时具有防盗和声音报警功能。
GPS卫星定位汽车防盗系统属于网络式防盗器,它主要是靠锁定点火或起动来达到防盗的目的,而同时还可通过GPS 卫星定位系统(或其他网络系统),将报警信息和报警车辆所在位置无声地传送到报警中心。
机械式防盗装置是市面上最简单最廉价的一种防盗形式,其原理也很简单,只是将转向盘和控制踏板或档柄锁住。
其优点是价格便宜,安装简便,缺点是防盗不彻底,每次拆装麻烦,不用时还要找地方放置。
芯片式数码防盗器是现在汽车防盗器发展的重点,大多数轿车均采用这种防盗方式作为原配防盗器,芯片式防盗的基本原理就是锁住汽车的发动机,电路和油路,在没有芯片钥匙的情况下无法启动车辆,数字化的密码重码率极低,而且要用密码钥匙接触车上的密码锁才能开锁,杜绝了被扫描的可能。
目前,芯片式防盗具有特殊诊断功能,即已获授权者在读取钥匙保密信息时,能够得到该防盗系统的历史信息,系统中经授权的备用钥匙数目,时间印记以及其他背景信息,成为收发器安全性的组成部分,独特的射频技术可以保证系统在任何情况下都能正确识
别驾驶者,在驾驶者接近或远离车辆时可以自动识别其身份,自动打开或关闭车锁。
所谓电子防盗,简而言之就是给车锁加上电子识别,开锁配钥都需要输入十几位密码的汽车防盗方式,它一般具有遥控技术,是随着电子技术的发展而迅速发展起来的一种防盗方式,它有防盗报警功能,车门未管提示功能,寻车功能,遥控中央门锁。
1.2系统功能及目的
基于单片机的数据采集系统是由将来自传感器的信号通过放大、线性化、滤波、同步采样保持等处理后,输入A/D转换为数字信号后由单片机采集,然后利用单片机与PC机的通信将数据送到PC机进行数据的存储、后期处理与显示,在本监控系统,温度一体化传感器将把检测到的温度值实时传送到车主主机中。
车主可实时了解发动机的实际温度值,一旦发动机内实际温度值越限,系统将自动触发报警,提醒车主,汽车已经被盗。
实现了数据处理功能强大、显示直观、界面友好、性价比高、应用广泛的特点。
2.方案论证
2.1 系统总体方案论证
温度检测系统有着共同的特点:测量点多、环境复杂、布线分散、现场离监控室远等。
若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D 转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。
这样,由于各种因素会造成检测系统较大的偏差;又因为检测环境复杂、测量点多、信号传输距离远及各种干扰的影响,会使检测系统的稳定性和可靠性下降。
所以温度检测系统的设计的关键在于两部分:温度传感器的选择和主控单元的设计。
方案一:采用数字电路方式,利用逻辑电路构成控制部分,开关实现数值的输入,而且由于整个系统采用数字信号控制方式,仅仅显示部分的硬件就非常庞大,可见整个系统的硬件电路非常的复杂,并且控制的方式也不容易实现。
方案二:采用单片机来实现控制。
通过键盘的功能键控制单片机实现各个功能,单片机软件编程灵活、自由度大,可编程实现温湿度传感器的控制及运行;并且程序都模块化,方便利用。
硬件电路方面与方案一相比较非常简单,在硬件确定的情况下,只要修改程序就能使整个系统达到设计要求。
下图为设计框图。
图2.1 系统设计框图
3.元器件选择
3.1温度传感器部分
方案一:采用热敏电阻,可满足40摄氏度至90摄氏度测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测1摄氏度的信号是不适用的。
方案二:采用单片模拟量的温度传感器,比如AD590,LM35等。
但这些芯片输出的都是模拟信号,必须经过A/D转换后才能送给计算机,这样就使得测温装置的结构较复杂。
另外,这种测温装置的一根线上只能挂一个传感器,不能进行多点测量。
即使能实现,也要用到复杂的算法,一定程度上也增加了软件实现的难度。
方案三:采用数字温度传感器DS18B20测量温度,输出信号全数字化。
便于单片机处理及控制,省去传统的测温方法的很多外围电路。
且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线性度较好。
在0~100摄氏度时,最大线形偏差小于1摄氏度。
DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS1820和微控制器STC89C52构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。
这样,测温系统的结构就比较简单,体积也不大,且由于STC89C52可以带多个DSB1820,因此可以非常容易实现多点测量。
轻松的组建传感器网络。
采用温度芯片DS18B20测量温度,可以体现系统芯片化这个趋势。
部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。
而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。
所以集成芯片的使用将成为电路发展的一种趋势。
本方案应用这一温度芯片,也是顺应这一趋势。
3.2 单片机的选择
方案一:采用STC89C52八位单片机实现。
单片机软件编程的自由度大,可通过编程实现各种各样的算术算法和逻辑控制。
而且体积小,硬件实现简单,安装方便。
既可以单独对DS18B20控制工作,还可以与PC机通信.运用主从分布式思想,由一台上位机(PC微型计算机),下位机(单片机)温度数据采集,组成两级分布式温度测量的巡回检测系统,实现远程控制。
另外STC89C52在工业控制上也有着广泛的应用,编程技术及外围功能电路的配合使用都很成熟。
方案二:使用MSP430作控制器,德州仪器 (TI) 的超低功率16位RISC 混合信号处理器MSP430产品系列为电池供电测量应用提供了最终解决方案。
作为混合信号和数字技术的领导者,TI创新生产的MSP430,使系统设计人员能够在保持独一无二的低功率的同时同步连接至模拟信号、传感器和数字组件。
但在温度采集和实施控制这个重要的场合低功耗相对来说显得就不是那么重要了,而应该考虑它的稳定性、准确性,同时对比STC89C52能够在性能和资源都可以到达一个最佳的状态,可以避免用MSP430的不必要的资源浪费。
综上,我们传感器采用方案二,控制器采用方案一。
3.3 显示器件的选择
方案一:采用LED数码管显示。
LED数码管也称半导体数码管,是目前数字电路中最常用的显示器件。
它是以发光二极管作笔段并按共阴极方式或共阳极方式连接后封装而成的。
数码管只能显示固定数字和字母,而且其接口及驱动电路比较复杂,如图2.1。
图3.1 数码管与单片机连接图
方案二:采用LCD显示。
LCD显示具有接口简单,可显示文字、图形,输出信息相当丰富,并具有一屏输出多路信息的特点,比较适合本设计,同时对液晶的控制口线也不多。
由于LED数码显示器显示方面的局限性,不能提供文字画面显示。
而LCD灵活的接口方式和简单、方便的操作指令,可构成人机交互图形界面,低电压低功耗是其又一显著特点。
综上所述:同时考虑到本设计要显示多路数字信息,采用LCD
显示信息比较方便。
故采用LCD液晶屏显示。
4.系统的硬件电路设计
4.1系统总体电路设计
本次设计采用无线收发一体射频模块nRF24L01,对数据进行无线传输。
采用STC89C52单片机结合串口通信技术设计了低功耗采集电路。
最后在PC机上完成配置、显示和报警等功能。
发射子系统原理框图如图1所示;接受子系统由主控芯片STC89C52单片机、温湿度传感器、无线射频发射模块、天线、等组成。
如图2所示。
图4.1 发射子系统原理框图
图4.2 接受子系统原理框图
4.2单片机主控制电路设计
4.2.1 STC89C52简介
如图 4.3所示为STC89C52芯片的引脚图。
兼容标准MCS-51指令系统的STC89C52单片机是一个低功耗、高性能CHMOS的单片机,片内含4KB在线可编程Flash存储器的单片机。
它与通用80C51系列单片机的指令系统和引脚兼容。
STC89C52单片机片内的Flash可允许在线重新编程,也可用通用非易失性存储编程器编程;片内数据存储器内含128字节的RAM;有40个引脚,32个外部双向输入/输出(I/O)端口;具有两个16位可编程定时器;中断系统是具有6个中断源、5个中断矢量、2级中断优先级的中断结构;震荡器频率0到33MHZ,因此我们在此选用12MHZ的晶振是比较合理的;具有片内看门狗定时器;具有断电标志
POF等等。
STC89C52具有PDIP、TQFP和PLCC三种封装形式[8]。
图4.3 STC89C52引脚图
上图就是PDIP封装的引脚排列,下面介绍各引脚的功能。
4.2.2 STC89C52引脚说明
P0口:8位、开漏级、双向I/O口。
P0口可作为通用I/O口,但须外接上拉电阻;作为输出口,每各引脚可吸收8各TTL的灌电流。
作为输入时,首先应将引脚置1。
P0也可用做访问外部程序存储器和数据存储器时的低8位地址/数据总线的复用线。
在该模式下,P0口含有内部上拉电阻。
在FLASH编程时,P0口接收代码字节数据;在编程效验时,P0口输出代码字节数据(需要外接上拉电阻)。
P1口:8位、双向I/0口,内部含有上拉电阻。
P1口可作普通I/O口。
输出缓冲器可驱动四个TTL负载;用作输入时,先将引脚置1,由片内上拉电阻将其抬到高电平。
P1口的引脚可由外部负载拉到低电平,通过上拉电阻提供电流。
在FLASH并行编程和校验时,P1口可输入低字节地址。
在串行编程和效验时,P1.5/MO-SI,P1.6/MISO和P1.7/SCK分别是串行数据输入、输出和移位脉冲引脚。
P2口:具有内部上拉电阻的8位双向I/O口。
P2口用做输出口时,可驱动4各TTL负载;用做输入口时,先将引脚置1,由内部上拉电阻将其提高到高电平。
若负载为低电平,则通过内部上拉电阻向外部输出电流。
CPU访问外部16位地址的存储器时,P2口提供高8位地址。
当CPU用8位地址寻址外部存储时,P2口为P2特殊功能寄存器的内容。
在FLASH并行编程和校验时,P2口可输入高字节地址和某些控制信号。
P3口:具有内部上拉电阻的8位双向口。
P3口用做输出口时,输出缓冲器可吸收4各TTL的灌电流;用做输入口时,首先将引脚置1,由内部上拉电阻抬位高电平。
若外部的负载是低电平,则通过内部上拉电阻向输出电流。
在与FLASH 并行编程和校验时,P3口可输入某些控制信号。
P3口除了通用I/O口功能外,还有替代功能,如表4.1所示。
表4.1 P3口的替代功能
引脚符号说明
P3.0 RXD 串行口输入
P3.1 TXD 串行口输出
P3.2 /INT0 外部中断0
P3.3 /INT1 外部中断1
P3.4 T0 T0定时器的外部的计数输入
P3.5 T1 T1定时器的外部的计数输入
P3.6 /WR 外部数据存储器的写选通
P3.7 /RD 外部数据存储器的读选通
RST:复位端。
当振荡器工作时,此引脚上出现两个机器周期的高电平将系统复位。
ALE/PROG:当访问外部存储器时,ALE(允许地址锁存)是一个用于锁存地址的低8位字节的书粗脉冲。
在Flash 编程期间,此引脚也可用于输入编程脉冲。
在正常操作情况下,ALE以振荡器频率的1/6的固定速率发出脉冲,它是用作对外输出的时钟,需要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。
如果希望禁止ALE操作,可通过将特殊功能寄存器中位地址为8EH那位置的“0”来实现。
该位置的“1”后。
ALE仅在MOVE或MOVC指令期间激活,否则ALE 引脚将被略微拉高。
若微控制器在外部执行方式,ALE禁止位无效。
:外部程序存储器读选取通信号。
当STC89C52在读取外部程序时,每
个机器周期将PSEN激活两次。
在此期间内,每当访问外部数据存储器时,将跳过两个信号。
/Vpp:访问外部程序存储器允许端。
为了能够从外部程序存储器的0000H
至FFFFH单元中取指令,必须接地,然而要注意的是,若对加密位1进行编程,则在复位时,的状态在内部被锁存。
执行内部程序应接VCC。
不当选择12V编程电源时,在Flash编程期间,这个引脚可接12V编程电压。
XTAL1:振荡器反向放大器输入端和内部时钟发生器的输入端。
XTAL2:振荡器反相放大器输出端。
4.3 LCD显示电路设计
4.3.1 字符型液晶显示模块
图4.4 液晶面板
字符型液晶显示模块是一类专门用于显示字母,数字,符号等的点阵式液晶显示模块。
在显示器件上的电极图型设计,它是由若干个5*7或5*11等点阵符位组成。
每一个点阵字符位都可以显示一个字符。
点阵字符位之间有一空点距的间隔起到了字符间距和行距的作用,模块见图4.4。
4.3.2 字符型液晶显示模块引脚
VSS为地电源,VDD接5V正电源,VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可
以通过一个10K的电位器调整对比度。
RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
RW为读写信号线,高电平时进行读操作,低电平时进行写操作。
当RS和RW共同为低电平时可以写入指令或者显示地址,当RS 为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。
E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
DB0~DB7为8位双向数据线,BLK和BLA是背光灯电源。
模块引脚如表4.2。
表4.2 字符型液晶显示模块引脚
编号符号引脚说明编号符号引脚说明
1 VSS 电源地9 D
2 Data I/O
2 VDD 电源正极10 D
3 Data I/O
3 VL 液晶显示偏压信号11 D
4 Data I/O
4 RS 数据/命令12 D
5 Data I/O
5 R/W 读/写13 D
6 Data I/O
6 E 使能信号14 D
7 Data I/O
7 D0 Data I/O 45 BLA 背光源正级
8 D1 Data I/O 16 BLK 背光源负级
4.3.3 字符型液晶显示模块内部结构
液晶显示模块WM-C1602N的内部结构如图4.5分为三部份:一为LCD控制器,二为LCD驱动器,三为LCD显示装置。
与单片机接口见图4.6
图4.5 LCD1602内部结构
图4.6 液晶接口
4.4温度传感器DS18B20电路设计
4.4.1 DS18B20简介
温度芯片DS18B20是Dallas公司生产的一线式数字温度传感器,具有3引脚TO-92小体积封装形式。
测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出。
测量温度范围为-55℃~+125℃,在-10℃~+85℃范围内,精度为±0.5℃。
其工作电源既可在远端引入,也可采用寄生电源方式产生。
CPU 只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。
由于每一个DS18B20都有唯一系列号,因此多个DS18B20可以存在同一条单总线上。
这允许许多不同地方放置温度灵敏器件。
此特性的应用范围包括HA VC环境控制,建筑物、设备或机械内的温度检测,以及过程监控和控制中的温度检测等。
DS18B20的内部结构如图4.7所示。
图4.7 DS18B20方框图
DS18B20有4个主要的数据部件:
A:64位激光ROM。
64位激光ROM从高位到低位依次为8位CRC、48位序列号和8位家族代码(28H)组成。
B:温度灵敏元件。
C:非易失性温度报警触发器TH和TL。
可通过软件写入用户报警上下限值。
D:配置寄存器。
配置寄存器为高速暂存存储器中的第五个字节。
其中R0、R1:温度计分辨率设置位,其对应四种分辨率如下表所列,出厂时R0、R1置为缺省值:R0=1,R1=1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率。
表 4.3 分辨率关系表
R0 R1 分辨率/bit 最大转换时间/us
0 0 9 93.75
0 1 10 187.5
1 0 11 375
1 1 1
2 750
高速暂存存储器由9个字节组成,其分配如表4.3所示。
当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。
单片机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如表4.4所示。
对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。
表4.4 DS18B20存储器
温度LSB 温度
MSB
T
H
T
L
保留保留计数寄存器计数寄存器8位
CRC
4.4.2 电路设计
本系统为温度测试。
DS18B20采用外部供电方式,理论上可以在一根数据总线上挂256个DS18B20,但时间应用中发现,如果挂接25个以上的DS18B20仍旧有可能产生功耗问题。
另外单总线长度也不宜超过80M,否则也会影响到数据的传输。
本设计使用一个温度采集节点。
对DS18B20的设计,需要注意以下问题:
A:对硬件结构简单的单线数字温度传感器DS18B20 进行操作,需要用较为复杂的程序完成。
编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写时间片程序要严格按要求编写。
尤其在使用DS18B20 的高测温分辨力时,对时序及电气特性参数要求更高。
B:有多个测温点时,应考虑系统能实现传感器出错自动指示,进行自动DS18B20 序列号和自动排序,以减少调试和维护工作量。
C:测温电缆线建议采用屏蔽4 芯双绞线,其中一对线接地线与信号线,另一组接VCC和地线,屏蔽层在源端单点接地。
DS18B20 在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC与GND接在一起,焊接牢固。
若VCC 脱开未接,传感器只送85℃的温度值。
D:实际应用时,要注意单线的驱动能力,不能挂接过多的DS18B20,同时还应注意最远接线距离。
另外还应根据实际情况选择其接线拓扑结构。
4.5无线收发模块
4.5.1 简介
该模块由挪威(Nordic)公司生产的nRF24L01及其外围电路组成的。
nRF24L01作为单片射频收发芯片,其工作于2.4~2.5GHz世界通用ISM频段,工作电压为1.9~3.6V。
可通过SPI写入数据,最高可达10Mbit/s,数据传输速率最快可达2Mbit /s,并且具有自动应答和自动再发射功能。
芯片融进了增强式ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。
该芯片功耗低,6dBm功率发射时,
工作电流9mA,接收时工作电流只有12.3mA,可选择的掉电模式和空闲模式使其应用设计更为方便。
模块中nRF24L01和STC89C52通过MOSI、MISO和SCK组成SPI接口,单片机接12M的低频晶振工作,nRF24L01外接晶振为16MHz,由低速的单片机控制高速收发的射频芯片。
4.5.2 nRF24L01概述
nRF24L01是一款新型单片射频收发器件,工作于2.4 GHz~2.5 GHz ISM频段。
内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。
nRF24L01功耗低,在以-6dBm的功率发射时,工作电流也只有9mA;接收时,工作电流只有12.3mA,多种低功率工作模式(掉电模式和空闲模式)使节能设计更方便。
nRF24L01主要特性如下:
1、GFSK调制,硬件集成OSI链路层;
2、具有自动应答和自动再发射功能;
3、片内自动生成报头和CRC校验码;
4、数据传输率为l Mb/s或2Mb/s;
5、SPI速率为0 Mb/s~10 Mb/s;
6、125个频道与其他nRF24系列射频器件相兼容;
7、QFN20引脚4 mm×4 mm封装;
8、供电电压为1.9 V~3.6 V;
4.5.3 引脚功能及描述
nRF24L01的封装及引脚排列如图所示。
无线发射、接收芯片nRF24L01 的电路原理如图4.5所示。
图4.8无线发射、接收原理图
CE:使能发射或接收;
CSN,SCK,MOSI,MISO:SPI引脚端,微处理器可通过此引脚配置nRF24L01:IRQ:中断标志位;
VDD:电源输入端;
VSS:电源地;
XC2,XC1:晶体振荡器引脚;
VDD_PA:为功率放大器供电,输出为1.8 V;
ANT1,ANT2:天线接口;
IREF:参考电流输入;
4.5.4 工作模式
通过配置寄存器可将nRF24L01配置为发射、接收、空闲及掉电四种工作模式,
如表3.1所示。
表3.1 nRF24L01工作模式
模式PWR_UP PRIM_RX CE FIFO寄存器状态
接收模式 1 1 1 -
发射模式 1 0 1 数据在TX FIFO 寄存器中
发射模式 1 0 1→0停留在发送模式,直至数据发送完待机模式2 1 0 1 TX_FIFO为空
待机模式1 1 - 0 无数据传输掉电0 - - -
待机模式1主要用于降低电流损耗,在该模式下晶体振荡器仍然是工作的;待机模式2则是在当FIFO寄存器为空且CE=1时进入此模式;待机模式下,所有配置字仍然保留。
在掉电模式下电流损耗最小,同时nRF24L01也不工作,但其所有配置寄存器的值仍然保留。
4.5.5 工作原理
发射数据时,首先将nRF24L01配置为发射模式:接着把接收节点地址
TX_ADDR和有效数据TX_PLD按照时序由SPI口写入nRF24L01缓存区,TX_PLD 必须在CSN为低时连续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答开启,那么
nRF24L01在发射数据后立即进入接收模式,接收应答信号(自动应答接收地址应该与接收节点地址TX_ADDR一致)。
如果收到应答,则认为此次通信成功,TX_DS 置高,同时TX_PLD从TX FIFO中清除;若未收到应答,则自动重新发射该数据(自动重发已开启),若重发次数(ARC)达到上限,MAX_RT置高,TX FIFO中数据保留以便在次重发;MAX_RT或TX_DS置高时,使IRQ变低,产生中断,通知MCU。
最后发射成功时,若CE为低则nRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式2。
接收数据时,首先将nRF24L01配置为接收模式,接着延迟130μs进入接收状态等待数据的到来。
当接收方检测到有效的地址和CRC时,就将数据包存储在RX FIFO中,同时中断标志位RX_DR置高,IRQ变低,产生中断,通知MCU去取数据。
若此时自动应答开启,接收方则同时进入发射状态回传应答信号。
最后。