收藏 分销(赏)

基于nrf905的无线温度采集系统的设计.doc

上传人:w****g 文档编号:2501636 上传时间:2024-05-30 格式:DOC 页数:56 大小:629.50KB
下载 相关 举报
基于nrf905的无线温度采集系统的设计.doc_第1页
第1页 / 共56页
基于nrf905的无线温度采集系统的设计.doc_第2页
第2页 / 共56页
基于nrf905的无线温度采集系统的设计.doc_第3页
第3页 / 共56页
基于nrf905的无线温度采集系统的设计.doc_第4页
第4页 / 共56页
基于nrf905的无线温度采集系统的设计.doc_第5页
第5页 / 共56页
点击查看更多>>
资源描述

1、基于nRF905的无线温度采集系统的设计本科毕业论文(设计) (物理与电子工程学院)院)题(中、英文)目基于nRF905的无线温度采集系统的设计Wireless temperature gathering system based on nRF905nRF905designnRF905作者姓名指导教师姓名学科门类工学提交论文日期专 业 名 称电子科学与技术基于nRF905的无线温度采集系统的设计摘 要:温度是与人类生活密切相关的物理量。为提高温度测量效率,降低系统成本,扩展传输距离,设计出一种新型温度采集系统。本文介绍了一种基于DS18B20、nRF905和AT89C52单片机的温度测量控制系

2、统的硬件和软件设计,并且利用VB提供MSComm对上位机进行编程,形成可视化串口传输窗口。实验结果表明,该系统结构简单、方便移植,能够实现400m范围的传输。关键词:DS18B20 nRF905 温度采集 无线收发Wireless temperature gathering system based on nRF905Abstract:The temperature is closely related to human life. To improve the temperature measurement efficiently reduce system cost, and expans

3、ion of transmission distance, a new type of temperature acquisition system is designed. This paper presents the hardware and the compile program design of temperature measurement and control system which based on DS18B20, AT89C52 and nRF905, and using VB MSComm provided programming on the supervisor

4、y computer to form a visual serial transfer window. The experimental results show that the system is simple, convenient transplantation, and can be implemented in the transmission ranger of 400 meters. Keywords: DS18B20 nRF905 Temperature gathering Wireless transceiver1 绪论11.1 设计目的、内容及意义11.2 设计的论文结构

5、12方案的选取和可行性分析32.1方案的选取32.2 可行性分析33单片机简介与选型43.1单片机技术及其发展43.2单片机技术的应用43.3单片机的选型54 DALLAS公司的单总线74.1硬件结构和连接74.2单总线的工作原理【2】74.3 单总线通信协议85数字温度传感器DS18B20简介105.1 DS18B20的引脚封装和性能105.2 DS18B20的内部结构115.3 DS18B20在单片机系统中应用电路125.4 DS18B20的功能命令【12】126 NRF905无线数传芯片简介146.1芯片内部结构与封装146.2工作模式156.2.1 ShockBurstTM模式166.

6、2.2节能模式186.3 nRF905的配置186.4 nRF905硬件电路187系统的硬件结构207.1 nRF905无线收发模块207.2系统的硬件电路图218系统软件设计238.1单片机编程238.2上位机编程249总结26致谢27参考文献28附录29附录1 系统发送程序29附录2 系统接收程序37附录3 上位机程序431 绪论1.1 设计目的、内容及意义中国是农业大国,大棚种植已经是我国农业不可缺少的种植方式,而温度的控制在大棚种植中占有非常重要的地位。本次设计的目的就是大棚温度的采集,使我们方便、高效的获取大棚温度数据并显示出其历史变化。近几年来迅速发展的微功率短距离无线通信技术,无

7、线通信在野外机动设备或人们不方便到达现场的地方得到越来越多的应用。有很多厂商推出了各种专用的单芯片射频收发器,再加上微控制器和少量外围器件就可以构成专用或通用的无线通信模块。一般这些射频芯片采用GFSK(高斯频移键控)调制方式,工作于ISM(工业、科学与医疗)频段,通信模块包含简单透明的数据传输协议或简单的加密协议,因此只要依据命令字进行操作就可实现数据无线传输功能,所以使用起来较为方便。又因为其通信模块具有功率小、开发简单,从而在现代工业和民用领域得到广泛应用。1.2 设计的论文结构本文在结构上分为九章,各章的主要内容如下:第一章主要介绍了本设计的目的、研究的主要内容和意义及论文的结构。第二

