ImageVerifierCode 换一换
格式:DOCX , 页数:47 ,大小:732.68KB ,
资源ID:6767661      下载积分:2 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6767661.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机的温度数据无线传输系统设计论学士学位论文.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机的温度数据无线传输系统设计论学士学位论文.docx

1、基于单片机的温度数据无线传输系统设计论学士学位论文毕业设计说明书基于单片机的温度数据无线传输系统设计专业自动化学生姓名班级自动化111学号指导教师完成日期2015年6月5日毕业设计说明书(毕业论文)独创性声明本人声明所呈交的毕业设计说明书(毕业论文)是本人在导师指导下进行的研究、设计工作后独立完成的。除了文中特别加以标注和致谢的地方外,说明书中不包含其他人己经发表或撰写过的研究成果。对本文的研究所做贡献集体和个人,均己在说明书中作了明确的说明并表示谢意。本人完全意识到本声明的法律后果由本人承担。毕业设计说明书(毕业论文)作者签名(手写): 日期: 年 月 日指导教师签名(手写):日期: 年 月

2、 日基于单片机的温度数据无线传输系统设计 摘 要:对以STC89C52RC单片机为控制核心的温度数据无线传输系统进行了设计。系统所要实现的功能分两部分完成。首先是发射模块,利用DS18B20温度传感器检测温度,将所检测到的温度数据以单总线的方式传输给单片机进行处理,处理后的数据通过四位数码管显示,再由NRF24L01点对点的将数据传送到系统的显示模块。其次是接收模块,利用NRF24L01接收数据,将接收到的温度数据传输给单片机处理,处理后的数据同样也是通过四位数码管显示。总体来说,系统实现的功能是实时的检测温度数据并无线传输给远端的装置同步显示数据。根据系统的主要功能,提出了设计方案并进行了论

3、证。设计包括硬件设计和软件设计两大部分。硬件部分包括单片机最小系统、电源转换电路、显示电路、发射模块电路、接收模块电路和温度检测电路六个部分。单片机选用STC公司的STC89C52RC,温度传感器用DS18B20,无线模块用NFR24L01,显示器用四位共阴极数码管,电源转换器用AMS1117-3.3。软件部分采用了模块化的设计方法,主要分为主程序、温度检测子程序、无线发射子程序、无线接收子程序、数码管显示子程序五部分。最后是系统的软硬件联调,使系统能够实现温度数据的采集与无线传输。关键词:单片机;温度检测;无线传输;数据显示 Design of temperature data wirele

4、ss transmission system based on MCU Abstract: The temperature data wireless transmission system based on STC89C52RC microcontroller is designed. System to realize the function of the two parts to complete. First transmitting module, the temperature sensor DS18B20 temperature detection, the detected

5、temperature data with single bus transmission to the microcontroller processing, after processing the data through four digital tube display, again by the NRF24L01 to point of the data are transmitted to the display module. Next is the receiving module, using NRF24L01 to receive data, the received t

6、emperature data is transmitted to the microcontroller processing, the data is also processed by four digital tube display. Overall, the function of the system is real-time detection of temperature data and wireless transmission to the remote device synchronization display data.According to the main

7、function of the system, the design scheme is presented and demonstrated. Design includes two parts of hardware design and software design. The hardware includes the smallest single-chip microcomputer, the power conversion circuit, the display circuit, the transmitter module, the receiving module and

8、 the temperature detection circuit in six parts. STC microcontroller STC89C52RC, temperature sensor with DS18B20, wireless module with NFR24L01, monitor with four cathode digital tube, power converter with AMS1117-3.3.The software part uses the modular design method, mainly divides into the main pro

9、gram, the temperature examination subroutine, the wireless transmit subroutine, the wireless receive subroutine, the digital tube display subroutine five parts. At last, the system can realize the temperature data collection and wireless transmission.Key Words: MCU; temperature detection; wireless t

