基于nrf24l01无线温度测量系统的设计与实现内容摘要:

片封装,不利于焊接,需要 PCB制板,大大增加了成本和开发周期。 方案三 :采用宏晶科技有限公司的 STC12C5A60S2增强型 51单片机作为主控芯片。 此芯片内置 ADC和 SPI总线接口,且内部时钟不分频,可达到 1MPS。 而且价格适中。 考虑到此系统需要不用到 ADC,从性能和价格上综合考虑我们选择方案一,即用 AT89C51作为本系统的主控芯片。 无线通信模块方案 方案一:采用 GSM模块进行通信, GSM模块需要借助移动卫星或者手机卡,虽说能够远距离传输,但是其成本较大、且需要内置 SIM卡,通信过程中需要收费,后期成本较高。 方案二:采用 TI公司 CC2430无线通信模块,此 模块采用 Zigbee总线模式,传输速率可达 250kbps,且内部集成高性能 8051内核。 但是此模块价格较贵,且 Zigbee协议相对较为复杂。 方案二:采用 NRF24L01无线射频模块进行通信, NRF24L01是一款高速低功耗的无线通信模块。 他能传输上千米的距离(加 PA),而且价格较便宜 ,采用 SPI总线通信模式电路简单,操作方便。 考虑到系统的复杂性和程序的复杂度,我们采用方案三作为本系统的通信模 块 [2]。 温度传感方案 方案一:采用 AD590是 美国 ANALO G DEV ICES 公司的单片集成 两端感温电流源。 AD590 测量热力学温度、摄氏温度、两点温度差、多点最低温度、多点平均温度的具体电路,广泛应用于不同的温度控制场合由于 AD590精度高、价格低、不需辅助电源、线性好,常用于测温和热电偶的冷端补偿。 但其需要用到差分放大器放大和 A/D转换,需要原件多。 方案二: 采用美国 DALLAS公司生产的 DS18B20可组网数字温度传感器芯片,具有耐磨耐碰,体积小,使 用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域 ; 经济,方便 [3]。 6 使用 DS18B20线路简单,编程容易,但是比 AD590精度 低。 AD590还需要其它辅助电路,线路复杂,编程难度大,但是温度精确。 考虑到电路的设计,成本,还有多点通信,我们选择方案二,即用 DS18B20作为本系统的温度传感器。 显示模块方案 方案一:选择主控为 ST7920的带字库的 LCD12864来显示信息。 12864是一款通用的液晶显示屏,能够显示多数常用的汉字及 ASCII码,而且能够绘制图片,描点画线,设计成比较理想的结果。 方案二:采用字符液晶 LCD1602 显示信息, 1602 是一款比较通用的字符液晶模块,能显示字符和数字等信息,且价格便宜,容易控制。 方案三:采用 LED7段数码显示管显示,其成本低,容易显示控制,但不能显示字符。 综合以上方案,我们选择了经济实惠的字符液晶 LCD1602来作为接收端的显示 , 发送端用 7段数码管显示。 单片机与 PC 机通信模块 采用 RS232串口与 PC机通信。 RS232 串口 是个人计算机上的通讯接口之一,由电子工业协会 (Electronic Industries Association, EIA) 所制定的异步传输标准接口。 通常 RS232 接口以 9 个接脚 (DB9) 或是 25 个接脚 (DB25) 的型态 出现,一般个人计算机上会有两组 RS232 接口,分别称为 COM1 和 COM2。 在多数情况下主要使用主通道,对于一般双工通信,仅需几条信号线就可实现,如一条发送线、一条接收线及一条地 线 [4]。 RS232C标准规定的数据传输速率为每秒 50、 7 100、 150、 300、 600、 1200、 2400、 4800、 9600、19200波特。 RS232C 标准规定,驱动器允许有 2500pF 的电容负载,通信距离将受此电容限制,例如,采用150pF/m 的通信电缆时,最大通信距离为 15m;若每米电缆的电容 量减小,通信距离可以增加。 传输距离短的另一原因是 RS232属单端信号传送,存在共地噪声和不能抑制共模干扰等问题,因此一般用于20m以内的通信。 串行通信接口标准经过使用和发展,目前已经有几种。 但都是在 RS232标准的基础上经过改进而形成的。 所以,以 RS232C 为主来讨论。 RS323C标准是美国 EIA(电子工业联合会)与 BELL 等公司一起开发的 1969 年公布的通信协议。 它适合于数据传输速率在 0~ 20200b/s 范围内的通信。 这个标准对串行通信接口的有关问题,如信号线功能、电器特性都作了明确规定。 由于 通行设备厂商都生产与RS232C 制式兼容的通信设备,因此,它作为一种标准,目前已在微机通信接口中广泛采用。 RS232是单片机间,或单片机与上位机间通讯联络用。 MAX232作为 RS232的电平转换芯片,完成 TTL电平到 RS232电平的转 换 [5]。 主机单片机接收到 NRF24L01的数据后,经 MAX232电平转换可实现单片机程序下载与升级,同时可实现单片机与 PC 机的通信,以便将显示数据信息通过此电路传送到 PC 机,并存 PC 机上显示,其串行通信电路如图。 系统方案确定 对于本论文的 基于 NRF24L01 无线温度测量系统 来说,整个系统由温度采集端和温度接收端两个部 7 份组成,两者之间通过无线信道通信。 数据采集端负责数据的采集和发送。 数据接收端负责数据的接收和处理。 系统整体结构框图如图。 图 MAX232与 PC的串口通信电路 下位机 上位机 图 数据采集端由传感器、微处理器和无线模块构成。 传感器将转换后的数字 信号送往无线模块打包发出 ; 数据接收端由无线模块、微处理器及计算机组成。 数据接收端接收到采集端发送的数据后,将数据按照通信协议拆包,取出里面的有效数据并通过串口发送给计算机,由计算机对采集到的数据进行分析和处理。 系统硬件实现简单,数据采集和接收端均采用无线收发一体芯片,微处理器可以单片机、数据接收端与计算机通过串口通信 [6]。 无 线 收 发 模 块 单片机 AT89C51 PC机 控制模块 显示模块 温度传感器 单片机 AT89C51 无线收发模块 8 3 无线温度采集系统的硬件电路设计 单片 NRF24L01 无线模块 NRF24L01 芯片概述 NRF24L01 是一款新型单片射频收发器件 ,工作于 GHz~ GHz ISM 频段。 内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块 ,并融合了增强型 ShockBurst技术,其中输出功率和通信频道可通过程序进行配置。 NRF24L01功耗低 ,在以 6 dBm的功率发射时,工作电流也只有 9 mA。 接收时,工作电流只有 mA,多种低功率工作模式 (掉电模式和空闲模式 )使节能设计更方 便 [7]。 NRF24L01主要特性如下: GFSK调制 ; 硬件集成 OSI链路层 ; 具有自动应答和自动再发射功能 ; 片内自动生成报头和 CRC校验码 ; 数据传输率为 l Mb/s或 2Mb/s; SPI速率为 0 Mb/s~ 10 Mb/s; 125个频道 ; 与其他 NRF24系列射频器件相兼容 ; QFN20引脚 4 mm4 mm 封装 ; 供电电压为 V~ V。 引脚功能及描述 NRF24L01 的封装及引脚排列如图 所示 [8]。 各引脚功能如下: 图 NRF24L01 封装图 CE:使能发射或接收。 CSN, SCK, MOSI, MISO: SPI 引脚端 , 微处理器可通过此引脚配置 NRF24L01: IRQ:中断标志位 ; VDD:电 源输入端 ; VSS:电源地 ; XC2, XC1:晶体振荡器引脚。 VDD_PA:为功率放大器供电,输出为 V; 9 ANT1,ANT2:天线接口 ; IREF:参考电流输入。 工作模式 通过配置寄存器可将 NRF241L01 配置为发射、接收、空闲及掉电四种工作模式,如表 31所示。 待机模式 1 主要用于降低电流损耗,在该模式下晶体振荡器仍然是工作的 ; 待机模式 2 则是在当 FIFO 寄存器为空且 CE=1 时进入此 模式; 待机模式下,所有配置字仍然保留。 在掉电模式下电流损耗最小,同时 NRF24L01也不工作,但其所有配置寄存器的值仍然保留 [9]。 表 31: 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 工作原理 发射数据时,首先将 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 去取数据。 若此时自动应答开启,接收方则同时进入发射状态回传应答信号。 最后接收成功时,若 CE 变低,则 NRF24L01 进入空闲模式 1[10]。 10 在写寄存器之前一定要进入待机模式或掉电模式。 如下图 、 ,给出 SPI 操作及时序图: 图 SPI 读操作 图 SPI 写操作 配置字 SPI 口为同步串行通信接口,最大传输速率为 10 Mb/s,传输时先传送低位字节,再传送高位字节。 但针对单个字节而言,要先送高 位再送低位。 与 SPI 相关的指令共有 8 个,使用时这些控制指令由 NRF24L01 的 MOSI 输入。 相应的状态和数据信息是从 MISO 输出给 MCU。 NRF24L0l 所有的配置字都由配置寄存器定义,这些配置寄存器可通过 SPI 口访问。 NRF24L01 的配置寄存器共有 25个,常用的配置寄存器如表 32 所示。 表 32:常用配置寄存器 地址( H) 寄存器名称 功能 00 CONFIG 设置 24L01工作模式 01 EN_AA 设置接收通道及自动应答 02 EN_RXADDR 使能接收通道地址 03 SETUP_AW 设置地址宽度 04 SETUP_RETR 设置自动重发数据时间和次数 07 STATUS 状态寄存器,用来判定工作状态 0A~ 0F RX_ADDR_P0~ P5 设置接收通道地址 10 TX_ADDR 设置接收接点地址 11~ 16 RX_PW_P0~ P5 设置接收通道的有效数据宽度 NRF24L01 模块原理图 NRF24L01 单端匹配网络:晶振,偏置电阻,去耦电容。 下图 为 NRF24L01单端 50Ω射频输出电路原理图。 11 C E1C S N2S C K3M O S I4M I S O5IRQ6VDD7VSS8XC29XC110V D D _ P A1 1A N T 11 2A N T 21 3V S S1 4V D D1 5IREF16VSS17VDD18DVDD19VSS20U 1N R F 2 4 L 0 1V D DC 91 0 n FC 81 n FC。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。