8、章主要介绍方案的选取和可行性分析,给出本次设计时的搜集资料、思考方法以及最后定稿的过程。第三章主要介绍单片机选型和硬件的一些知识。第四章主要介绍DALLAS半导体公司独创的单片机外设总线,其中介绍了单总线硬件结构、单总线实现的原理以及单总线通信协议。第五章主要介绍DS18B20的简介,介绍了DS18B20的内部结构原理和温度采集终端的硬件电路,软件的一些功能命令。第六章是nRF905射频芯片的基础知识和其构成的数传模块。第七章以及后几章主要关于系统硬件总体电路、软件设计以及关于这次毕业设计的总结。2方案的选取和可行性分析2.1方案的选取传统的测量大棚温度数据的方法是采取温度计测量,人工读取的方

9、法,这样不仅不方便而且效率和准确性都不高。当大棚数量太多,环境较为恶劣时,这种传统的方法就不能起到很好的作用。现在兴起的无线通信GPRS技术具有传送距离长,通信可靠稳定,但设计复杂、成本较高,不适合短距离工作。上述两种方法,在成本和技术上都有一些不尽如人意的地方。此处设计的温度采集系统,采用单片机、DS18B20数字温度传感器和一对nRF905无线数传模块组成的温度数据无线传输系统。它具有功耗低、误码率低、工作稳定、成本低和简单方便等优点,非常适合应用推广。2.2 可行性分析本次设计的思路是采用单片机作为主控芯片,用DS18B20数字温度传感器将采集到的数据输入单片机中,再由单片机传给nRF9

10、05数传模块,数据经调制后被发送出去。此处nRF905工作于433MHz的载频。另外一套nRF905无线数传模块收到信号后,将经过解调得到的环境温度数据传给单片机,单片机通过串口再把数据传给VB制作的上位机,最后经过处理的温度数据连同日期、时间和采集点等信息被自动录入电脑保存并实时显示在电脑屏幕上。本系统的硬件结构框图如图2.1。单片机DS18B20单片机数传模块数传模块单片机机PC片机图2.1 硬件电路框图3单片机简介与选型3.1单片机技术及其发展单片机属于第四代计算机,是微型计算机的一个分支。它是一种集成电路芯片,采用超大规模集成电路技术将CPU、RAM、ROM、I/O口、中断系统、定时器

11、/计时器等集成于一体的一个小而完善的计算机系统,因此得名单片微型计算机,简称单片机。 它主要应用于控制领域,用以实现各种测试、控制等功能。为了强调其控制功能,也有人称它为微控制器MCU。其在应用时,通常是处于控制系统的核心地位,即以嵌入的方式使用。根据应用的需要,可将单片机分为通用型和专用型两种类型。 通用型单片机是一种基本芯片,它内部资源比较丰富,性能全面且适用性强,能满足应用需要。用户可根据需要设计成各种控制系统,即通用单片机有二次开发的过程,通过用户的进一步设计,才能组建成一个以通用单片机为核心、配以其它外围电路的应用控制系统。然而在单片机的控制应用中,有很多是专门针对某个特定的产品的,

12、例如电度表、IC 卡读写器等等。这种应用的最大特点是针对性强、数量巨大,为此厂家常与芯片制造商合作,设计和生产专用的单片机芯片。由于专用单片机芯片是针对一种产品或一种控制应用而专门设计的,设计时已经对系统结构进行了最简化、软硬件资源利用最优化处理。自微型计算机问世以来,因实际应用的需求,产生了两个不同的发展方向:一个是高速度、大容量、高性能;另一个是稳定可靠、微型、廉价。随着科技的发展,今后的其品种将更多、功能更强,集成度、可靠性更高,功耗更低,使用也将更加方便。此外,专用化也是单片机的一个发展方向,相信针对单一用途的单片机也会越来越多。3.2单片机技术的应用目前单片机的应用已深入到国民经济的