10、ransmission; data display 基于单片机的温度数据无线传输系统设计1 概述1.1 课题来源及基本技术要求 随着现代社会的发展和生产需要,使用无线技术对温度进行实时的检测已经渗透到了生活的各个方面。在工厂或是一些特殊场合,由于工作环境极差,不允许工作人员长时间停留在现场工作。在这种情况下设备的温度情况就只能通过仪器测温来实现检测,使用这个方法时必然会涉及到一些技术问题,就是温度的检测与数据的传输问题。由于工业现场的空间往往会很大,需要检测的设备也会很多,那么问题就来了,传统的布线就会不太适用,容易造成资源的浪费维修困难,现场布线的线路复杂不容易操作。这时使用无线温度数据传输

11、技术能很好的解决这些问题,使用这个技术的核心就是温度数据的实时检测,以及无线数据的实时发送与接收。这也正是此次设计的核心技术要求,同时还需要一些辅助的功能来实现整个系统的功能,例如数码管显示技术,降压稳压技术,三极管放大信号技术等。1.2 主要内容系统是以单片机为控制核心,DS18B20为温度传感器,NRF24L01为无线模块的温度数据无线传输系统。系统可以迅速的,精准的对温度进行实时的检测与显示,发送与接收。系统满足以下要求:a.能够用DS18B20温度传感器完成对温度的自动检测,通过单总线的方式传输给单片机进行处理,由四位共阴极数码管显示; b.能用NRF24L01无线模块完成温度数据的发

12、送与接收; c.通过无线接收模块接收数据并在四位数码管上显示温度值(测温范围-10+85,精确到0.5)。1.3设计思路在设计系统时将系统分为两个部分:a.温度检测与显示及数据实时发送模块;这个模块由一个单片机最小系统,一个使用DS18B20的温度检测模块,一个使用四位共阴极数码管的显示模块,一个使用AMS1117-3.3的降压模块组成,在这个系统中每个部分都有着不同的作用,都不可缺少。b.实时温度数据接收及显示模块。与上个模块相比区别在于,这个模块少了一个温度检测模块,无线模块的功能不同,其他的都相同。设计整个系统时,首先,分析各部分的功能,确定每个部分所需要的器件,将所需要的器件都列举出来

13、。其次,根据每部分的功能设计出原理图,按照原理图购买所需要的器件进行焊接。最后,根据每部分的功能编写每部分的程序,进行实物的调试,在调试过程中将软件与硬件问题解决,完善程序。1.4 预期成果及其价值系统设计和调试完成后,预期能够实现以下功能:a.系统能够用DS18B20完成对温度的自动检测,实时传给单片机并在四位数码管上显示;b.单片机处理后的数据能够通过NRF24l01发送出去;c.当有数据发送后,无线接收模块能够自动接收数据通过单片机将温度数据在四位数码管上显示。系统在生产生活中可以得到广泛的应用,尤其在一些特殊地方,环境恶劣的场所,不适合人员长时间工作的生产现场,当需要实时的监测温度时就

14、可以使用该系统。在日常生活中,一些仓库之类的地方,需要实时的了解仓库内的温度,通过该系统也能简单的就实现了。总之,此系统具有很高的实用价值,可以节省人力资源,降低生产成本,代替人的一部分工作。2 设计方案选择2.1 总体设计方案系统分为发射模块和接收模块两个部分。发射模块的功能是在单片机的控制下实现温度数据的实时检测,通过四位数码管显示,再利用NRF24L01无线模块发送数据,设计框图如图2-1所示。接收模块的功能是当发射模块有数据发送时,通过NRF24L01无线模块接收数据,在四位数码管显示,设计框图如图2-2所示。两个部分的区别在于发射模块比接收模块多了温度检测的功能,在使用NRF24L0

15、1无线模块的功能上有区别。图2-1 发射模块设计框图此外两个模块都用到了AMS1117-3.3降压稳压器,作用是为两个模块的无线部分提供稳定的3.3V的电源。因为NRF24L01需要的电压为1.9V-3.6V,和单片机所需要的5V电源不同,所以必须重新提供电源。另外在两个模块的显示电路中,都用到9012三极管,起到放大信号的作用。原因是数码管使用的是动态扫描的方式进行显示,如果不使用9012三极管进行放大信号的话,数码管的亮度会不够,影响观测数据。图2-2 接收模块设计框图2.2 STC89C52RC与AT89C52单片机的选择STC89C52RC单片机出自于STC公司,AT89C52出自于A

