利用超声波传感器测量液位高度.doc

上传人:知****量 文档编号:91611052 上传时间:2023-05-27 格式:DOC 页数:30 大小:470KB
返回 下载 相关 举报
利用超声波传感器测量液位高度.doc_第1页
第1页 / 共30页
利用超声波传感器测量液位高度.doc_第2页
第2页 / 共30页
点击查看更多>>
资源描述

《利用超声波传感器测量液位高度.doc》由会员分享,可在线阅读,更多相关《利用超声波传感器测量液位高度.doc(30页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、. .本科生毕业设计论文题目:利用超声波传感器测量液位高度The Design of Using Ultrasonic Sensor Measure The Liquid Level Altitude院系名称:学生XX:学生学号:专业:指导教师:完成时间:. .word. .声明本人X重声明:所呈交的毕业设计论文是本人在指导教师指导下进展的研究工作及取得的研究成果。其中除加以标注和致谢的地方,以及法律规定允许的之外,不包含其他人已经发表或撰写完成并以某种方式公开过的研究成果,也不包含为获得其他教育机构的学位或证书而作的材料。其他同志对本研究所做的任何奉献均已在文中作了明确的说明并表示谢意。本毕

2、业设计论文成果是本人在XX师X大学读书期间在指导教师指导下取得的,成果归XX师X大学所有。特此声明。声明人毕业设计论文作者学号:声明人毕业设计论文作者签名:签名日期:年月日. .word. .摘要随着现代科学技术的开展,人们逐渐了解到,超声波的穿透力很强不易损坏物体,而且它在两万赫兹以上,不会影响到人们的正常工作,并且他的传播速度快。由于超声波具有这样大的优点,所以人们对超声波的利用率越来也高。从大到工业体系的探伤,小到测距和金属外表清尘,超声波几乎无处不在的伴随我们的生活。本设计是以AT89S52单片机为核心的低本钱、高精度、微型化数字显示超声波测距仪。整个电路采用模块化设计,由单片机控制模

3、块,超声波发射模块,超声波接收模块和数据显示模块组成。软件局部由主程序、预置子程序、发射子程序、接收子程序、显示子程序组成。各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。在此根底上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。相关局部附有硬件电路图、程序流程图。关键词:AT89S52;超声波;测距. .word. .AbstractWith the development of modern science and technology, people gradually understanding that the ultrasonic wave penetra

4、ting power is very strong .The ultrasonic wave is not easy to damage the object,morover it above 20KHZ and affect peoples nomal work. So the using of Ultrasonic wave is more and more frequent. From the large scale flaw detection of the industrial system to the measuring distance and clearing of the

5、metal surface , the ultrasonic wave is useful in our every daily life .The ultrasonic distance measurer design with digital display functional module used AT89C52 MCU as the core ponent,of which carries the characteristics with low-cost,high-precision and microminiaturization.The whole circuit used

6、modular design,it includes the MCU control module,ultrasonic transmit module,ultrasonic receive module and the Data display module.In the software design part,it contains the main program,the presets subroutine,the launch subroutine,the receiving subroutine and the display subroutine.Through the pre

7、hensive analysis processing of the AT89C51 MCU, The signal of each detector can realizing the functions of ultrasonic measure.Based on these,designed the overall scheme of the system.On the finally,through the hardware and software realize the whole modules.And the relevant parts have the hardware c

8、ircuit diagrams and program flow charts on the appendix.Key words:AT89S52;Silent Wave;Measure Distance. .word. .目录摘要IABSTRACTII1 引言12 课题设计的任务和要求13 课程的方案设计与论证23.1 系统整体方案的设计23.1.1 设计方案一23.1.2 设计方案二33.1.3 方案比拟以及论证53.2 系统整体方案的论证54 系统的硬件构造设计64.1 各芯片功能特点简介74.1.1 52系列单片机的功能特点74.1.2 CX20216简介及其调试84.1.3 74ls

9、573管脚及功能特点94.2 测距原理及框图104.2.1 超声波测距的原理104.2.2超声波测距仪原理框图104.3 超声波发射电路114.4 超声波检测接收电路114.5 数据显示局部电路124.6 超声波测距系统的硬件电路设计135 系统的软件编程设计145.1 超声波测距仪的算法设计145.2主程序流程图145.3 超声波发生子程序和超声波接收中断程序165.4 系统的软硬件调试176完毕语18参考文献19附录一:超声波测距电路原理图20附录二:程序清单211 引言在科学技术日新月异开展的今天,许多场合开场引进电子设备做为辅助检测,针对诸多行业储液罐液位测量的特点和技术要求,设计一种

10、基于超声波传感器的液位高度测量系统。超声波是由机械振动产生的,可在不同介质中以不同的速度传播,由于超声波具有定向性好,能量集中,在传输过程中衰减小,反射能力较强等特点,超声波传感器可广泛应用于非接触式检测法,不受光线,被测物颜色等的影响,它不仅能够定点和连续测液位,而且能方便地提供遥测或遥控所需的信号。与其他侧位技术相比拟,它不需要特别防护,安装维修较方便,而且构造方法都较简单,价格低廉。在超声波液位测量技术中,应用最广泛是超声波脉冲回波方法,由发射传感器发出超声波脉冲,传到液面经反射后返回接收传感器,测出超声波脉冲从发射到承受所需的时间,根据媒介中的声速,就能得到从传感器到液面之间的距离,从

11、而确定液位高度。2 课题设计的任务和要求设计一个超声波测距仪,任务:(1).了解超声波测距原理。(2).根据超声波测距原理,设计超声波测距器的硬件构造电路。设计一个超声波测距仪,要求:(1).设计出超声波测距仪的硬件构造电路。(2).对设计的电路进展分析能够产生超声波,实现超声波的发送与接收,从而实现利用超声波方法测量物体间的距离,并且,测距X围在20cm-2m之间,测量精度控制在3mm以内。 (3).对设计的电路进展分析。 (4).以数字的形式显示测量距离。3 课程的方案设计与论证3.1 系统整体方案的设计由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量

12、。利用超声波检测距离,设计比拟方便,计算处理也较简单,并且在测量精度方面也能到达农业生产等自动化的使用要求。超声波发生器可以分为两大类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。电气方式包括压电型、电动型等;机械方式有加尔统笛、液哨和气流旋笛等。它们所产生的超声波的频率、功率、和声波特性各不一样,因而用途也各不一样。目前在近距离测量方面常用的是压电式超声波换能器。根据设计要求并综合各方面因素,本文采用AT89S52单片机作为控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器。3.1.1 设计方案一发射局部通过NE555振荡器设计出振荡电路,产生40KH的脉冲在

13、通过CD4069的驱动作用于超声波发射探头上如图3-1。接收局部将超声波探头接收到的正弦40KH超声波信号其VPP为50mV通过LM324运放三级放大以及整形以后产生VPP为3.5V的梯形波信号,用锁相环电路进展检波处理后,启动单片机中断程序如图3-21。图3-1 555超声波发射电路原理图图3-2 324超声波接收电路原理图3.1.2 设计方案二发射局部通过单片机发射40KH的脉冲,在经过4069非门,在经过4011与非门的驱动作用于超声波发射探头上如图3-3、如图3-42。接收局部将超声波承受探头接收到的信号通过CX20216整形和滤波以后再CX20216的7脚输出一个40KH的脉冲,在单

14、片机的P3.2处产生一个下降沿如图3-5。图3-3 超声波发射电路原理图1图3-4 超声波发射电路原理图2图3-5超声波接收电路原理图3.1.3 方案比拟以及论证通过方案一和方案二的比拟我们可以发现,在方案一中的发射电路中,我们可以用NE555振荡产生40KH的方波信号,它是基于硬件的根底上,便于我们可以通过示波器观察到40KH的方波,具有直观且易于观察的特点,有利于电路的检测。在方案二中,我们可以通过单片机产生40KH的脉冲信号,在通过CD4069或者74LS04驱动,将40KH的脉冲信号发射出去,由于是软件控制,准确度比拟高。经过比拟我们发现,在发射电路中方案一的设计是比拟经济实惠而且比拟

15、方便,但方案二中的软件设计使发射超声波时间比拟容易控制,而且超声波的频率准确度比拟高,本设计要求测量精度在3mm以内,所以我们选择方案二来产生超声波。在接收电路中我们发现,在方案一中我们通过LM324三级放大,再通过LM567检波电路,此电路调试比拟复杂,在做三级放大时,放大倍数不容易控制,在输出波形上会发生小幅度的偏移。在方案二中我们通过采用CX20216可以将信号进展放大和整形处理,在CX20216的5脚和7脚串联一个200K的电阻可以将频率稳定在40KH。因此在本次设计中,我们选用的是方案二,以提高测量结果的准确度,并且在整个系统中我们都会采用单片机做计算和显示。3.2 系统整体方案的论

16、证超声波测距的原理是利用超声波的发射和承受,根据超声波传播的时间来计算出传播距离。实用的测距方法有两种,一种是在被测距离的两端,一端发射,另一端接收的直接波方式,适用于身高计;一种是发射波被物体反射回来后接收的反射波方式,适用于测距仪。此次设计采用反射波方式3。测距仪的分辨率取决于对超声波传感器的选择。超声波传感器是一种采用压电效应的传感器,常用的材料是压电陶瓷。由于超声波在空气中传播时会有相当的衰减,衰减的程度与频率的上下成正比;而频率高分辨率也高,故短距离测量时应选择频率高的传感器,而长距离的测量时应用低频率的传感器,在本设计中我们采用40KHZ的传感器。4 系统的硬件构造设计超声波测距仪

17、硬件电路的设计主要包括单片机系统及显示电路、超声波发射电路和超声波检测接收电路三局部。单片机采用AT89S52,采用12MHz高精度的晶振,以获得较稳定时钟频率,减小测量误差。单片机用P1.0端口输出超声波发射器所需的40kHz的方波信号,利用外中断0口监测超声波接收电路输出的返回信号。显示电路采用简单实用的四位共阴LED动态扫描显示。超声波发射电路主要由74LS00和超声波发射器T-40构成,单片机P1.0端口输出的40kHz的方波信号一路经一级与非门后送到超声波发射器的一个电极,另一路经两级与非门后送到超声波发射器的另一个电极,用这种推换形式将方波信号加到超声波换能器的两端,可以提高超声波

18、的发射强度。压电式超声波换能器是利用压电晶体的谐振来工作的。超声波换能器内部有两个压电晶片和一个换能板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片会发生共振,并带动共振板振动产生超声波,这时它就是一个超声波发生器;反之,如果两电极问未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收换能器。超声波检测接收电路主要是由集成电路CX20216A组成,它是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38 kHz与测距的超声波频率40 kHz较为接近,可以利用它制作超声波检测接收电路。

19、实验证明用CX20216A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力。4.1 各芯片功能特点简介4.1.1 52系列单片机的功能特点At89s52 是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。使用Atmel 公司高密度非 易失性存储器技术制造,与工业80C51 产品指令和引脚完 全兼容。片上Flash允许程序存储器在系统可编程,亦适于 常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统 可编程Flash,使得AT89S52为众多嵌入式控制应用系统提 供高灵活、超有效的解决方案。该系列单片机引脚与封装如图4-1所示。图4-

20、1 51单片机系列封装图AT89S52具有以下标准功能: 8k字节Flash,256字节RAM, 32 位I/O 口线,看门狗定时器,2个数据指针,三个16 位 定时器/计数器,一个6向量2级中断构造,全双工串行口, 片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停顿工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结, 单片机一切工作停顿,直到下一个中断或硬件复位为止。8 位微控制器 8K 字节在系统可编程 Flash AT89S52引脚P0 口:P0口是一个8位漏极开路的

21、双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入4。4.1.2 CX20216简介及其调试其内部构造图如图4-2中,CX20216的总放大增益约为80dB,以确保其7脚输出的控制脉冲序列信号幅3.5-5VX围内。总增益大小由2脚外接的R1, C1决定,R1越小或C越大,增益越高。C1取值过大时将造成频率响应变差,通常取为luf,C2为检波电容,一般取3.3UF, CX20216采用峰值检波方式,当C2容量较大时将变成乎均值检波,瞬态响应灵敏度会变低,C2较小时虽然仍为峰值检波,且瞬态响应灵敏度很高,但检波输出脉冲宽度会发生较大变动,容易造成解调出

22、错而产生误操作。R2为带通滤波器中心频率f0的外部电阻,改变R2阻值,可改变载波信号的承受频率,当f0偏离载波频率时,放大增益会显著下降,C3为积分电容,一般取330PF,取值过大,虽然可使抗干扰能力增强,但也会使输出编码脉冲的低电平持续时间增长,造成遥控距离变短。7脚为输出端,CX20216处理后的脉冲信号由7脚输出给后续电路在加工处理推动负载工作。一些资料表示,在CX20216的1脚输入0.2mV的信号。在5脚将会输出滤波后放大的有用信号。在实测中,5脚并没有一个放大的信号输出。实际调试的时候只关心芯片的7脚在收到信号是是否有一个下降沿产生。在本电路的调试中,如果一直发射超声波,在7脚将会

23、有周期的低电平产生。不会像通常认为的那样,即一直发射信号时,7脚一直为低电平。这是刚用CX20216时的一个常见错误。只要通过单片机来来计算发射信号时到收到信号是产生下降沿这段时间的长度,再通过数学计算,转化为距离,然后在显示器上显示。图4-2 CX20216内部构造图4.1.3 74ls573管脚及功能特点74ls573管脚排列图及逻辑图图4-3如下:图4-3 74ls573管脚排列图左及逻辑图右74ls573功能特点如下表所示:表4-1 74ls573功能特点输入输出输出控制使能数据/OCGDQLHHHLHLLLLQ0HZH=高电平 L=低电平 =不定 Z=高阻 Q0=建立稳定条件前Q的状

24、态4.2 测距原理及框图4.2.1 超声波测距的原理超声波测距从机理上可以分为共振式和脉冲反射式两种,该设计采用后者。工作时由超声波发射极发射超声波,同时开场计时,超声波在空气中传播,当碰到障碍物时,由于其良好的反射能力而被反射,由超声波接收极接收,此时计时完毕。记超声波往返的时间为t,根据s=ct/2计算超声波收发极与障碍物之间的距离,这就是通常所说的渡越时间法,也称时间差测距法。其中c为超声波波速,与环境温度有关,在测量精度要求高的场合要考虑温度影响,可由软件进展调整补偿;在测量精度要求不是很严格的情况下,可以忽略温度的影响,超声波波速与温度的关系如下表5:表4-2 超声波波速与温度的关系

25、表温度-30-20-100102030100声速ms3133193253233383443493864.2.2超声波测距仪原理框图应用单片机软件产生40kHZ的信号,经驱动放大后通过超声波发射器输出;超声波接收器将接收到的超声波信号经放大器放大,用锁相环电路进展检波处理后,启动单片机中断程序,测得时间为t,再由软件进展判别、计算,得出距离数并送LED显示。如图4-4:放大检波电路超声波接收器驱动放大电路定时器单片机控制显示器超声波发射器图4-4 超声波测距仪原理框图4.3 超声波发射电路超声波发射电路原理图如图4-5所示。发射电路主要由与非门74LS00和超声波发射换能器T-40构成。压电式超

26、声波换能器是利用压电晶体的谐振来工作的。超声波换能器内部有两个压电晶片和一个换能板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片会发生共振,并带动共振板振动产生超声波,这时它就是一个超声波发生器;反之,如果两电极问未外加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收换能器。超声波发射换能器与接收换能器在构造上稍有不同,使用时应分清器件上的标志。图4-5 超声波发射电路原理图4.4 超声波检测接收电路集成电路CX20216A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38 kHz

27、与测距的超声波频率40 kHz较为接近,可以利用它制作超声波检测接收电路(如图4-6)。实验证明用CX20216A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力。图4-6 超声波检测接收电路4.5 数据显示局部电路显示电路主要由单片机,74ls573和四位动态共阴数码管构成,其中数据锁存由74ls573完成,单片机I/O口P0口作为数码管段选端口,P2口作为数码管位选端口,具体电路如图4-7所示:图4-7 数据显示电路4.6 超声波测距系统的硬件电路设计本系统的特点是利用单片机控制超声波的发射和对超声波自发射至接收往返时间的计时,然后直接将测量的距离用共阴数码管显示出来。

28、单片机选用AT89S52,经济易用,且片内有8K的可编程FLASH,便于编程。电路原理图如图4-8所示6。图4-8超声波测距电路原理图5 系统的软件编程设计超声波测距仪的软件设计主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序组成。我们知道C语言程序有利于实现较复杂的算法,汇编语言程序那么具有较高的效率且容易精细计算程序运行的时间,而超声波测距仪的程序既有较复杂的计算计算距离时,又要求精细计算程序运行时间超声波测距时,所以控制程序可采用C语言和汇编语言混合编程。5.1 超声波测距仪的算法设计超声波测距的原理为超声波发生器T在某一时刻发出一个超声波信号,当这个超声波遇到被测物体后反

29、射回来,就被超声波接收器R所接收到。这样只要计算出从发出超声波信号到接收到返回信号所用的时间,就可算出超声波发生器与反射物体的距离。距离的计算公式为:1其中,d为被测物与测距仪的距离,s为声波的来回的路程,c为声速,t为声波来回所用的时间。在启动发射电路的同时启动单片机内部的定时器T0,利用定时器的计数功能记录超声波发射的时间和收到反射波的时间。当收到超声波反射波时,接收电路输出端产生一个负跳变,在INT0或INT1端产生一个中断请求信号,单片机响应外部中断请求,执行外部中断效劳子程序,读取时间差,计算距离。5.2主程序流程图软件分为两局部,主程序和中断效劳程序,主程序完成初始化工作、各路超声

30、波发射和接收顺序的控制。 定时中断效劳子程序完成超声波的发射,外部中断效劳子程序主要完成时间值的读取、距离计算、结果的输出等工作。程序首先是对系统环境初始化,设置定时器T0工作模式为16位定时计数器模式。置位总中断允许位EA并给显示端口P0和P2置位本设计采用四位共阳LED动态显示,P0为段选口,P2为位选口,均低电平有效。然后调用超声波发生子程序送出一个超声波脉冲,为了防止超声波从发射器直接传送到接收器引起的直射波触发,需要延时约0.1 ms这也就是超声波测距仪会有一个最小可测距离的原因后,才翻开外中断0接收返回的超声波信号。由于采用的是12 MHz的晶振,计数器每计一个数就是1s,当主程序

31、检测到接收成功的标志位后,将计数器T0中的数即超声波来回所用的时间按式2计算,即可得被测物体与测距仪之间的距离,设计时取20时的声速为344 m/s那么有:2其中,T0为计数器T0的计算值。测出距离后结果将以十进制BCD码方式送往LED显示约0.5s,然后再发超声波脉冲重复测量过程。为了有利于程序构造化和容易计算出距离,主程序采用C语言编写,主程序流程图如下图5-1:开场单片机初始化外部中断子程序33序超声波发射子程序33序返回LED显示是否有回波?图5-1 主程序流程图5.3 超声波发生子程序和超声波接收中断程序超声波发生子程序的作用是通过P1.0端口发送10个左右超声波脉冲信号频率约40k

32、Hz的方波,脉冲宽度为12s左右,同时把计数器T0翻开进展计时。超声波发生子程序较简单,但要求程序运行准确,所以采用汇编语言编程。超声波测距仪主程序利用外中断0检测返回超声波信号,一旦接收到返回超声波信号即INT0引脚出现低电平,立即进入中断程序。进入中断后就立即关闭计时器T0停顿计时,并将测距成功标志字赋值1。如果当计时器溢出时还未检测到超声波返回信号,那么定时器T0溢出中断将外中断0关闭,并将测距成功标志字赋值2以表示此次测距不成功7。程序流程图如下图5-2:定时中断入口定时器初始化发射超声波停顿发射返回外部中断入口关外部中断读取时间值计算距离结果输出开外部中断返回发射完否?图5-2 超声

33、波发射承受子程序5.4 系统的软硬件调试硬件调试具体过程如下:(1).检查电路是否存在虚短的情况;(2).将电路联通后,用示波器观察发射端是否产生40K超声波;(3).在发射电路正常的情况下,用示波器观察接收端波形,并与发射端波形进展比拟观察;(4).调试显示局部。硬件电路制作完成并调试好后,便可将测试程序下载到单片机试运行,检查电路是否能够正常运行,在电路正常的情况下将超声波测距程序下载到单片机中运行。根据实际情况可以修改超声波发射子程序每次发送的脉冲宽度和两次测量的间隔时间,以适应不同距离的测量需要。根据所设计的电路参数和程序,测距仪能测的X围为20cm2m,测距仪最大误差不超过3mm。系

34、统调试完后应对测量误差和重复一致性进展屡次实验分析,不断优化系统使其到达实际使用的测量要求。单片机测试程序如下:unsigned code table=0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff;void delay(int z)int x,y; for(x=z;x0;x-) for(y=110;y0;y-);void main() int i;while(1) i+; if(i=8) i=0; P0=tablei;delay(50);P1=tablei;delay(50);P2=tablei;delay(50);P3=tablei;delay(50);6完

35、毕语设计的最终结果是使超声波测距仪能够产生超声波,实现超声波的发送与接收,从而实现利用超声波方法测量液面与测距仪之间的距离,再计算出液位高度,以数字的形式显示测量距离。在毕业设计的短短几个月里,我学到了很多,实质性的了解到了超声波传感器的原理及其应用方法和应该注意的事项,同时也让我对单片机方面的知识了解的更加深刻,懂得融会贯穿,将理论结合到实际的电路设计上来。 最后感谢导师在毕业设计中对我给予的悉心指导和严格要求,各位教师给我提供了种种专业知识和文本格式上的指导,同时也感谢有经历的同学在毕业设计期间所给予我得帮助。参考文献1 华成英.模拟电子技术根底M.:高等教育,2006.2 边春元.C51

36、单片机典型模拟设计与应用M.:机械工业,2021.3 何希才.传感器及其应用电路M.:电子工业,2001.4 杨文龙.单片机原理及应用M.:XX电子科技大学,2003.5 翟国富 ,X茂恺 .一种实时高精度的机器人用超声波测距处理方法J.应用声学, 2021(1)1:7-2 46 郭惠.Protel 99SE常用功能与应用实例精讲J.:电子工业,2021.7 胡汉才.单片机原理及其接口技术M.:清华大学,2004.8 何希才.新型集成电路及应用M.:航空航天大学出社,20039 阎石.数字电子技术根底M.:高等教育,2004.10Figneroa J F,L amancusa J S.A me

37、thod for accurate detection of time Of arrival:Analysis and design of an ultrasonic rangjing systemJ.J A Cout Soc Am,2007,91(1):486-494.11Grmmel P M.Imrove ultrasonic detection using the analytic signal magi-tade J.Ultrasonics,2021,19(2):73-76.12PROFIBUS.Specification.orderN. NO.0.032.附录一:超声波测距电路原理图

38、图8-1 超声波测距电路原理图附录二:程序清单/*-超声测距器单片机程序MCU AT89S52 XAL 12MHz-*/#include #define uchar unsigned char#define uint unsigned int#define ulong unsigned longUcharcodetemp=0xfc,0x60,0xda,0xf2,0x66,0xb6,0xbe,0xe0,0xfe,0xf6,0xee,0x3e,0x9c,0x7a,0x9e,0x8e,0x02,0x00;extern void cs_t(void);extern void delay(uint);d

39、ata uchar testok; data uint ge,shi,bai,qian;void display(uint x,uint y,uint z,uint m) P0 = tempx; P2 = 0xf7; delay(2); P0 = tempy; P2 = 0xfd; delay(2); P0 = tempz; P2 = 0xfb; delay(2); P0 = tempm; P2 = 0xfe; delay(2); /*主程序*/void main(void)data uint i;data ulong time;P0 = 0xff; P2 = 0xff; TMOD = 0x0

40、1;IE = 0x80;IT0 = 1;while (1) cs_t(); delay(1); testok = 0; EX0 = 1; ET0 = 1; while (!testok) display(ge,shi,bai,qian); if (1 = testok) time = TH0; time = (time8) | TL0; time *=172; time /= 10000; ge= (uchar) (time % 10); time /= 10; shi = (uchar) (time % 10); time /= 10; bai= (uchar) (time % 10); qian = (uchar) (time / 10); if (0 = qian) qian=17; else ge = 16; shi = 16; bai = 16; qian = 16; for (i=0; i300; i+) display(ge,shi,bai,qian); /*超声接收程序外中断0*/void cs_r(void) interrupt 0 TR0 = 0; ET0 = 0; EX0 = 0; testok = 1;/*超时去除程序内中断T0*/void o

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作计划

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