13、各个领域,对各个行业的技术改造和产品的更新换代起到重要作用。单片机广泛应用于实验室、交通运输工具、计量等各种仪器仪表之中,使仪表智能化,提高他们测量精度,加强其功能,简化仪器仪表的结构,便于使用、维护和改进。单片机也广泛用于各种实时控制系统之中,如对工业上各种窑炉的温度、酸度、化学成分的测量和控制。将测量技术、自动控制技术以及单片机技术结合,充分发挥数据处理和实时控制功能,使系统工作于最佳状态,提高系统的生产效率和产品质量。在航空、通信、遥控、遥测和遥感等各种实时控制系统中很多产品可以用单片机作为控制器【3】。单片机在家用电器等消费电子类领域的应用也是相当广泛的。单片机应用到消费电子类产品中,

14、能大大提高他们的性价比,因而受到用户的青睐,提高产品在市场的竞争力。目前家用电器几乎都是单片机控制的产品,如空调、洗衣机、冰箱等。3.3单片机的选型本设计选用的单片机是宏晶科技有限公司生产的STC89C52型单片机。其包含Intel 8051的基本功能模块:相同或相似的8位CPU,8K FLASH ROM,256字节RAM数据存储器,4个8位并行口,3个16位定时器T0、T2、T3,一个异步串行口UART。STC89C52优点是很低的功耗,分为掉电模式,其一般功耗为0.5uA,可以被外部中断激活,中断结束后,继续执行其原来的程序;空闲模式一般的功耗为2mA;在正常工作模式时,其典型功耗4mA-

15、7mA。而且还具有超强的抗干扰性能。单片机的最小系统是由振荡电路和复位电路组成。最小系统电路图如图3.1。图3.1 单片机最小系统4 DALLAS公司的单总线单总线系统(1-Wire Bus)是美国DALLAS半导体公司独创的单片机外设总线,仅需一个信号线就可在单片机与外设芯片之间实现寻址和数据交换。它采用单根信号线,既可传输时钟,又能传输数据,且数据传输是双向的。因而这种单总线技术具有线路简单、硬件开销少,且能传输数据、便于总线扩展与维护等。4.1硬件结构和连接单总线需要一个大约5千欧的上拉电阻,这样,在空闲状态时总线为高电平。由于连接在单总线系统中的每个器件都是通过一个三态门或开漏极连接在

16、单总线上,这就使得每个器件都可以释放总线,而让另一个器件来使用。但某个器件不用总线传输数据时,它释放总线后,就可由另一个器件来使用总线传输数据。使总线保持低电平的时间超过480s时,总线上的所有器件都会被复位。4.2单总线的工作原理【2】单总线系统是一个单主机的主从系统。由于他们是主从结构的,所以只有在主机呼叫从机,从机才能应答。主机在访问单总线器件时要经过初始化单总线器件、识别单总线器件和交换数据这三个步骤才能实现对从器件控制。因此,在单总线系统中规定了初始化命令、ROM命令和功能命令三种命令,主机通过这三种命令来访问从器件,且必须严格按照初始化命令、ROM命令和功能命令这个顺序来进行,如果

17、出现混乱,单总线器件将不会对主机产生响应。初始化命令,单总线上的所有操作都是从初始化开始。初始化是由主器件发出一个初始化脉冲,单总线上所接的上拉电阻使得总线在空闲状态时为高电平。单总线操作必须从空闲状态开始,但单总线上加的低电平超过480s时,总线上的所有器件都复位,主器件发出复位脉冲,然后释放总线改为接受状态,总线被上拉电路拉到高电平。在检测到此上升沿后,挂接在单总线上的各从器件在接收到此命令后,会发出应答脉冲,表明从器件已经做好准备,当主器件收到应答脉冲后接着发出ROM命令和功能命令。从器件DS18B20要等待1560s才向主器件发回应答脉冲。ROM命令,其功能主要是实现对单总线器件的识别