16、T公司。两者都是一款拥有可编程存储器大小为8K的单片机,STC89C52RC单片机使用的内核是MCS-51经典内核,AT89C52兼容标准MCS-51指令系统。52单片机在51单片机的基础上做了许多的改进,拥有了51单片机不具有的一些功能,在可编程存储器的大小上多了4K。对于初学者52单片机相比51单片机要好用一些,因为可编程存储器大,不会出现存储不够的情况,在编程时就可以不用考虑程序的精简。AT公司和STC公司所生产的52单片机功能基本都相同,但相比于AT公司的AT89C52单片机,STC89C51RC具有价格便宜,下载程序相对容易的优点,结合以上分析单片机的选择是STC公司的52单片机。其

17、引脚功能如图2-3所示。图2-3 单片机的引脚图2.3 NRF24L01与NRF905的选择NRF24L01无线模块是在近期生产的一款无线模块,相比于以前一些较早使用的无线模块有着许多的优点。NRF24L01无线模块拥有四种工作模式,分别为发射模式、接收模式、空闲模式和掉电模式,通过配置寄存器来选择工作模式,在使用时NRF24L01的引脚可以和单片机的任何端口连接使用,但在编程控制时要注意。NRF24L01的引脚功能如表2-1所示。NRF24L01与NRF905相比较,在传输距离上NRF905优于NRF24L01,但在价格上NRF905比NRF24L01贵很多,并且在此次设计中不需要较远距离的

18、数据传输,如果用NRF905的话就会显得浪费。在使用中NRF24L01的电路比较简单,软件设计部分相对简单许多。结合以上分析无线模块选择NRF24L01。NRF24L01引脚功能如图2-4所示。表2-1 NRF24L01工作模式工作模式PWR_UPPRIM_RXCEFIFO寄存器状态接收模式111-发射模式101数据在TX_FIFO寄存器中发射模式1010停留在发送式,直至数据发送完待机模式2101TX_FIFO为空待机模式11-0无数据传输掉电0-图2-4 NRF24L01引脚图2.4 稳压器AMS1117的选择AMS1117属于正向的低压降压稳压器,固定输出版的AMS1117稳压器可按输出

19、电压进行分类,分为5.0V、3.3V、3.0V、2.85V、2.5V、1.8V、1.5V,每个版的AMS1117稳压器只能输出一种电压。由于系统中的无线模块的所需要的电源电压为3.3V,所以稳压器选择AMS1117-3.3作为无线模块的电源。AMS1117-3.3稳压器的实物如图2-5所示,其引脚功能从做到有分别为GND,Vout,Vint。图2-5 AMS1117-3.3稳压器的实物2.5 DS18B20与热敏电阻的选择传统的温度检测元件大多数是用热敏电阻为传感器,利用热敏电阻来检测温度。当用这种传统方法测量温度是会有很多的问题,这都源于热敏电阻不具有的可靠性,容易出现问题,而且测温的准确性

20、低,所测得的温度数据还必须通过特定的电路才能将数据转换成数字信号送给单片机处理。DS18B20引脚功能如图2-6所示。图2-6 DS18B20引脚图DS18B20温度传感器相比于传统的温度传感器具有很多优点。在对其进行封装后可以适用于许多不同的环境中,根据不同的需要可以相应的改变外观。在将封装后的DB18B20应用时,具有体积小,重量轻,形式多样,而且还不容易因为外力原因损坏的优点,可以适用于许多恶劣狭窄的环境中。由于DS18B20温度传感器直接与单片机进行单线通信,就一根数据线连接,电路简单,接线方便,而且DS18B20温度传感器的功能满足此次设计的所有要求。所以在温度传感器上选择了DS18

21、B20。2.6 LED四位数码管与LCD液晶屏的选择在LED数码管和LCD液晶屏的选择中我选择的是LED数码管,因为平时学习的就是数码管,对数码管的使用和编程熟悉,虽然在硬件电路的设计上LED数码管比LED液晶屏复杂多了,但在熟悉程度上还是对LED数码管比较熟悉。数码管如果按段数划分的话,可以分为七段和八段数码管,七段和八段的区别在于八段的数码管多了一个显示位,即为小数点位(dp),这个小数点使得数码管能更准确的将内容显示出来了。八段的数码管按能显示多少位数还可以分为1位、2位、3位、4位等一体的数码管,在这些问题上按需要进行选择。由于此次显示的内容需要有小数点所以选择了八段数码管,根据测温的

