《2021-2022收藏资料基于单片机和超声波模式的测距系统设计.doc》由会员分享,可在线阅读,更多相关《2021-2022收藏资料基于单片机和超声波模式的测距系统设计.doc(37页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、广西科技大学毕业设计基于单片机和超声波模式的测距系统设计摘要由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波进行测距往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在倒车雷达系统中得到广泛的应用。本超声波测距系统电路采用模块化设计,由超声波发射接收模块、LCD液晶显示模块、温度检测模块、报警模块等组成。通过软件的编程使硬件功能通过单片机的综合处理得到实现。程序有主程序、发射子程序、接收子程序、显示子程序等。该设计抗干扰能力较好,实时性良好,误差可以达到mm
2、级,可以有效地解决汽车倒车和对室内温度感知的问题。此课题采用STC89C52单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。通过单片机控制从而实现了倒车过程中汽车与障碍物之间的距离显示,当汽车与障碍物距离小于某个值时自动报警,本系统同时也拥有温度报警功能。通过按键设置最高最低温度值,当环境温度超过上限或者下限时,控制系统及时的报警等功能。关键词: 单片机STC89C522,超声波传感器测量距离,温度传感器,倒车雷达IAbstractBecause of ultrasonic directionality is strong, energy consumptio
3、n is slow, in the medium of communication distance, so often used for the measurement of ultrasonic distance, such as rangefinder and material level measurement instrument, etc can all through the ultrasonic to achieve. Use of ultrasonic detection tend to be quickly, convenient and simple calculatio
4、n, easy to do real-time control, and in the measurement precision can reach industry practical requirement, so in reverse radar system widely applied.The ultrasonic ranging system adopt modularization design circuit, by ultrasound receiving module, LCD display module, temperature detection module, a
5、larm module. Through the software programming make hardware function through comprehensive treatment of single chip achieved get. Program has main program, launch procedure, receiving a subroutine, display procedure, etc. This design anti-interference ability is good, good real-time performance, err
6、or can achieve mm level, can effectively solve the car back to indoor temperature and the problem of perception.The system through the STC89C52 single-chip microcomputer control so as to realize the back-draft process cars and obstacles of the distance between the shows, when cars and obstacle dista
7、nce to a value less than when the automatic alarm, this system also has the temperature alarm function. Through the button lowest highest temperature, when environment temperature more than cap or lower limit, control system timely alarm functions.Keywords:MCU STC89C52,ultrasonic distance sensor,tem
8、perature transmitter,Parking Distance ControlII目录摘要Abstract1. 绪论11.1课题背景及意义11.2超声波简介11.3课题的主要内容22. 系统的总体设计方案32.1超声波传感器测距原理32.2硬件子系统设计42.3软件子系统设计52.4超声波测距系统主要器件选定63硬件电路设计153.1 单片机最小系统153.2超声波发射电路设计163.3超声波接收电路设计163.4系统电源183.5 液晶显示电路183.6 键盘电路设计193.7温度检测电路设计193.8报警电路设计204. 超声波测距系统软件设计214.1 KeilVision3
9、简介214.2超声波测距计算方法214.3超声波测距主程序设计224.4超声波发射子程序254.5温度检测子程序254.6报警判断子程序264.7按键设置距离子程序265. 超声波测距系统调试及性能285.1 使用仪器设备285.2 调试中的问题及解决方案285.3 功能显示285.4 误差分析30总结31致谢32参考文献33附录34附录一:超声波测距系统原理图34附录二:实物图34 1. 绪论1.1课题背景及意义 随着社会的发展,传统的测距方法在很多场合无法满足人们的需求,而超声波测距是一种非接触式的检测方式,与其他方法相比,它不受光线、被测对象颜色等影响。对于处于黑暗、有灰尘、烟雾、电磁干
10、扰、有毒等恶劣的环境下被测物的测试有一定的适应能力。在液位测量、机械手控制、车辆自动导航、物体识别、倒车雷达、建筑工地以及一些工业现场等方面有广泛的应用,特别是在空气测距方面的应用。因空气声波较慢,其回波信号中包含的沿传播方向上的结构信息很容易检测出来,具有很高的分辨能力,因而其准确度也比其他方法更高,而且超声波传感器具有结构简单、体积小、信号处理可靠等特点。利用超声波检测迅速、方便、计算简单、易于做到实时控制。此外随着人们的生活水平的提高,汽车已经普及大部分工薪家庭,家庭式的拥有汽车已是非常普遍的事情,随着汽车的急速增多,停车位已经非常缺乏,从而导致车位空间越来越小,这就对驾驶员的驾驶技术提
11、出了更高的要求,因此需要一款比较先进而精密的仪器来辅助人们进行精确的倒车,从而在倒车仪器上提出了需求。此方案利用超声波射线可以和光线一样,能够反射、折射,也能聚焦,而且遵守几何光学上的定律。即超声波射线从一种物质表面反射时,入射角等于反射角等特性,设计此超声波测距系统从而更好的辅助人们精日常生活。此款超声波测距仪可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控也可用于液位、井深、管道长度的测量等场合本系统在倒车时不断地测量汽车尾部与其后面障碍物的距离,并随时显示其距离,在危险距离下及时报警提示。在不同的范围内,不同的温度下测出距离、实时温度,从而在距离或者温度警戒范围内发出警报信号,
12、以提高汽车倒车时的安全性和实时温度的感知。1.2超声波简介超声波是频率高于20000赫兹的声波,它方向性好,穿透能力强,易于获得较集中的声能,在水中传播距离远,可用于测距、测速、清洗、焊接、碎石、杀菌消毒等。在医学、军事、工业、农业上有很多的应用。超声波因其频率下限大约等于人的听觉上限而得名。科学家们将每秒钟振动的次数称为声音的频率,它的单位是赫兹(Hz)。我们人类耳朵能听到的声波频率为20Hz20000Hz。当声波的振动频率小于20Hz或大于20KHz时,我们便听不见了。因此,我们把频率高于20000赫兹的声波称为“超声波”。通常用于医学诊断的超声波频率为1兆赫兹5兆赫兹。声波是物体机械振动
13、状态(或能量)的传播形式。所谓振动是指物质的质点在其平衡位置附近进行的往返运动形式。譬如,鼓面经敲击后,它就上下振动,这种振动状态通过空气媒质向四面八方传播,这便是声波。超声波是指振动频率大于20000Hz以上的,其每秒的振动次数(频率)甚高,超出了人耳听觉的一般上限(20000Hz),人们将这种听不见的声波叫做超声波。超声和可闻声本质上是一致的,它们的共同点都是一种机械振动模式,通常以纵波的方式在弹性介质内会传播,是一种能量的传播形式,其不同点是超声波频率高,波长短,在一定距离内沿直线传播具有良好的束射性和方向性,目前超声成象所用的频率范围在 2-5MHz之间,常用为3-3.5MHz(每秒振
14、动1次为1Hz,1MHz=106Hz,即每秒振动100万次,可闻波的频率在1620,000HZ 之间)。1.3课题的主要内容本设计主要研究基于单片机的超声波测距系统,通过超声波模块进行对汽车与障碍物之间的测距,从而在LCD液晶显示屏上显示,当汽车与障碍物距离小于预设距离是实行报警;此外还通过温度传感模块时刻显示驾驶室内温度,同时通过预设最高最低温度,当室内温度达到上限或者下限时实行报警。 2. 系统的总体设计方案超声波测距系统,实现显示汽车与障碍物之间的距离,从而成功的实行倒车,同时也可以通过模块上的温度显示从从而更好的判断需不需要开设空调。2.1超声波传感器测距原理超声波是指频率高于20KH
15、z的机械波。为了以超声波作为检测手段,必须产生超生波和接收超声波。完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器是利用压电效应的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。 超声波测距的原理一般采用渡越时间法TOF(timeofflight)。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的声源与障碍物之间的距离 。由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较
16、远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制。 人们已经设计和制成了许多超声波发生器。总体上讲,超声波发生器可以分为两大类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。电气方式包括压电型、磁致伸缩型和电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同。目前较为常用的是压电式超声波发生器。压电式超声波发生器实际上是利用压电晶体的谐振来工作的。超声波发生器有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的
17、固有振荡频率时,压电晶片将会发生共振,并带动共振板振动,便产生超声波。反之,如果两电极间未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收器了。超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340*t/2。这就是所谓的时间差测距法。超声波测距的原理是利用超声波在空气中的传播速度为已知,测量声波在发射后遇到障碍物反射回来的时间,根据发射
18、和接收的时间差计算出发射点到障碍物的实际距离。由此可见,超声波测距原理与雷达原理是一样的。测距的公式表示为:L=C*T式中L为测量的距离长度;C为超声波在空气中的传播速度;T为测量距离传播的时间差(T为发射到接收时间数值的一半)。超声波测距主要应用于倒车提醒、建筑工地、工业现场等的距离测量,由于超声波易于定向发射、方向性好、强度易控制、与被测量物体不需要直接接触的优点,是作为液体高度测量的理想手段,通过分析超声波测距误差产生的原因,提高测量时间差到微秒级,以及用DS18B20温度传感器进行声波传播速度的补偿后,设计的高精度超声波测距仪能达到毫米级的测量精度。2.2硬件子系统设计根据设计要求并综
19、合各方面因素,本超声波测距系统由超声波发射、回波信号接收、温度测量、显示和报警、电源等硬件电路部分及相关的软件部分构成。系统原理框图如图2.1所示:图2.1 系统总体原理图由单片机STC89C52编程产生3US以上的高电平,由P3.1口输出,就可以接收口P3.2(Echo引脚)等待高电平输出。一旦有高电平出处,及在模块中经过放大电路,驱动超声波发射探头发射超声波。发射出去的超声波经过障碍物反射回来后,由超声波接收头接收到信号 ,通过接收电路的检波放大、积分整形及一系列处理,接收口P3.2口即变成低电平,读取单片机中定时器的值。单片机利用超声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障
20、碍物的距离,并由单片机控制显示出来。该测距装置是由超声波模块、单片机、和LCD显示电路组成。传感器输入端与发射就接收电路组成超声波模块,模块的输出输入端与单片机相连接,单片机的输出端与显示电路输入端相连。其时序图如图2.2所示:图2.2 时序图超声波测距模块的发射端在T0时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序,定时器停止计数。计算时差,即可得到超声波在媒介中传播的时间t,由此便可计算出距离。2.3软件子系统设计在选择好硬件方案后,接下来就是根据系统的要求设计软件了。本系统主要分成两大部分:一部分是超声波测距部分 ,另一部分是温度传感部
21、分。本系统采用C语言编程,C语言具有语言简洁、可移植性好、表达能力强、灵活性高、可进行结构化设计、可以直接控制计算机硬件、生成代码质量高、使用方便、有利于实现较复杂的算法等诸多优点,所以控制程序采用C语言编程。编译器采用Keil uVision3。该编译器是51系列单片机程序设计的常用工具,既可使用C语言,也支持汇编编译,同时具有完善的调试功能。系统具体流程主要有以下几部分:第一部分:系统初始化,配置DS18B20、LCD、定时器等;第二部分:启动定时器设定定时时间,开中断,发送超声波脉冲,然后判断是否接收到标志位1,若接收到则调用温度子、程序补偿声速,若未接收到标志位1,则溢出显示屏显示为0
22、,启动蜂鸣器报警程序进行报警。第三部分:调用测距子程序,将得到的数据与预设的最下距离进行对比,若小于预设距离则启动蜂鸣器进行报警,流程图如图2.3所示:图2.3 主机流程图2.4超声波测距系统主要器件选定本超声波测距系统器件主要由:STC89C52、超声波发射接收模块、LCD1602显示 模块、DS18B20温度传感器、有源蜂鸣器等组成。2.4.1微控制器STC89C52作为普通51单片机已与广泛应用于各种产品中,其接口简单,方便使用,且功能强大,因此本系统采用STC89C52单片机作为主控制芯片。该单片机采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相
23、兼容。(1)具有12时钟/机器周期和6时钟/机器周期两种工作方式供开发者选择。(2)3.4V到5.5V的宽幅工作电压。(3)多达63KB的用户应用程序存储空间。(4)片内集成了1280字节的RAM(其中1024是片内扩展的外部RAM,扩展的RAM在汇编语言中用MOVX来访问,在C语言中将数据定义为xdata存储模式来访问)。(5)具有ISP(在系统可编程)/IAP(在应用可编程)功能,并且不需特殊的编程器,通过串口(P3.0、P3.1)便可直接下载用户程序,为调试软件时提供了便利。(6)程序存储器和数据存储器可寻址空间范围都为64KB。(7)内部集成了MAX810专用集成复位电路,在外部晶体2
24、0MHz时,可省去外部复位电路。(8)3个16位定时/计数器:T0、T1、T2。T0和T2的功能与传统8051完全相同,T2是一个16位的定时/计数器,由T2CON控制。T2既能作为外部时钟计数器又能作为内部定时器,取决于T2CON的CT2位配置情况。(9)具有2路外部中断,可设置为低电平或下降沿触发。(10)具有一个全双工串行通讯口。(11)具有6个中断源和4级中断优先级。2.4.2超声波模块简介(1)概述此超声波测距模块可实现2cm-2.5m的非接触测距功能,使用DC5V电压输入,静态功耗低于10mA,自带温度传感器对测距结果进行校正,同时具有GPIO,串口等多种通信方式,内带看门狗,工作
25、稳定可靠。(2)主要技术参数表2-1 超声波模块各种参数电气参数超声波测距模块工作电压DC 2.4V5.5V静态电流2mA工作温度-20+70度输出方式电平或UART感应角度小于15度探测距离2cm-250cm探测精度0.3cm+1%串口配置波特率9600,起始位1位,停止位1位,数据位8位,无奇偶校验,无流控制。(3)本模块实物图本模块如图2.4和图2.5所示: 图2.4 超声波模块正面图 图2.5 超声波模块背面图2.4.3 LCD1602液晶显示模块简介2.4.3.1 特点如下: (1)显示质量高由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器
26、(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。(2)数字式接口液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。(3)体积小、重量轻液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻得多。(4)功耗低相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。2.4.3.2 显示特点简介:(1)液晶显示原理液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩
27、色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。(2)液晶显示器的分类液晶显示的分类方法有很多种,通常可按其显示方式分为段式、字符式、点阵式等。除了黑白显示外,液晶显示器还有多灰度有彩色显示等。如果根据驱动方式来分,可以分为静态驱动(Static)、单纯矩阵驱动(Simple Matrix)和主动矩阵驱动(Active Matrix)三种。(3)液晶显示器各种图形的显示原理:线段的显示点阵图形式液晶由MN个显示单元组成,假设LCD显示屏有64行,每行有128列,每8列对应1字节的8位,即每行由16字节,共168=128个点组成,屏上6416个显示单元与显
28、示RAM区1024字节相对应,每一字节的内容和显示屏上相应位置的亮暗对应。例如屏的第一行的亮暗由RAM区的000H00FH的16字节的内容决定,当(000H)=FFH时,则屏幕的左上角显示一条短亮线,长度为8个点;当(3FFH)=FFH时,则屏幕的右下角显示一条短亮线;当(000H)=FFH,(001H)=00H,(002H)=00H,(00EH)=00H,(00FH)=00H时,则在屏幕的顶部显示一条由8段亮线和8条暗线组成的虚线。这就是LCD显示的基本原理。字符的显示用LCD显示一个字符时比较复杂,因为一个字符由68或88点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,
29、还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。这样一来就组成某个字符。但由于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。汉字的显示汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码(一般用字模提取软件),每个汉字占32B,分左右两半,各占16B,左边为1、3、5右边为2、4、6根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字
30、节,换行按列对齐,送第三个字节直到32B显示完就可以LCD上得到一个完整汉字。模块实物如图2.6、图2.7所示: 图2.6 1602显示模块正面图 图2.7 1602显示模块背面图2.4.3.3 LCD1602的基本参数及引脚功能:LCD1602采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表2-2所示:表2-2 1602显示模块一脚说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据
31、16BLK背光源负极表2-2:引脚接口说明表第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
32、第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。2.4.3.4 LCD1602的指令说明及时序1602液晶模块内部的控制器共有11条控制指令,如表2-3所示:表2-3 控制命令表序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CG
33、RAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪
34、烁,低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。与HD44780相兼容的芯片时序表如表2-4所示:表2-4 基本操作时序表读状态输入RS=L,R/W=H,E=H输出D0
35、D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0D7=数据,E=高脉冲输出无读写操作时序如图2.8和图2.9所示:图2.8 读操作时序图图2.9 写操作时序图2.4.3.5 1602LCD的RAM地址映射及标准字库表液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,图2.10是1602的内部显示地址。图2.10 1602LCD内部显示地址2.4.4 D
36、S18B20温度传感器简介DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。2.4.4.1 DS18B20的主要特性(1)适应电压范围更宽,电压范围:3.05.5V,在寄生电源方式下可由数 据线供电(2)独特的单线接口方式,DS18B2
37、0在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯(3)DS18B20支持多点组网功能,多个DS18B20可以并联在唯一的三线上,实现组网多点测温(4)DS18B20在使用中不需要任何外围元件,全部传感元件及转换电路集成在形如一只三极管的集成电路内(5)温范围55+125,在-10+85时精度为0.5(6)可编程的分辨率为912位,对应的可分辨温度分别为0.5、0.25、0.125和0.0625,可实现高精度测温(7)在9位分辨率时最多在 93.75ms内把温度转换为数字,12位分辨率时最多在750ms内把温度值转换为数字,速度更快(8)测量结果直接输出数字温度信号,
38、以一 线总线串行传送给CPU,同时可传送CRC校验码,具有极强的抗干扰纠错能力(9)负压特性:电源极性接反时,芯片不会因发热而烧毁, 但不能正常工作。2.4.4.2 DS18B20的外形和内部结构DS18B20内部结构主要由四部分组成:64位光刻ROM 、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的外形及管脚排列如图2.11所示:图2.11 DS18B20外形及管脚DS18B20温度值格式:这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到
39、实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际 温度。 例如+125的数字输出为07D0H,+25.0625的数字输出为0191H,-25.0625的数字输出为FE6FH,-55的数字输出为FC90H 。温度值格式表如表2-5所示: 表2-5 DS18B20温度值格式表3硬件电路设计3.1 单片机最小系统单片机系统的设计一般都是在最小系统的基础上扩展而来的。所谓最小系统,是指一个单片机真正能运行的最小配置系统。对于片内集成有程序存储器和数据存储器的51单片机只要接上电源、复位电路、晶振和电容就构了可以稳定运行的最小系统。如图3.1所示:图3.1 最小
40、系统电路本设计采用宏晶科技的STC89C52单片机,内部集成了数据存储器RAM和程序存储器Flash,接上电源、晶振等就可以构成最小系统。最小系统除MCU外,还包括一下几部分:(1)时钟部分,此部分由晶振和电容C1、C2构成,单片机的时钟电路采用内部振荡方式,将引脚XTALl和XTAL2间跨接晶体振荡器和微调电容,与芯片内部振荡器构成稳定的自激振荡器。电容器Cl和C2主要作用是辅助振荡器起振,且其大小对振荡频率有微调作用,典型值30pF;振荡频率主要由石英晶振频率决定。目前5l系列单片机晶振频率范围是1.2MHz-60MHz,典型值为6MHz、12MHz、20MHz、110592MHz、24M
41、Hz、32 MHz、40MHz等。本设计晶振选用12MHz。(2)复位电路部分,此部分由电阻R5、R4、轻触开关、电容C3构成。如图3.2所示:图3.2 复位电路此外由于STC89C52的P0口为漏极输出,所以用作输出时必须外部加上拉电阻,在设计中采用排阻代替分立电阻。3.2超声波发射电路设计超声波发射电路采用单片机软件编程产生40KHz的方波脉冲信号,通过单片机输出引脚P3.1将方波送至驱动电路,经驱动电路驱动后推动超声波传感器产生40KHz超声波。驱动电路是由两个三极管组成的互补功率放大电路组成。如下图3.3所示:图3.3 发射模块电路在超声波电路里,电阻R14和电容C4串联后接入输入信号
42、,由电阻R11输出信号。在脉冲数字电路中,因RC与脉宽tw的关系不同而区分微分电路和耦合电路。只要脉冲宽度tw(5-10)RC,在tw时间内,电容C已完成充电或放电(约需3RC),输出端就能输出正负尖脉冲,才能成为微分电路。因而,电路的充电时间常数RC必须满足RC(0.2-0.1) tw,这是微分电路的必要条件。3.3超声波接收电路设计超声波接收电路采用SONY公司的CX20106A集成电路,对接收探头接收到的信号进行放大、滤波。它是一款红外线检波接收的专用芯片,有较强的抗干扰性和灵敏度。常用于电视机红外遥控接收器。可以利用它作为超声波检测电路。实验证明其具有很高的灵敏度和较强的抗干扰能力。适
43、当改变C4的大小,可改变接受电路的灵敏度和抗干扰能力。使用CX20106A集成电路对接收探头受到的信号进行放大、滤波。其总放大增益80db。以下是CX20106A的引脚注释。1脚:超声信号输入端,该脚的输入阻抗约为40k。2脚:该脚与地之间连接RC串联网络,它们是负反馈串联网络的一个组成部分,改变它们的数值能改变前置放大器的增益和频率特性。增大电阻R1或减小C1,将使负反馈量增大,放大倍数下降,反之则放大倍数增大。但C1的改变会影响到频率特性,一般在实际使用中不必改动,推荐选用参数为R1=4.7,C1=1F。3脚:该脚与地之间连接检波电容,电容量大为平均值检波,瞬间相应灵敏度低;若容量小,则为
44、峰值检波,瞬间相应灵敏度高,但检波输出的脉冲宽度变动大,易造成误动作,推荐参数为3.3f。4脚:接地端。5脚:该脚与电源间接入一个电阻,用以设置带通滤波器的中心频率f0,阻值越大,中心频率越低。例如,取R=200k时,f042kHz,若取R=220k,则中心频率f038kHz。6脚: 该脚与地之间接一个积分电容,标准值为330pF,如果该电容取得太大,会使探测距离变短。7脚:遥控命令输出端,它是集电极开路输出方式,因此该引脚必须接上一个上拉电阻到电源端,推荐阻值为22k,没有接受信号是该端输出为高电平,有信号时则产生下降。8脚:电源正极,4.55V。超声波接收电路如图3.4所示:图3.4 接收
45、模块电路:超声波模块接法:VCC 模块正极,接5V电源正极;GND 模块地线,接5V电源负极;RX 超声波接收脚,在没有接收到超声波时为高电平,接收到超声波后变低电平,本脚一般接具有中断功能的引脚。TX 超声波发射脚,发送40KHZ频率的方波,本脚由单片机控制,由单片机发送40KHZ的方波来发送超声波。3.4系统电源系统电源使用的是5V稳压输入,工作电压为3.3V5.5V(4.2V为最佳)。电路如图3.5所示:图3.5 电源电路其中在4引脚接上一LED指示灯作判断电源是否正常工作用,R3电阻起保护电路的作用。3.5 液晶显示电路(1)LCD液晶显示电路采用LCD1602液晶显示模块,它可以显示2行*16个字符,完全可以满足我的设计要求。它独有的蓝色背光电路可以在环境光线较弱的条件下应用,显示清晰,颜色靓丽,价格便宜的特点,是很好的显示设备。同时,还能够根据情况来调节显示的亮度。由于本系统可以不用显示汉字,介于设计成本上的需要,我采用了这个显示方案。电路图如图3.6所示:图3.6 液晶显示电路(2)液晶显示电路部分,此部分由液晶屏、电位器构成。1602采用标准的16脚接口,其中:第1脚:VSS为地电源第2脚:VDD接5V正电源第3脚:V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通