18、。当主器件检测到一个应答脉冲后,就发出一个ROM命令。如果在单总线上有几个从器件,那么主器件就可根据从器件唯一的64位ID代码,确定与哪个从器件对话。ROM命令还可以使主器件判断当前总线上有几个从器件。单总线共有五种ROM命令,每个ROM命令的长度为一字节,表4.1是其简要说明。表4.1 ROM命令说明ROM命令说明搜索ROM(F0H)识别单总线上所有单总线器件的ID码读ROM(33H)(仅适用单节点)直接读单总线器件的ID代码匹配ROM(55H)寻找与制定ID代码相匹配的单总线器件跳过ROM(CCH) 仅适用单节点使用该命令可直接访问总线上从机设备报警搜索ROM(ECH)(仅少数期间支持)搜

19、索有报警的从机设备4.3 单总线通信协议在单总线系统中,为确保数据传输的完整和准确,单总线通信协议定义了初始化脉冲、应答脉冲、写0脉冲、写1脉冲和读脉冲五种信号类型。除了应答脉冲是由从器件发出的外,其余信号均由主器件发出。所有单总线命令序列(初始化命令、ROM命令和功能命令)都是由这些基本的信号类型组成,并且发送的所有命令和数据字节都是低位在前。主器件在写脉冲期间向从器件写入数据,在读脉冲期间由从器件读出数据。在每个脉冲期间只能读或写一位数据。在单总线通信协议中,将完成传输一位的时间称为一个时隙。字节传输可通过多次调用位操作来实现。初始化脉冲是由主器件单片机发出一个持续时间超过480微秒的低电

20、平,然后主器件释放总线进入接受状态等待从器件的应答,这时总线被上拉电阻提升至高电平,从器件DS18B20在检测到上升沿后,等待1560s将总线拉低保持60240s作为应答。读/写时隙,主器件通过“写时隙”写数据到DS18B20中,然后通过“读时隙”由DS18B20读出数据。无论读时隙还是写时隙,都是从器件拉低总线至少1s开始的。每个时隙只能传输一位数据,一个时隙持续至少60s。两个时隙的间隔时间T要大于1s。写时隙,主器件用“写1”时隙给DS18B20写入逻辑1,用“写0”时隙给DS18B20写入逻辑0.主器件拉低总线至少1s开始一个写时隙。要产生“写1”时隙,主器件必须在拉低总线之后的15s

21、内释放总线,这时上拉电阻会抬高总线;要产生“写0”时隙,主器件要在拉低总线之后的整个写时隙周期内一直保持低电平不变。DS18B20在主器件产生写时隙后的1560s窗口时间段内采样总线。读时隙,DS18B20在主器件发出有关读命令后,才能发数据给主器件。主器件在发出读命令之后,必须立即产生读时隙。主器件拉低总线至少1s开始一个读时隙,然后立即释放总线,接着DS18B20会发出数据到总线,DS18B20拉低总线数据为0,释放总线数据为1(由上拉电阻抬高总线)。该数据在读时隙开始后15s内有效,因此主器件必须在此期间采样总线,读出数据。5数字温度传感器DS18B20简介DS18B20是DALLAS公

22、司推出的数字温度传感器,直接输出912位的数字温度值,含有一个非易失性存储器保存上下限报警器。DS18B20使用单总线系统,仅需一根数据线即可实现与微处理器之间通信。工作温度范围是-55+125,温度测量数据在-10+85范围内精度达到0.5。每个DS18B20都具有一个唯一的64位期间识别码,这样可使多个DS18B20挂在同一条单总线系统上,并由一个微处理器来控制这些分布在一个较大区域内很多DS18B20。5.1 DS18B20的引脚封装和性能常用的DS18B20采用与普通三极管相同的TO-92封装形式,另外也有8引脚的SO和SOP封装。TO-92和封装如图5.1所示【6】。 (a)TO-9

23、2封装 (b)8引脚SO封装图5.1 DS18B20的引脚封装5.2 DS18B20的内部结构图5.2是DS18B20的内部结构图【6】。64位ROM存储DS18B20的唯一器件识别码,中间结果暂存器中有两字节用来暂存温度传感器测得的温度数据。温度报警上、下限寄存器各占一字节,还有一个配置字节由用户自己来设定温度数据的位数(9,10,11和12位),这三个字节都是EEPROM非易失性存储器,即使在系统掉电时数据也不会丢失。DS18B20使用DALLAS公司独创的单总线系统,只需一根控制信号线就可通信。在单总线系统中,所有器件都通过一个三态门或开漏极连接在单总线上,因此该总线需要一个上拉电阻。微