22、需求选择了四个一体的数码管。四位一体的数码管共用一组段选数据线,相比一个一体的电路简单,焊接容易,编程量小,所以选择了四个一体的八段数码管。实物如图2-7所示。图2-7 四位八段数码管实物图 3 系统硬件的设计3.1 单片机的最小系统电路设计以单片机为核心的系统,最小系统是一个必不可少的部分,它是维持单片机正常工作的基础。最小系统的电路又可分为晶振电路和复位电路两个部分,电路如图3-1所示。a.晶振电路,晶振电路决定着单片机的正常工作周期。这部分电路使用的是单片机的XTAL2(18脚)和XTAL1(19脚),在电路中电容的作用是对振荡频率起到微调,在电容大小的选择上是根据晶振频率的大小对应选择

23、的,一般6MHZ的晶振选择20pF的电容,12MHZ的晶振选择30pF的电容。b.复位电路,这部分电路的连接用的是单片机的的RST(9脚)引脚,作用是给单片机一个高电平,持续的时间大于两个机器周期,可以对单片机进行复位操作。复位单路的设计有好几种,在此次设计中,根据设计的需要我采用的是手动复位的方法。在复位电路的接法上我采用的是最常用的接法,只由电阻和电容组成,电阻的大小为1K和10K,电容的大小为10uF。图3-1 复位电路3.2 基于DS18B20的测温电路的设计温度检测电路如图3-2所示。DS18B20温度传感器是通过一根单数据线和单片机的I/O口进行通信。在此次的设计中采用的是P3.3

24、与传感器进行通信,通过单片机进行编程控制和数据处理。在这次的设计中利用DS18B20作为测温器件,使用编程控制来实现对温度的自动测量,将温度数据转换为数字量输出。图3-2 温度检测电路3.3 基于NRF24L01的无线发射模块与接收模块的设计NRF24L01无线模块是近期生产的一种新型射频收发模块,能够完成无线数据的发射与接收。我在此次设计中用到的是NRF24L01无线模块的发送与接收功能,来完成对单片机处理后的数据进行发送和接收同样来自NRF24L01无线模块发射的数据传送给单片机进行处理。在使用时NRF24L01无线模块输出的功率和无线通信的频段可以通过编程实现控制,此次设计中我用到了NR

25、F24L01无线模块的六个控制端和单片机通讯,分别是CE、SCK、MISO、MOSI、IRQ、CSN,通过在每个端口串联一个1K的电阻进行限流。NRF24L01无线模块的六个端口功能如下:CSN:片选信号端端,低电平有效;SCK:模块控制的时钟线;MISO:模块控制数据线;MOSI:模块控制数据线;IRQ:模块得中断信号; CE:模块的模式控制线。a.发射模块在此次设计中将NRF24L01作为发射模块时,各引脚CSN、MISO、IRQ、MOSI、SCK、CE,对应的接在单片机的 P1.0、P1.1、P1.2、P1.5、P1.6、P1.7。发射模块的电路如图3-3所示。图3-3 发射模块电路图b

26、.接收模块在此次设计中将NRF24L01作为接收模块时,各引脚CSN、MISO、IRQ、MOSI、SCK、CE,对应的接在单片机的 P1.0、P1.1、P1.2、P1.5、P1.6、P1.7。接收模块的电路如图3-4所示。图3-4 接收模块电路图3.4 AMS1117-3.3供电电路的设计AMS1117是一个正向低压降稳压器,本设计采用的是AMS1117-3.3,为无线发射模块和接收模块提供3.3V的电压。此系统另外还有两个电容共同构成,原理图和实物的引脚从左到右是对应的。电路如图3-5所示。图3-5 AMS1117-3.3稳压器供电电路3.5 S9012放大电路的设计系统中发射模块与接收模块

