论文部分内容阅读
【摘 要】本文介绍了在数字温度计中采用无线收发模块nRF905实现温度数据的无线传输。以单片机STC12C5608为核心,由温度传感器PT-100采集温度数据,通过nRF905完成温度数据的发送与接收,在PC机上实现远距离采集和显示温度值。
【关键词】无线数据传输;SPI;nRF905;单片机
引言
随着无线技术的快速发展,无线传输应用越来越被人们所接受[1]。本文设计的一个温度无线数据传输系统,主要应用于物理实验室的智能温度计中。它利用单片机来控制无线数字传输芯片nRF905,通过无线方式进行数据的双向传输。
1.系统的总体设计
系统总体框图如图1所示。该系统选用宏晶公司生产的一种单时钟机器周期的STC12C5608单片机作为控制芯片。它是超速、低耗、超强抗干扰的新一代8051单片机,指令代码完全兼备8051,但是速度比8051快8-12倍。以Nordic公司成产的nRF905作为无线射频收发模块。两者通过SPI通信协议进行数据的交换,从而将温度传感器采集到的温度进行无线传输,最后把温度值显示在LCD12232液晶屏上或者直接发送到PC机上。
2.系统的硬件设计
2.1 温度的采集与处理
用PT-100温度传感器采集外界环境的温度,经过AD7705把采集的模拟信号转换成数字信号,最后传送到单片机内进行处理。
2.2 无线射频收发模块nRF905与单片机模块
nRF905是Nordic公司推出的单片射频收发器,工作电压为1.9V~3.6 V,工作于433 MHz、868 MHz、915 MHz 3个ISM频段(本设计采用433M频段),频道转换时间小于650μs, 最大传输数据速率为100 Kbit/s。nRF905由频率合成器、接收解调器、功率放大器、晶体振荡器和GFSK调制器组成。有ShockBurst工作模式,能自动处理字头和CRC校准,使用SPI接口与微控制器通信,配置简单。
nRF905有ShockBurst接收模式和ShockBurst发射模式两种工作模式和掉电与SPI编程模式和待机与SPI编程模式两种省电模式。模式的选择由TRX_ CE,TX_ EN和PWR_UP的设置来决定。nRF905采用串行SPI接口SPISS,SCK,MISO,MOSI与单片机进行连接[2]。
3.软件设计
3.1 nRF905的初始化
通过SPI口向nRF905配置寄存器读写入配置信息。设定nRF905的工作频段为433MHz,输出功率为10dB,地址宽度为4字节,接收发送有效数据长度为32字节,还有接收数据的地址和CRC校验。
(a)温度的采集与发射
(b)温度的接收与显示
图1 系统总体框图
3.2 nRF905的发送流程
当微控制器有数据要发送时,通过SPI接口按时序把接收机的地址和要发送的数据送传给nRF905,然后微控制器把TRX_CE和TX_EN引脚置高,激发nRF905的ShockBurstTM发送模式;nRF905的ShockBurstTM发送包括射频寄存器自动开启、数据打包(加字头和CRC校验码)、发送数据包和当数据发送完成,数据准备好引脚被置高四个步骤;当AUTO_RETRAN被置高时,nRF905不断重发,直到TRX_CE被置低;当TRX_CE被置低,nRF905发送过程完成,自动进入空闲模式,如图3所示。
3.3 nRF905的接收流程
当nRF905进入ShockBurstTM接收模式时,nRF905不断进行监测,等待接收数据;如果nRF905检测到同一频段的载波时,CD引脚被置高;如果接收到一个相匹配的地址,AM引脚被置高。当一个正确的数据包接收完毕,nRF905将自动移去字头、地址和CRC校验位,然后把DR引脚置高,微控制器通过SPI口,以一定的速率把数据移到微控制器内,当所有的数据接收完毕,nRF905把DR引脚和AM引脚置低。nRF905此时进入ShockBurstTM发送模式或关机模式。
4.结束语
利用无线通讯模块对空旷和有障碍物两种环境进行测试。通过多次测量,测试结果表明,空旷环境中风的干扰会导致部分数据丢失;障碍物会缩短无线传输的距离。在软件设计中采用了数据重发机制,能有效地解决数据丢失的问题。采用单片机STC12C5608和nRF905所设计的数字温度计,能满足20米范围内的实验室无线数据传输要求。
图3 nRF905的发送流程
参考文献:
[1]崔政委,汪焰恩,魏生民,董芊里.基于单片机和nRF905SE的无线射频收发模块的系统设计[J].机械与电子.2011(06).
[2]荚庆,王代华,张志杰.基于nRF905的无线数据传输系统[J].国外电子元器件.2008(01)
基金项目:
湖南省大学生研究性学习与创新性实验计划项目(CX1204)
【关键词】无线数据传输;SPI;nRF905;单片机
引言
随着无线技术的快速发展,无线传输应用越来越被人们所接受[1]。本文设计的一个温度无线数据传输系统,主要应用于物理实验室的智能温度计中。它利用单片机来控制无线数字传输芯片nRF905,通过无线方式进行数据的双向传输。
1.系统的总体设计
系统总体框图如图1所示。该系统选用宏晶公司生产的一种单时钟机器周期的STC12C5608单片机作为控制芯片。它是超速、低耗、超强抗干扰的新一代8051单片机,指令代码完全兼备8051,但是速度比8051快8-12倍。以Nordic公司成产的nRF905作为无线射频收发模块。两者通过SPI通信协议进行数据的交换,从而将温度传感器采集到的温度进行无线传输,最后把温度值显示在LCD12232液晶屏上或者直接发送到PC机上。
2.系统的硬件设计
2.1 温度的采集与处理
用PT-100温度传感器采集外界环境的温度,经过AD7705把采集的模拟信号转换成数字信号,最后传送到单片机内进行处理。
2.2 无线射频收发模块nRF905与单片机模块
nRF905是Nordic公司推出的单片射频收发器,工作电压为1.9V~3.6 V,工作于433 MHz、868 MHz、915 MHz 3个ISM频段(本设计采用433M频段),频道转换时间小于650μs, 最大传输数据速率为100 Kbit/s。nRF905由频率合成器、接收解调器、功率放大器、晶体振荡器和GFSK调制器组成。有ShockBurst工作模式,能自动处理字头和CRC校准,使用SPI接口与微控制器通信,配置简单。
nRF905有ShockBurst接收模式和ShockBurst发射模式两种工作模式和掉电与SPI编程模式和待机与SPI编程模式两种省电模式。模式的选择由TRX_ CE,TX_ EN和PWR_UP的设置来决定。nRF905采用串行SPI接口SPISS,SCK,MISO,MOSI与单片机进行连接[2]。
3.软件设计
3.1 nRF905的初始化
通过SPI口向nRF905配置寄存器读写入配置信息。设定nRF905的工作频段为433MHz,输出功率为10dB,地址宽度为4字节,接收发送有效数据长度为32字节,还有接收数据的地址和CRC校验。
(a)温度的采集与发射
(b)温度的接收与显示
图1 系统总体框图
3.2 nRF905的发送流程
当微控制器有数据要发送时,通过SPI接口按时序把接收机的地址和要发送的数据送传给nRF905,然后微控制器把TRX_CE和TX_EN引脚置高,激发nRF905的ShockBurstTM发送模式;nRF905的ShockBurstTM发送包括射频寄存器自动开启、数据打包(加字头和CRC校验码)、发送数据包和当数据发送完成,数据准备好引脚被置高四个步骤;当AUTO_RETRAN被置高时,nRF905不断重发,直到TRX_CE被置低;当TRX_CE被置低,nRF905发送过程完成,自动进入空闲模式,如图3所示。
3.3 nRF905的接收流程
当nRF905进入ShockBurstTM接收模式时,nRF905不断进行监测,等待接收数据;如果nRF905检测到同一频段的载波时,CD引脚被置高;如果接收到一个相匹配的地址,AM引脚被置高。当一个正确的数据包接收完毕,nRF905将自动移去字头、地址和CRC校验位,然后把DR引脚置高,微控制器通过SPI口,以一定的速率把数据移到微控制器内,当所有的数据接收完毕,nRF905把DR引脚和AM引脚置低。nRF905此时进入ShockBurstTM发送模式或关机模式。
4.结束语
利用无线通讯模块对空旷和有障碍物两种环境进行测试。通过多次测量,测试结果表明,空旷环境中风的干扰会导致部分数据丢失;障碍物会缩短无线传输的距离。在软件设计中采用了数据重发机制,能有效地解决数据丢失的问题。采用单片机STC12C5608和nRF905所设计的数字温度计,能满足20米范围内的实验室无线数据传输要求。
图3 nRF905的发送流程
参考文献:
[1]崔政委,汪焰恩,魏生民,董芊里.基于单片机和nRF905SE的无线射频收发模块的系统设计[J].机械与电子.2011(06).
[2]荚庆,王代华,张志杰.基于nRF905的无线数据传输系统[J].国外电子元器件.2008(01)
基金项目:
湖南省大学生研究性学习与创新性实验计划项目(CX1204)