24、处理器通过每个器件的识别码来识别器件。DS18B20的核心是它的直接数字温度传感器,该传感器分辨率可设置为9,10,11和12位,分别对应于0.5 ,0.25,0.125,0.0625的温度增量,上电后分辨率默认为12位的。DS18B20在上电后并不工作,而是处于休闲状态,主机只有发出一个转换T命令才能使它进入温度测量和A/D转换状态,转换完成后就会有两字节的温度测量值存入中间结果暂存器,同时DS18B20又重新返回到休闲状态。图5.2 DS18B20的内部结构5.3 DS18B20在单片机系统中应用电路图5.3是使用单片机(STC89C52)来访问单总线器件DS18B20温度传感器的电路图【

25、6】。图5.3 DS18B20在单片机系统中应用5.4 DS18B20的功能命令【12】和所有单总线器件一样,访问DS18B20也需要初始化、ROM命令和功能命令这三个步骤。主机通过ROM命令确定DS18B20后,即可给DS18B20发出功能命令来启动温度转换、决定DS18B20的供电方式以及向DS18B20的中间结果寄存器写入数据或者读出数据,下面介绍其功能命令。启动温度转换命令(Convert T),该命令启动一次温度转换,随后转换结果存入中间结果暂存器的两字节温度寄存器中,然后DS18B20又返回到其休闲状态。若DS18B20是由外部供电的,那么主机就可在该命令之后进入读时隙,DS18B

26、20根据转换完成与否做出反应,如果转换还在进行中则给主机发0,否则发1。但寄生供电无此功能。读中间结果暂存器命令(Read Scratchpad),该命令让主机读出DS18B20中间结果暂存器内的9个字节,由最低字节开始一直读到第9字节。如果需要部分数据,主机可在读取过程中的任何时间发初始化命令,使该命令终止。写中间结果暂存器命令(Write Scratchpad),该命令让主机写三个字节到DS18B20,第一个字节被写入TH寄存器,第二个字节被写入TL寄存器,第三个字节被写入配置寄存器。发送时字节低位先发。复制中间结果暂存器命令(Copy Scratchpad),复制中间结果暂存器TH,TL

27、和配置寄存器数据到EEPROM。若采用寄生供电方式,则主机在发出该命令之后最长10s内必须使总线至少保持10ms的高电平。回传EEPROM内容命令(Recall E2),该命令执行由EEPROM回传TH,TL和配置寄存器数据到中间结果寄存器的第2,3,4字节。跟随Recall E2命令后,主机可进入读时隙。与启动温度转换命令类似,DS18B20可根据回传完成与否做出反应,若回传尚在进行之中则给主机发0,若回传已完成则发1。DS18B20上电时自动进行回传EEPROM内容的操作,以便器件在通电后使中间结果暂存器中的数据立即有效。读电源类型命令(Read Power Supply),主机在发出该命

28、令后紧跟一个读时隙,以便判断在总线上是否有寄生供电的器件。在读时隙期间,寄生供电的DS18B20会拉低总线,外部供电的DS18B20会继续保持总线高电平。6 nRF905无线数传芯片简介挪威NORDIC公司推出了一种单片射频芯片是本次系统设计的核心,此芯片工作于1.93.6V电压范围内,使用433MHz/868MHz/915MHz的ISM频段,频道转换时间小于650s,数据传输速率最大为100Kb/s。nRF905的内部结构是频率合成器、接收解调器、功率放大器、晶体振荡器和GFSK调制器等组成。此外,功耗较低。由于其收发可靠,使用方便,所以在工业控制、消费电子各领域都具有广阔的应用前景。6.1