27、在这使用这部分电路时,作用是完全一样的,在硬件的焊接上也没有区别,所以就放在一起介绍。S9012三极管是一种非常普遍的三极管,在很多家用电器里都有用到,各种放大电路中也经常用到, S9012三极管的应用是很广泛的。系统在显示模块用的是动态扫描的方法,没有用任何锁存芯片,会导致数码管在显示温度值时出现亮度不够,无法观察的现象。为了解决这个问题,所以采用了S9012三极管放大信号的办法。在此次设计中选用了四个S9012三极管,它们的基极分别与单片机的P2.0、P2.2、P2.4、P2.6相连,发射极分别连接数码管的四个位选端SMG1、SMG2、SMG3、SMG4,集电极都接地, S9012三极管的

28、接法是根据数码管是共阴极来接的。电路如图3-6所示。图3-6 S9012放大电路3.6 四位共阴极数码管显示电路的设计这部分电路和S9012放大电路部分一样,发射模块与接收模块在使用这部分的作用都是完全一样的,在硬件电路上面没有区别,所以也放在一起介绍。电路如图3-7所示。在此次设计中选用的是四位共阴极数码管,这是一种非常普遍的数码管,四个数码管共用同一组段选数据线a、b、c、d、e、f、g及dp(小数点)。在使用时通过位选对其进行选通控制,四个位选端分别连接四个S9012三极管的发射极SMG1、SMG2、SMG3、SMG4,然后接地。四位数码管的八根段选数据线,按a、b、c、d、e、f、g及

29、dp的顺序分别连接单片机的P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7口,同时给每个段选端都串联一个470的限流电阻,然后给高电平。只有同时给位选端低电平,段选端高电平时数码管才能正常工作。图3-7 四位共阴极数码管显示电路4 系统软件的设计4.1 软件的总体设计a. 发射模块对于发送模块系统的设计是一个循环的系统,系统不停的重复着同样的工作。具体步骤如下,先定义NRF24L01无线模块的每个端口,配置NRF24L01无线模块的各种参数,进行NRF24L01无线模块的初始化。其次进行DS18B20温度传感器的设置,分为DS18B20温度传感器的复位函数,DS1

30、8B20温度传感器写入函数,再进行DS18B20温度传感器读函数。最后是单片机的读取温度,温度处理,主函数的调用每个子函数进行最后的处理,发送温度数据和显示温度数据。具体流程图如图4-1所示。图4-1 发射模块流程图b.接收模块对于接收模块系统的设计也是一个循环的系统,系统也是不停的重复着同样的工作。设计的总体步骤是这样的,首先还是定义无线模块NRF24L01的端口,初始化无线模块NRF24L01。其次进入循环模式判断状态寄存器是不是有接收到中断信号,如果寄存器确定有接收到中断信号,那就让程序从RX_FIFO buffer读出二进制形式的温度数据。最后由单片机将二进制数转换为十进制数,通过单片

31、机的P0口在四位数码管上显示,其流程图如图4-2所示。图4-2 接收模块流程图4.2 软件的分步设计a.DS18B20温度检测软件设计对于温度检测模块的软件设计中,使用DS18B20温度传感器来测温时必须严格遵守单总线协议,从而保证准确的通讯的数据。在单片机对其的控制中,利用时序来实现对DS18B20温度传感器写入和读出的操作,其中包括对DS18B20的初始化、写0、写1、读0,读1等控制。在对DS18B20复位以后,当接收到相对应的信号时,就会跳过读ROM中读序列号,然后开始对温度进行数据转换,等到数据转换完成后将数据保存。同样的方式重复执行,待系统停止工作后DS18B20温度传感才会停止工作,其流程图如图4-3所示。b.无线发射模块软件设计首先进行各端口的初始化操作,其中初始化内容分为配置单片机的IO口,使之和对应的NRF24L01无线模块端口正常通信,接着是相关寄存器的设置,最终要实现的就是NRF24L01无线模块和单片机按需要正常通信。其次就是通过SPI总线来控制NRF24L01无线模块需要的工作状态。当模块需要的是发射数据时,就要将NRF24L01无线模块的工作方式设置为发射方式,再将需要发射的温度数据目地址写入NRF24L01无线模块的缓冲区,等到程序延时后将数据发射出去,这里的地址包含了数据地址TXPLD和目标地址TXADDR。其流程图如图4

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1