29、芯片内部结构与封装nRF905片内集成了电源管理、晶体振荡器、低噪声放大器、频率合成器和功率放大器等模块,曼彻斯特编码/解码有片内硬件完成,用户无须对数据进行曼彻斯特编码,因而使用方便。其内部结构如图6.1所示【7】。图6.1 nRF905的内部结构nRF905采用32引脚的QFN 5mm*5mm小封装(32L QFN 5mm*5mm),体积小,节省印制板面积。图6.2是nRF905的封装和引脚分布【7】。图6.2 nRF905的封装和引脚分布6.2工作模式nRF905有两种工作模式和两种节电模式。两种工作模式分别是ShockBurstTM接收模式和ShockBurstTM发送模式,两种节电模

30、式分别是掉电模式和待机模式。nRF905的工作模式由TRX_CE,TX_EN和PWR_UP三引脚决定,详见表6.2。表6.2 nRF905工作模式PWR_UPTRX_CETX_EN工作模式0XX掉电和SPI编程10X待机和SPI编程110接收111发射6.2.1 ShockBurstTM模式与射频数据包有关的高速信号处理都在nRF905片内进行,数据速率由微控制器配置的SPI接口决定,数据在微控制器中低速处理,但在nRF905中高速发送,因此中间有很长时间的空闲,这很有利于节能。由于nRF905工作于ShockBurstTM模式,因此使用低速的微控制器也能得到很高的射频数据发射速率。在Shoc

31、kBurstTM 接收模式下,当一个包含正确地址和数据的数据包被接收到后,地址匹配(AM)和数据准备好(DR)两引脚通知微控制器。在ShockBurstTM发送模式,nRF905自动产生字头和CRC校验码,当发送过程完成后,数据准备好引脚通知微处理器数据发射完毕。由以上分析可知,nRF905的 ShockBurstTM收发模式有利于节约存储器和微控制器资源,同时也减小了编写程序的时间。下面具体详细分析nRF905的发送流程和接收流程。典型的nRF905发送流程是【2】:(1) 当MCU要发送数据时,把接收机的地址和要发送的数据通过SPI总线送传给nRF905,在通信协议和器件配置时确定SPI接

32、口速率。(2) TRX_CE和TX_EN被MCU置高,ShockBurstTM发送模式被激发。(3) 在ShockBurstTM发送模式中,射频配置寄存器自动开启并完成以下动作:打包数据、发送数据包和当数据发送完成,数据准备好引脚DR被置高。(4) 置高AUTO_RETRAN,nRF905发送, TRX_CE变成低电平时停止。(5) 当TRX_CE变低时,完成nRF905发送过程,进入待机模式。典型的nRF905接收流程:(1) 当TRX_CE是高电平、TX_EN是低电平时,nRF905进入ShockBurstTM的接收模式。(2) 经过650us之后,不断监测nRF905,等待接收数据。(3

33、) 当同一频段的载波被nRF905检测到时,置高载波检测引脚CD。(4) 当一个相匹配的地址被接收到时,置高地址匹配引脚AM。(5) 当一个正确的数据包接收完毕,nRF905自动移去前导码、地址和CRC校验位,然后置高引脚DR。(6) MCU置TRX_CE为低电平时,nRF905进入待机模式。(7) MCU通过SPI口,以一定的速率把数据移到MCU内。(8) 当接收完所有的数据时,nRF905把引脚DR和地址匹配引脚AM置为低电平。(9) 此时nRF905可以进入ShockBurstTM接收模式、ShockBurstTM发送模式或掉电模式6.2.2节能模式nRF905的节能模式包括掉电模式和待

34、机模式。在掉电模式时,nRF905工作电流最小,为2.5A。待机模式有利于减小工作电流。从待机模式到发送模式或接收模式的启动时间较短。在待机模式时,nRF905内部的部分晶体振荡器处于工作状态。nRF905在待机模式下工作电流与外部晶体振荡器频率有关。6.3 nRF905的配置nRF905内部有若干寄存器,这些寄存器必须经过适当配置,才能使其正常工作。这些寄存器的配置字都是通过nRF905内部的SPI接口传送的。SPI接口的工作可通过SPI指令执行。只有当nRF905处于掉电或待机模式时,nRF905的SPI接口才可以进入工作状态。nRF905内部的SPI接口连接有5个寄存器,分别是状态寄存器

35、、射频配置寄存器、发送地址寄存器(TX_ADDRESS)、发送数据寄存器(TX_PAYLOAD)和接收数据寄存器(RX_PAYLOAD)。nRF905的SPI接口有一组指令用来对nRF905内部的各寄存器进行配置。只有在SPI的片选引脚CSN为低时,nRF905才能接收一条SPI指令,当引脚CSN发生由高到低的跳变时,nRF905才开始接收一条新的SPI指令。6.4 nRF905硬件电路在nRF905的使用中,根据不同要求,其电路图不尽相同,图6.4为50单端天线输出的应用原理图。该电路的输出,通过一个差分到单端的匹配网络连接到50的单端天线。在电路中,电感电容的值是使电路工作在433MHz的

36、数据。图6.4 nRF905应用电路图7系统的硬件结构7.1 nRF905无线收发模块PTR8000无线收发模块是一款以nRF905为核心的无线收发模块,体积小,使用方便。此模块通过一个14引脚的插针为用户提供一个方便的接口,各引脚功能如图7.1所示。此接口与单片机相连,组成使用的无线数传系统这些引脚功能分为3组。模式控制信号。PTR8000工作模式由TRX_CE,TX_EN,PWR_UP来设置。SPI接口信号。由SCK,MISO,MOSI和CSN信号线组成。在配置模式时,单片机通过SPI接口配置PTR8000的工作寄存器;在发射/接收模式下,单片机通过SPI接口发送和接收。状态输出信号。在发

37、送模式下,地址匹配(AM)和数据准备就绪(DR)信号通知单片机,一个有效地地址和数据包已经接收完成。在发送模式下,PTR8000自动产生前导码和CRC码,DR信号通知单片机数据传输已经完成。PTR8000中uCLK引线就是nRF905芯片中的引脚uPCLK时钟输出。图7.1 无线收发模块用户接口7.2系统的硬件电路图本系统由两套PTR8000无线收发模块组成。在发送的模块上增加了一片DS18B20数字温度传感器。由于nRF905工作电压在3V左右,所以加上AMS1117稳压芯片使模块输入电压稳定在3.3V。如图7.2所示。图7.2 发送部分电路原理图在接收的一套模块上增加了一片由MAX232组

38、成的RS232串口接口电路,通过此电路与上位机相连。图7.3为该部分原理图。图7.3 接收部分电路原理图8系统软件设计前几章完成了该系统的硬件设计,本章将在前几章硬件基础上完成相应的软件设计,实现系统功能。系统软件是在KEIL开发环境下采用C51语言编写,整个系统软件由初始化模块程序、温度采集、发送、接收程序、上位机显示程序等构成。8.1单片机编程两套模块中,一套用于温度采集,并将温度数据通过无线数传模块发送,另一套负责接收数据并通过串口将数据送入上位机处理。发送和接收部分的程序流程图分别如图8.1(a)和8.1(b)所示。nRF905初始化,配置射频寄存器DS18B20初始化读温度数据写发送

39、地址和数据发送数据完成?NOYESnRF905初始化,配置射频寄存器等待接收数据完成?发送数据给上位机NOYES(a)发送流程 (b)接收流程图8.1 系统工作流程图8.2上位机编程MSComm控件是Microsoft提供的ActiveX控件,目的是简化Windows下串行通信编程。提供两种处理通信方式,分别是事件驱动方式和查询方式。在串口通信过程中,当发送数据、收到数据或产生传输错误时,触发MSComm控件OnComm事件,然后通过判断CommEvent属性值获得事件类型,根据事件类型进行相应的数据处理。故用MSComm控件实现微机串口的数据通信相当简单【8】。接收部分的单片机通过串口测量数

40、据发给上位机,上位机使用VB编的应用程序来处理这些数据,同时将数据显示在上位机屏幕上供用户查看。VB应用程序界面如图8.2所示。图8.2 上位机VB程序界面程序主要包括四个部分,即温度曲线的显示、温度数值显示、统计计算和四个按钮处理程序。实验后的上位机显示数据如图8.3所示。图8.3 上位机实验显示9总结本文是大棚温度数据采集系统,核心的部分就是远程传输温度数据和实时显示温度变化。最后实验表明此设计能稳定、高效、直观的显示出温度数据和实时变化,而且使用起来简单方便。本设计中存在的不足是没有采取多点测量取得平均值的方法,单看一点的温度也许不会精确的显示大棚的温度的实际情况。在上位机显示温度实时变

41、化的曲线图不够完善,有待改进。基于射频收发器nRF905进行无线通信,实现近距离微控制器的无线组网,进行多个大棚温度数据采集、传输与显示,这些都是后序可以做的项目。本设计中,我不仅学习了DS18B20单总线器件的使用、远程传输模块的编程、上位机编程,同时设计了并实现了上述功能。本设计能较好的测量温度以及在上位机上显示温度变化和历史温度统计数据。这是我在大学里做的最重要的一个设计,多达几个月的思考、学习和制作,导师和同学的帮助都很大。这不仅使我学习到了硬件电路的设计,还学习了怎么样去调试系统和软件设计。这些都是我宝贵的经验和回忆。致谢此次毕业设计的制作,凝聚了我辛勤的汗水,也注入了老师和同学热情

42、的帮助和无私的奉献。首先,我要特别感谢我的指导老师赵波老师,感谢老师给予我的大力支持和帮助。从毕业设计的选题、资料的收集、参考书目的推荐到实物的调试和完成直到最后的论文定稿,赵老师总是循循善诱的给我指出不足并提出中肯的改善意见。整个毕业设计期间赵老师对我孜孜不倦的教诲和悉心指点,是毕业设计得以完成的重要因素之一,在此,谨向赵老师致以我深深的敬意。其次,我要感谢在设计当中给予我帮助的许多同学、朋友,特别是王雷和全体网络工作室组员,他们也倾注了很多的精力给予我真诚的帮助,在我遇到困难解决不了的时候,是他们给了我动力和信心,而且利用扎实的专业知识帮我解决了不少问题。在此,我要对他们表示最诚挚的谢意!

43、最后,我要感谢大学四年来教育我培养我关心我的老师们。在他们的教导和指引下,我度过了充实的难忘的四年大学生涯,这些都将成为我人生最宝贵的财富,在此我对所有的老师们致以最诚挚的谢意和最衷心的祝愿!衷心祝愿各位老师事业顺利,合家安康!各位同学学业有成,前程似锦!参考文献【1】马忠梅,等。单片机的C语言应用程序设计 北京:北京航空航天大学出版社,1999【2】唐继尧 51单片机工程应用实例 北京:北京航空航天大学出版社,2009【3】张友德 单片微型机原理、应用与实验 上海:复旦大学出版社2006【4】谭浩强 C语言程序设计 北京:清华大学出版社 1999【5】AT89C52 datasheet ,可

44、在中国电子资源网、集成电路资料下载【6】Dallas Semiconductor.DS18B20.pdf【7】Nordic Semiconductor.Nrf905.pdf【8】李江全 Visual Basic串口通信与测控应用技术实战详解 北京:人民邮电出版社 2007【9】求是科技 Visual C+、Visual Basic串并口开发技术工程应用实例导航 北京:人民邮电出版社2006【10】康华光 电子技术基础模拟部分(第五版)北京:高等教育出版社2006【11】康华光 电子技术基础数字部分(第五版)北京:高等教育出版社2006【12】马云峰 单片机与数字温度传感器DS18B20的接口设

45、计 计算机测量与控制.2002.10(4) 【13】刘海萍 基于DS18B20的温度采集系统设计 科教可沿 2009年第11期附录附录1 系统发送程序#include #include /_nop_()typedef unsigned char uchar;typedef unsigned int uint; /配置口定义/sbit TXEN = P15; /配置口定义sbit TRX_CE = P14;sbit PWR = P16; /SPI口定义/sbit MISO = P11;sbit MOSI = P32;sbit SCK = P10;sbit CSN = P31;/状态输出口/sbit CD = P17; sbit DR = P30;sbit AM = P12; sbit LED1 = P34;sbit LED2 = P35;sbit DQ =P27; /DS18B20接在P30/-

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
百度文库年卡

猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 研究报告 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服