当前位置:文档之家› 基于AT89C51单片机超声波测距仪的设计

基于AT89C51单片机超声波测距仪的设计

基于AT89C51单片机超声波测距仪的设计
基于AT89C51单片机超声波测距仪的设计

图书分类号:

密级:

毕业设计(论文)

基于AT89C51单片机超声波测距仪的设计BASED ON AT89C51 ULTRASONIC RANGEFINDER DESIGN

学生姓名严海波

学院名称信电工程学院

专业名称电子信息工程技术

指导教师高玉芹

2009年 5 月15日

摘要

超声波是一种在弹性介质中的机械振荡,它是由与介质相接触的振荡源所引起的,其频率在20000Hz以上。由于它有指向性强、方向性好、传播能量大、传播距离较远等特点,因此常用于测量物体的距离。

本文介绍了基于AT89C51单片机的超声波测距仪的软硬件设计,整个系统分为单片机控制模块、发射模块和接收模块组成。程序采用模块化设计,由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。超声探头接收的信号经单片机综合分析处理后,实现了超声波测距仪的各种功能。

关键词超声波 AT89C51 测量距离

目录

1绪论 (1)

1.1研究背景 (1)

1.2研究内容 (1)

2 相关知识 (2)

2.1超声波发生器 (2)

2.2.单片机的任务 (2)

2.3AT89C51单片机主要特性和引脚功能 (2)

3理论分析与计算 (5)

3.1测量与控制方法 (5)

3.3超声波测距误差分析 (6)

4系统硬件电路设计 (8)

4.1单片机系统及显示电路 (8)

4.1.1 74LS244的简介 (9)

4.2超声波发射电路 (9)

4.3超声波监测接收电路 (10)

4.4显示电路原理 (11)

5系统软件设计 (12)

5.1主程序 (12)

5.2超声波发生子程序和接收子程序 (13)

5.3超声波的接收与处理 (13)

6单片机系统的可靠性 (15)

6.1测试单片机系统的可靠性 (15)

6.2单片机的抗干扰性 (15)

7软硬件调试 (16)

7.1调试 (16)

7.2提高精度的方案及系统设计 (16)

8系统的扩展 (18)

8.1DS18B20的简介 (18)

8.11DS18B20的主要特性 (18)

8.12 DS18B20的外形和内部结构 (18)

8.13 DS18B20的工作原理 (19)

8.14 DS18B20有4个主要的数据部件 (19)

8.2DS18B20与单片机的连接 (20)

8.3DS18B20与51单片机的连接程序 (21)

结论 (27)

致谢 (28)

参考文献 (29)

附录 (30)

附录1电路原理图 (30)

附录2程序源代码 (31)

1 绪论

1.1 研究背景

由于社会不断进步发展,许多传统的测距方法已经无法满足我们的需求,例如在井深,液位,管道长度等场合。还有在很多要求实时测距的情况下,传统的测距方法也很难完成测量的任务。于是,在这种情况下一种新的测距方法诞生了---超声波测距。

超声波可用于非接触测量,具有不受光、电磁波以及粉尘等外界因素的干扰的优点,是利用计算超声波在被测物体和超声波探头之间的传输来测量距离的,对被测目标无损害。而且超声波传播速度在相当大范围内与频率无关。超声波的这些独特优点越来越受到人们的重视。

目前对于超声波精确测距的需求也越来越大,如油库和水箱液面的精确测量和控制,物体内气孔大小的检测和机械内部损伤的检测等。在机械制造,电子冶金,航海,宇航,石油化工,交通等工业领域也有广泛地应用。此外,在材料科学,医学,生物科学等领域中也占具重要地位。

1.2 研究内容

超声波测距仪主要以单片机AT89C51为核心,其发射器是利用压电晶体的谐振带动周围空气振动来工作的.超声波发射器向某一方向发射超声波,在发射的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器接收到反射波就立即停止计时。一般情况下,超声波在空气中的传播速度为340m/ s,根据计时器记录的时间t ,就可以计算出发射点距障碍物的距离s,即s=340×t/2。

本系统的一个亮点就是利用超声波测量距离,超声波具有不受光、电磁波以及粉尘等外界因素的干扰的优点,而且超声波传播速度在相当大范围内与频率无关。

2 相关知识

2.1 超声波发生器

我们知道,由于超声波指向性强,能量消耗缓慢,在介质中传播的距离比较远,因而超声波经常用于距离的测量。利用超声波检测距离,设计比较方便,计算处理也比较简单,并且在测量精度方面也能达到日常使用的要求。

超声波发生器可以分为两大类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。电气方式包括压电型、电动型;机械方式有加尔统笛、液哨和气流旋笛等,它们所产生的超声波的频率、功率和声波特性各不相同,因而用途也各不相同,目前在近距离测量方面较为常用的是压电式超声波换能器。

2.2.单片机的任务

单片机的任务是指以单片机为核心,构建硬件部分和软件部分组成,配以一定的外围电路和软件,实现某几种功能,完成相应的任务。硬件是系统的基础,软件则是在硬件的基础上对其合理的调配和使用,从而完成应用系统所要完成的基础。一般来讲,所要完成的任务不同,相应的硬件配置和软件配置也就不同。因此,单片机的设计应包括硬件设计和软件设计两大部分。

2.3 AT89C51单片机主要特性和引脚功能

AT89C51是带4K字节闪烁可编程可擦除只读存储器(EPEROM)的低电压、高性能CMOS 8位微处理器(俗称单片机)。该单片机与工业标准的MCS-51型机的指令集和输出引脚兼容。AT89C51将多功能8位CPU和闪烁存储器组合在单个芯片中,为很多嵌入式控制提供了灵活性高且价格低廉的方案。

AT89C51的主要特性如下:

寿命达1000写/擦循环;

数据保留时间:10年;

全静态工作:0Hz-24MHz;

三级程序存储器锁定;

128 * 8位内部RAM;

32可编程I/O线;

2个16位定时器/计数器;

5个中断源;

可编程串行通道;

低功耗闲置和掉电模式;

片内振荡器和时钟电路;

AT89C51引脚排列如图1所示,引脚功能如下图2-1所示:

图2-1AT89C51引脚图

VCC(40):+5V.

GND(20):接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL 门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉

冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:来自反向振荡器的输出。

3理论分析与计算

3.1测量与控制方法

声波在其传播介质中被定义为纵波。当声波受到尺寸大于其波长的目标物体阻挡时就会发生反射;反射波称为回声。假如声波在介质中传播的速度是已知的,而且声波从声源到达目标然后返回声源的时间可以测量得到,从声波到目标的距离就可以精确地计算出来。这就是本系统的测量原理。

超声波传感器的结构如图3-1所示。

图3 -1 超声波传感器结构

超声波测距器的系统框图如图3-2所示:

图3-2超声波测距器的系统框图

超声波也是一种声波,其声速c与温度有关,表3-3列出了几种不同温度下的超声波声速。在使用时,如果温度变化不大,则可认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。声速确定后,只要测得超声波往返的时间,即可求得距离。

3.2理论计算

图3-4 测距的原理

如图3-4所示为反射时间法,是利用检测声波发出到接收到被测物反射回波的时间来测量距离其原理如图所示,对于距离较短和要求不高的场合我们可认为空气中的声速为常数,我们通过测量回波时间T 利用公式S=C*(T/2)其中,S 为被测距离、V 为空气中声速、T 为回波时间(T=T1+T2),可以计算出路程,这种方法不受声波强度的影响,直接耦合信号的影响也可以通过设置“时间门”来加以克服。

这样可以求出距离:

S=C(T1-T2)/2

3.3超声波测距误差分析

(1) 发射接收时间对测量精度的影响分析

采用 TR40 压电超声波传感器,脉冲发射由单片机控制,发射频率 40KHz ,忽略脉冲电路硬件产生的延时,可知由软件生成的起始时间对于一般要求的精度是可靠的。对于接收到的回波,超声波在空气介质的传播过程中会有很大的衰减,其衰减遵循指数规律。

设测量设备基准面距被测物距离为h ,则空气中传播的超声波波动方程为: ()()()-==k h t+kt e t+kt 20A A cos A cos ωωω <1> 由以上公式可知,超声波在传播过程中存在衰减,且超声波频率越高,衰减越快,但频率的增高有利于提高超声波的指向性。

经以上分析,超声波回波的幅值在传播过程中衰减很大,收到的回波信号可能十分微弱,要想判断捕获到的第一个回波确定准确的接受时间,必须对收到的信号进行足够的放大,否则不正确的判断回波时间,会对超声波测量精度产生影响。 (2) 当地声速对测量精度的影响分析

当地声速对超声波测距测量精度的影响远远要比收发时间的影响严重。超声波在大气中传播的速度受介质气体的温度、密度及气体分子成分的影响,即:

=

s C <2>

由上式知,在空气中,当地声速只决定于气体的温度,因此获得准确的当地气温可以有效的提高超声波测距时的测量精度。工程上常用的由气温估算当地声速的公式如下:

=0C C <3>

式中C0=331.4m/s ;

T——为绝对温度,单位K 。

此公式一般能为声速的换算提供较为准确的结果。实际情况下,温度每上升或者下降1oC, 声速将增加或者减少0.607m /s ,这个影响对于较高精度的测量是相当严重的。因此提高超声波测量精度的重中之重就是获得准确的当地声速。

4系统硬件电路设计

硬件电路主要分为单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分。

4.1单片机系统及显示电路

单片机采用AT89C51或其兼容系列。采用12MHZ高精度的晶振,以获得较稳定的时钟频率,减小测量误差。单片机用P1.0端口输出超声波换能器所需的40KMZ方波信号,利用外中断0口监测超声波接收电路输出的返回信号。显示电路采用简单实用的4位共阳LED数码管,段码用74LS244驱动,位码用PNP三极管8550驱动。

单片机系统及显示电路如下图4-1所示

图4-1单片机系统及显示电路

4.1.1 74LS244的简介

(1)74LS244引脚图如下4-2所示:

图4-2 74LS244引脚图

(2)引脚功能:

1A1~1A4,2A1~2A4 输入端

/1G, /2G 三态允许端(低电平有效)

1Y1~1Y4,2Y1~2Y4 输出端

4.2超声波发射电路

超声波发射电路原理图如下图4-3所示。发生电路主要由反向器74LS04和超声波发射换能器T构成,单片机P1.0端口输出的40KMz方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极。用这种推挽形式将方波信号加到超声波换能器两端,可以提高超声波的发射强度。输出端采用两个反向器并联,用以提高驱动能力。上拉电阻R10、R11一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声换能器的阻尼效果,缩短其自由振荡的时间。

压电式超声波换能器是利用压电晶体的谐振来工作的。超声波换能器内部结构它有两个压电晶片和一个共振板。当它的两极外加脉冲信号,其频率等于压电晶片的固有振荡频率时,压电晶片将会发生共振,并带动共振板振动产生超声波,这时它就是一个超声波发生器;反之,如果两电极间未加电压,当共振板接收到超声波时,将压迫压电晶片作振动,将机械能转换为电信号,这时它就成为超声波接收换能器了。超声波发射换能器与接收换能器其结构上稍有不同,使用时应分清器件上的标志。

图4-3超声波发射电路

4.3超声波监测接收电路

集成电路CX20106A是一款红外线检波接收的专用芯片,常用于电视机红外遥控接收器。考虑到红外遥控常用的载波频率38KHz与测距的超声波频率40kHz较为接近,可以利用它制作超声波检测接收电路。实验证明用CX20106A接收超声波(无信号时输出高电平),具有很高的灵敏度和较强的抗干扰能力。适当更改电容C4的大小,可以改变接收电路的灵敏度和抗干扰能力。如图4-4所示:

图4-4超声波检测电路

4.4显示电路原理

超声波测距仪显示模块如下图4-5所示。通过单片机的15、16、17三个管脚的信号控制三个三极管的B级,利用三极管的开关特性,实现数码管的点亮,从而实现动态显示。

4-5显示模块

5系统软件设计

5.1主程序

主程序首先是对系统环境初始化,设置定时器T0工作模式为16位定时计数器模式,置位总中断容许位EA并给显示端口P0和P2清0.然后调用超声波发生子程序送出一个超声波脉冲,为了避免超声波从发射器直接传送到接收器引起的直射波触发,需要延时约0.1ms(这也就是超声波测距器会有一个最小可测距离的原因)后,才打开外中断0接收返回的超声波信号。由于采用的是12MHz的晶振,计数器每计一个数就是1us,当主程序检测到接收成功的标志位后,将计数器T0中的数(即超设波来回所用的距离)按下式计算,即可得被测物体与测距器之间的距离,设计时取20度时的声速为344m/s

则有:

S=(C*T)/2=172T0/10000cm

其中T0为计数器T0的计数值。

测出距离后结果将以十进制BCD码方式送往LED显示约0.5s,然后再发超声波脉冲重复测量过程。为了有利于程序结构化合容易计算出距离,主程序采用C语言编写。

图5-1为主程序流程图

图5-1流程图

5.2超声波发生子程序和接收子程序

(1)超声波发生子程序的作用是通过P1.0端口发送2个左右的超声波信号频率约40KHz的方波,脉冲宽度为12us左右,同时把计数器T0打开进行计时。

(2)超声波测距器主程序利用外中断0检测返回超声波信号,一旦接收到返回超声波信号(INT0引脚出现低电平),立即进入中断程序。进入该中断后就立即关闭计时器T0停止计时,并将测距成功标志字赋值1。

(3)如果当计时器溢出时还未检测到超声波返回信号,则定时器T0溢出中断将外中断0 关闭,并将测距成功标志字赋值2以表示此次测距不成功。如下图5-2所示:

图5-2超声波发生子程序和超声波接收中断程序流程图

5.3 超声波的接收与处理

接收头采用与发射头配对的UCM40R,将超声波调制脉冲变为交变电压信号,经运算放大器IC1A和IC1B两极放大后加至IC2。IC2是带有锁定环的音频译码集成块LM567,内部的压控振荡器的中心频率f0=1/1.1R8C3,电容C4决定其锁定带宽。调节R8在发射的载频上,则LM567输入信号大于25mV,输出端8脚由高电平跃变为低电平,作为中断请求信号,送至单片机处理。

前方测距电路的输出端接单片机INT0端口,中断优先级最高,左、右测距电路的输出通过与门IC3A的输出接单片机INT1端口,同时单片机P1.3和P1.4接到IC3A的输入端,中断源的识别由程序查询来处理,中断优先级为先右后左。部分源程序如下:receive1:push psw

push acc

clr ex1 ;关外部中断1

jnb p1.1, right ;P1.1引脚为0,转至右测距电路中断服务程序

jnb p1.2, left ;P1.2引脚为0,转至左测距电路中断服务程序

return:SETB EX1;开外部中断1

pop acc

pop psw

reti

right: ... ;右测距电路中断服务程序入口

AJMP RETURN

left:... ;左测距电路中断服务程序入口

AJMP RETURN

6单片机系统的可靠性

6.1测试单片机系统的可靠性

当一个单片机系统设计完成后,对于不同的单片机系统产品会有不同的测试项目和方法,但是有一些是必须测试的。

(1)测试单片机软件功能的完整性。这是针对所有单片机系统功能的测试,测试软件是否写得正确完整。

(2)上电、掉电测试。在使用中用户必然会遇到上电和掉电的情况,可以进行多次开关电源,测试单片机系统的可抗性。

(3)老化测试。测试长时间工作情况下,单片机系统的可抗性。必要的话可以放置在高温、高压以及强电磁干扰的环境下测试。

(4)ESD和EFT等测试。可以使用各种干扰模拟器来测试单片机系统的可抗性。例如使用静电模拟器测试单片机系统的抗静电ESD能力;使用突波杂讯模拟器进行快速脉冲抗干扰EFT测试等。

6.2单片机的抗干扰性

影响单片机系统可靠安全运行的主要因素主要来自系统内部和外部的各种电气干扰,并受系统结构设计、元器件选择、安装、制造工艺的影响。这些都是单片机系统的干扰因素,常会导致单片机系统运行失常,轻则影响产品质量和产量,重则会导致事故,造成重大经济损失。

形成干扰的基本要素有三个:

(1)干扰源。指产生干扰的元件、设备或信号,用数学语言描述为du/dt、di/dt大的地方就是干扰源,如雷电、继电器、可控硅、电机、高频时钟等都可能成为干扰源

(2)传播路径。指干扰从干扰源传播到敏感器件的通路或媒介。典型的干扰传播路径是通过导线的传导和空间的辐射。

(3)敏感器件。指容易被干扰的对象,如A/D、D/A变换器,单片机,数字IC,弱信号放大器等。

7软硬件调试

7.1调试

测试是为了发现程序中的错误而执行程序的过程。具体地说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计出一批测试用例,并利用测试用例来运行程序,以发现程序错误的过程。

超声波测距仪的制作和调试,其中超声波发射和接收采用Φ15的超声波换能器

TCT40-10F1(T发射)和TCT40-10S1(R接收),中心频率为40kHz,安装时应保持两换能器中心轴线平行并相距4~8cm,其余元件无特殊要求。若能将超声波接收电路用金属壳屏蔽起来,则可提高抗干扰能力。根据测量范围要求不同,可适当调整与接收换能器并接的滤波电容C的大小,以获得合适的接收灵敏度和抗干扰能力。

7.2提高精度的方案及系统设计

(1)温度校正的方法提高测距精度

由上述的误差分析知,如果能够知道当地温度,则可根据公式⑷ 求出当地声速,从而能够获得较高的测量精度。而问题的关键在于获得温度数据的方法。采用热敏电阻、热电耦、集成温度传感器都可以获得较为准确的温度值。

为了便于对温度信号的数据采集及处理,我们采用 DALASS 公司生产的 DS18B20 集成温度传感器。 DS18B20 采用了 DALASS 公司的 1-WIRE 总线专利技术,能够仅在占用控制器一个 I/O 口的情况下工作(芯片可由数据线供电),极大的方便了使用者的调试使用,而且其在- 10oC ~+ 85oC 的工作环境下可以保持± 0.5% 的使用精度,在这个空间内足以保证为超声波测距设备提供足够的精度范围。

通过 DS18B20 芯片获得的数据信号经由 1-WIRE 总线传至 MCU ,由软件进行声速换算。为了更好的实现换算过程同时兼顾设备的使用成本,我们采用宏晶公司的最新推出的STC12C5410 单片机实现超声波测距的各项功能。 STC12C5410 采用了低成本、低功耗、强抗干扰设计,并且在最高支持 48MHz 的前提下能够实现 1 个时钟 / 机械周期的运行速度。由于能够使用高频率的晶振,因此相对于普通单片机来说可以有效的减少由计时问题带来的量化误差,能够满足较高精度超声波测距仪的设计要求。

(2)标杆校正的方法提高测距精度

在复杂环境下,如果难于获得环境温度,或者不便获得环境温度时,如果仍旧要求较高的测量精度,我们采用所谓标杆校正的方法实现超声波测距精度的校正。标杆校正的示

基于51单片机超声波测距仪设计【开题报告】

毕业论文开题报告 电子信息工程 基于51单片机超声波测距仪设计 一、课题研究意义及现状 随着社会的发展,传统的测距方法在很多场合已无法满足人们的需求。例如在井深、液位、管道长度测量等场合。传统的测距方法根本无法完成测量任务。还有在很多要求实时测距的情况下。传统的测距方法也不能很好地完成测量任务。于是一种新的测距方法——超声波测距应运而生。超声波测距仪是根据超声波遇到障碍物反射回来的特性进行测量的。超声波发射器向某一方向发射超声波,在发射同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即中断停止计时。通过不断检测产生波发射后遇到障碍物所反射的回波,从而测出发射超声波和接收到回波的时间差T,然后求出距离L。超声测距是一种非接触式的检测方式,它不受光线、被测对象颜色等影响。超声波传感器结构简单、体积小、信号处理可靠,所以检测比较迅速、方便、计算简单、易于做到实时控制。在移动机器人、汽车安全、海洋测量等上得到了广泛的应用。因此,本课题的研究是非常有实用和商业价值。 随着科学技术的快速发展,超声波测距仪的应用将会越来越广,这是一个蓬勃发展而又有无限前景的技术及产业领域。未来的超声波测距技术将朝着更高精度,更大应用范围,更稳定方向发展,死角问题也能得到解决。超声波测距仪将其通过51单片机来实现,成本低、精度高、操作简单、工作稳定可靠,非常适合于短距离测量定位。51单片机为许多控制提供了高度灵活和低成本的解决办法。充分利用它的片内资源,即可在较少外围电路的情况下构成功能完善的超声波测距系统,有很大的市场开发潜力。 二、课题研究的主要内容和预期目标 本课题主要设计一种基于单片机的超声测距系统。该系统以超声波的传播速度为确定条件,利用发射超声波与反射回波时间差来测量待测距离。课题主要内容包括硬件设计和软件设计。硬件设计主要包括单片机系统,超声波发射电路、超声波检测接收电路、数码管显示电路等。软件部分拟采用单片机C语言编程,便于维护和修改,主要是利用中断完成信号发射和接受中间所耗时间的计算,并进行相关的数据处理以得到准确的距离。本课题要求测量精确、可靠、显示正确。 三、课题研究的方法及措施 先通过上网、图书馆等各种途径,搜索与本课题相关的资料进行大量的阅读,从而从整体上对这个课题进行认识。然后根据查阅的资料作出总体方案的设计框图以及确定本设计的实现方法。本设计总体框图如下:

基于51单片机的超声波测距毕业设计(论文)

一设计题目基于51单片机的超声波测距 二设计者 姓名班级学号组号 三、设计思路及框图、原理图 任务:以单片机为核心,设计并制作一超声波测距系统基本要求: 利用时间差测距,不考虑温度变化 用数码管显示测试结果 工作频率:450kHz 测距范围:0.5~10米 测试精度: 10% 发挥部分尽量增大测控范围,提高测试精度 1.系统的硬件结构设计 1.1. 超声波发生电路 发射电路主要由反相器74LS04和超声波发射换能器T构成,单片机P1.0端口输出的450kHz的方波信号一路经一级反向器后送到超声波换能器的一个电极,另一路经两级反向器后送到超声波换能器的另一个电极,用这种推换形式将方波信号加到超声波换能器的两端,可以提高超声波的发射强度。输出端采两个反向器并联,用以提高驱动能力。上位电阻R1O、R11一方面可以提高反向器74LS04输出高电平的驱动能力,另一方面可以增加超声波换能器的阻尼效果,缩短其自由振荡时间。 1.2超声波检测接收电路 采用集成电路CX20106A为超声波接收芯片。实验证明用CX20106A接收超声波(无信号时输出高电平),具有很好的灵敏度和较强的抗干扰能力。适当更改电

容C4的大小,可以改变接收电路的灵敏度和抗干扰能力。 1.3 显示电路 显示电路主要由74ls273芯片驱动,用PNPC8550三级管进行位选,七段共阳极数码管显示。 2.系统的软件结构设计 设计思路 主程序中包括温度补偿子程序,计算子程序,显示子程序。采用汇编编程。首先进行系统初始化。其次利用循环产生4个40KHZ的方波,由输出口进行输出,并开始计时。第三等待中断,若超声波被接收探头捕捉到,那么通过中断可测得

超声波测距仪的设计说明

题目:超声波测距仪的设计 超声波测距仪的设计 一、设计目的: 以51单片机为主控制器,利用超声波模块HC-SR04,设计出一套可在数码管上实时显示障碍物距离的超声波测距仪。 通过该设计的制作,更为深入的了解51的工作原理,特别是51的中断系统及定时器/计数器的应用;掌握数码管动态扫描显示的方法和超声波传感器测距的原理及方法,学会搭建51的最小系统及一些简单外围电路(LED显示电路)。从中提高电路的实际设计、焊接、检错、排错能力,并学会仿真及软件调试的基本方法。 二、设计要求: 设计一个超声波测距仪。要求: 1.能在数码管上实时显示障碍物的实际距离; 2.所测距离大于2cm小于300cm,精度2mm。 三、设计器材: STC89C52RC单片机 HC-SR04超声波模块 SM410561D3B四位的共阳数码管 9014三极管(4) 按键(1) 电容(30PF2,10UF1) 排阻(10K),万用板,电烙铁,万用表,5V直流稳压电源,镊子,钳子,

导线及焊锡若干,电阻(200欧5)。 四、设计原理及设计方案: (一)超声波测距原理 超声测距仪是根据超声波遇到障碍物反射回来的特性进行测量的。超声波发射器向某一方向发射超声波,在发射同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即中断停止计时。通过不断检测产生波发射后遇到障碍物所反射的回波,从而测出发射超声波和接收到回波的时间差T,然后求出距离L。基本的测距公式为:L=(△t/2)*C 式中 L——要测的距离 T——发射波和反射波之间的时间间隔 C——超声波在空气中的声速,常温下取为344m/s 声速确定后,只要测出超声波往返的时间,即可求得L。 根据本次设计所要求的测量距离的围及测量精度,我们选用的是HC-SR04超声波测距模块。(如下图所示)。此模块已将发射电路和接收电路集成好了,硬件上不必再自行设计繁复的发射及接收电路,软件上也无需再通过定时器产生40Khz的方波引起压电陶瓷共振从而产生超声波。在使用时,只要在控制端‘Trig’发一个大于15us宽度的高电平,就可以在接收端‘Echo’等待高电平输出。单片机一旦检测到有输出就打开定时器开始计时。 当此口变为低电平时就停止计时并读出定时器的值,此值就为此次测距的时间,再根据传播速度方可算出障碍物的距离。 (二)超声波测距模块HC-SR04简要介绍 HC-SR04超声波测距模块的主要技术参数使用方法如下所述: 1. 主要技术参数: ①使用电压:DC5V ②静态电流:小于2mA ③电平输出:高5V

超声波测距仪硬件电路的设计

超声波测距仪电路设计实验报告 轮机系楼宇071 周钰泉2007212117 实验目的:了解超声波测距仪的原理,掌握焊接方法,掌握电路串接方法,熟悉电路元件。 实验设备及器材:电烙铁,锡线,电路元件 实验步骤:1,学习keil软件编写程序2、焊接电路板3、运行调试 超声波测距程序: #include unsigned char code dispbitcode[]={0x31,0x32,0x34,0x38,0x30,0x30, 0x30,0x30}; unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x77,0x7c,0x 39}; unsigned char dispbuf[8]={10,10,10,10,10,10,0,0}; unsigned char dispcount; unsigned char getdata; unsigned int temp; unsigned int temp1;

unsigned char i; sbit ST=P3^0; sbit OE=P3^1; sbit EOC=P3^4; sbit CLK=P3^5; sbit M1=P3^6; sbit M2=P3^7; sbit SPK=P2^6; sbit LA=P3^3; sbit LB=P3^2; sbit LC=P2^7; sbit K1=P2^4; sbit K2=P2^5; bit wd; bit yw; bit shuid; bit shuig; unsigned int cnta; unsigned int cntb; bit alarmflag; void delay10ms(void) { unsigned char i,j; for(i=20;i>0;i--) for(j=248;j>0;j--); } void main(void) { M1=0; M2=0; yw=1; wd=0; SPK=0; ST=0; OE=0; TMOD=0x12; TH0=0x216; TL0=0x216; TH1=(65536-500)/256; TL1=(65536-500)%256; TR1=1; TR0=1; ET0=1; ET1=1; EA=1; ST=1; ST=0; while(1) { if(K1==0) { delay10ms(); if(K1==0) { yw=1; wd=0; } } else if(K2==0) { delay10ms(); if(K2==0) { wd=1; yw=0; } } else if(LC==1) { delay10ms(); if(LC==1) { M1=0; M2=1; temp1=13; shuid=0; shuig=1; LB=0; } } else if((LC==0) && (LB==1)) { delay10ms(); if((LC==0) && (LB==1)) { M1=0; M2=0; temp1=12; shuig=0; shuid=0; LB=0; }

单片机应用_超声波测距器

单片机课程设计 一、需求分析: 超声波测距器,可以应用于汽车倒车、建筑施工工地以及一些工业现场的位置监控,也可用于如液位、井深、管道长度的测量等场合。要求测量围在1m,测量精度1cm,测量时与被测物体无直接接触,能够清晰稳定地显示测量结果。由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在移动机器人的研制上也得到了广泛的应用。 本文旨在设计一种能对中近距离障碍物进行实时测量的测距装置,它能对障碍物进行适时、适量的测量,起到智能操作,实时监控的作用。 关键词单片机AT82S51 超声波传感器测量距离 二、硬件设计方案 设计思路 超声波传感器及其测距原理 超声波是指频率高于20KHz的机械波。为了以超声波作为检测手段,必须产生超生波和接收超声波。完成这种功能的装置就是超声波传感器,习惯上称为超声波换能器或超声波探头。超声波传感器有发送器和接收器,但一个超声波传感器也可具有发送和接收声波的双重作用。超声波传感器是利用压电效应的原理将电能和超声波相互转化,即在发射超声波的时候,将电能转换,发射超声波;而在收到回波的时候,则将超声振动转换成电信号。

超声波测距的原理一般采用渡越时间法TOF(time of flight)。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二倍的声源与障碍物之间的距离 测量距离的方法有很多种,短距离的可以用尺,远距离的有激光测距等,超声波测距适用于高精度的中长距离测量。因为超声波在标准空气中的传播速度为340米/秒,由单片机负责计时,单片机使用12.0M晶振,所以此系统的测量精度理论上可以达到毫米级。 由于超声波指向性强,能量消耗缓慢,在介质中传播距离远,因而超声波可以用于距离的测量。利用超声波检测距离,设计比较方便,计算处理也较简单,并且在测量精度方面也能达到要求。 超声波发生器可以分为两类:一类是用电气方式产生超声波,一类是用机械方式产生超声波。本课题属于近距离测量,可以采用常用的压电式超声波换能器来实现。 根据设计要求并综合各方面因素,可以采用AT89S51单片机作为主控制器,用动态扫描法实现LED数字显示,超声波驱动信号用单片机的定时器完成,超声波测距器的系统框图如下图所示: 超声波测距器系统设计框图 主要由单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分组成。采用AT89S51来实现对CX20106A红外接收芯片和TCT40-10系列超声波转换模块的控制。单片机通过P1.0引脚经反相器来控制超声波的发送,然后单片机不停的检测INT0引脚,当INT0引脚的电平由高电平变为低电平时就认为超声波已经返回。计数器所计的数据就是超声波所经历的时间,通过换算就可以得到传感器与障碍物之间的距离。

超声波测距仪单片机课设实验资料报告材料

微机原理与单片机系统课程设计 业:专轨道交通信号与控制 级:班1305 交控

姓名:贺云鹏 学号: 201310104 指导教师:建国 交通大学自动化与电气工程学院 30 日 12 2015 年月 超声波测距仪设计设计说明1 设计目的1.1 测量声波在发超声波测距的原理是利用超声波在空气中的传播速度为已知,根据发射和接收的时间差计算出发射点到障碍射后遇到障碍物反射回来的时间,物的实际距离。超声波测距主要应用于倒车提醒、建筑工地、工业现场等的距离测量。 超声波在气体、液体及固体中以不同速度传播,定向性好、能量集中、传输过程中衰减较小、反射能力较强。超声波能以一定速度定向传播、遇障碍物后形成反射,利用这一特性,通过测定超声波往返所用时间就可计算出实际距离,从而实现无接触测量物体距离。超声波测距迅速、方便,且不受光线等因素影响,广泛应用于水文液位测量、建筑施工工地的测量、现场的位置监控、振动仪车辆倒车障碍物的检测、移动机器入探测定位等领域。 1.2 设计方法 本课题包括数据测距模块、显示模块。测距模块包括一个HC-SR04超声波测距模块和一片AT89C51单片机,该设计选用HC-SR04超声波测距模块,通过单片机对超声波进行计时并根据超AT89C51发射和接受超声波,使用HC-SR04.声波在空气中速度为340米每秒的特性计算出距离。显示模块包括一个4位共阳极LED数码管和AT89C51单片机,由AT89C51单片机控制数码管动态显示距离。 1.3 设计要求 采用单片机为核心部件,选用超声波模组,实现对距离的测量,测量距离能够通过显示输出(LED,LCD)。 2 设计方案及原理 2.1超声波测距模块设计

51单片机超声波测距程序

//晶振:11.0592 //TRIG:P1.2 ECH0:P1.1 //波特率:9600 #include #include #include #define uchar unsigned char #define uint unsigned int sbit RX=P0^2; sbit TX=P0^3; unsigned int time=0; unsigned int timer=0; float S=0; bit flag =0; void Conut(void) { time=TH0*256+TL0; TH0=0; TL0=0; S=(time*1.87)/100; //算出来是CM if(flag==1) //超出测量 { flag=0; printf("-----\n"); } printf("S=%f\n",S); } void delayms(unsigned int ms) { unsigned char i=100,j; for(;ms;ms--) { while(--i)

{ j=10; while(--j); } } } void zd0() interrupt 1 //T0中断用来计数器溢出,超出测距范围{ flag=1; //中断溢出标志 } void StartModule() //T1中断用来扫描数码管和计800ms启动模块{ TX=1; //800MS启动一次模块 _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); _nop_(); TX=0; } void main(void) { TMOD=0x21; //设T0为方式1,GATE=1; SCON=0x50; TH1=0xFD; TL1=0xFD; TH0=0; TL0=0;

基于51单片机的超声波测距仪设计

自动化技术综合实训报告 实训题目: 院 专 班 姓 学 指导教师: 实训地点: 开课时间:

序号 评价内容 分数 序 号 评价内容 分数 1 出勤(10 分) 3 实训任务完成情况(50 分) 2 课题难度分值(10 分) 4 实训总结报告(30 分) 实训总成绩: 94 分 学生姓名: 魏*星 实训评分 指导教师评语: 指导教师(签名): 年 月

目录 第 1章绪论 1.1实训的目和要求 1.2实训课题设计功能描述……………………………………………………… 1.3应解决的问题………………………………………………………………第 2章整体设计方案 2.1设计原理 2.2整体系统设计………………………………………………………………第 3章硬件电路设计 3.1电路原理图 3.2元件清单…………………………………………………………………… 3.3重要电路介绍 3.3.1复位与晶振电路…………………………………………………… 3.3.2超声波发射电路…………………………………………………… 3.3.3超声波接收检测电路……………………………………………… 3.3.4显示电路 第 4章软件设计 4.1系统软件设计 4.2程序流程图 4.3程序设计与调试 第 5章制板焊接调试 5.1仿真结果与 PCB图 5.2焊制电路板、实物运行调试 5.3误差分析与校正讨论 总结与体会 谢词 参考文献 附录

第1章绪论 1.1实训的目的和要求 生产实训是自动化专业本科生在校期间必须进行的主要实践环节之一,是培养学生工程实践能力、提高学生工程素质的一个重要组成部分。作为一名工科学生,将来从事自动化及相关工作,为了让我们能尽早的认识社会实践,了解工业生产,提高自己的动手意识,强化个人素质,增强理论联系实际的观念,学校给我们安排了为期两周的专业实训,让我们学到的理论知识和实践联系到一起,为我们以后的走向社会打下一个坚实的基础。 这次实训的主要目的是让大家进一步了解 AT89 系列单片机的引脚、功能,晶振电路、显示电路和信号输入输出电路的设计,熟悉使用 keil 软件和用汇编语言编程完成各种处理和控制,同时学习使用软件对电路进行设计,对项目进行仿真、调试,以及 PCB 板的制作等,最主要的是了解一个小型项目的研发过程,从项目的提出到项目实现需要怎样一步步来完成,项目完成事应该大概掌握以上要求。 1.2实训课题设计功能描述 我们小组选择的课题是基于 AT89C51 单片机的超声波测距仪设计。 由于超声波指向性强,能量消耗缓慢,在介质中传播距离较远,因而超声波被广泛用于距离的测量。利用超声波检测往往比较迅速、方便,计算简单易于做到实时控制,并且在测量精度方面能达到工业实用的要求,测量时与被测物体无直接接触的特点,使得其具有很大的使用价值。 我们最熟悉的超声波测距的应用是声纳系统,是超声波测距在军事上的终极使用,研制具有更高定位精度的被动测距声纳,以满足水中武器实施全隐蔽攻击的需要;实现超远程的被动探测和识别;研制更适合于浅海工作的潜艇声纳,特别是解决浅海水中目标识别问题;大力降低潜艇自噪声,改善潜艇声纳的工作环境。无庸置疑,未来的超声波测距仪将与自动化智能化接轨,与其他的测距仪集成和融合,形成多测距仪。随着测距仪的技术进步,测距仪将从具有单纯判断功能发展到具有学习功能,最终发展到具有创造力。 除了军事,日常生活和工业上也广泛应用,如:倒车雷达,建筑施工工地以及一些工业现场在液位测量、井深测量、管道长度测量等场合的使用。 1.3设计研究的要求及主要内容应解决的问题 本项目需要通过学习和查阅资料,了解和掌握如下知识: 1. +5V电源原理及设计 2.单片机复位电路工作原理及设计 3.单片机晶振电路工作原理及设计 4.七段 LED显示原理及设计 5.超声波传感器的应用及设计 6.电路的接线 7.AAT89C51单片机的引脚 8.单片机汇编语言及设计

基于单片机的超声波测距系统实验报告

基于单片机的超声波测距系统实验报告

一、实验目的 1.了解超声波测距原理; 2.根据超声波测距原理,设计超声波测距器的硬件结构电路; 3.对设计的电路进行分析能够产生超声波,实现超声波的发送与接收,从而实现利用 超声波方法测量物体间的距离; 4.以数字的形式显示所测量的距离; 5.用蜂鸣器和发光二极管实现报警功能。 二、实验容 1.认真研究有关理论知识并大量查阅相关资料,确定系统的总体设计方案,设计出系 统框图; 2.决定各项参数所需要的硬件设施,完成电路的理论分析和电路模型构造。 3.对各单元模块进行调试与验证; 4.对单元模块进行整合,整体调试; 5.完成原理图设计和硬件制作; 6.编写程序和整体调试电路; 7.写出实验报告并交于老师验收。 三、实验原理 超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波,从而测出发射和接收回波的时间差t,然后求出距S=Ct/2,式中的C为超声波波速。由于超声波也是一种声波,其声速C与温度有关。在使用时,如果温度变化不大,则可认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。声速确定后,只要测得超声波往返的时间,即可求得距离。这就是超声波测距仪的机理,单片机(AT89C51)发出短暂的40kHz信号,经放大后通过超声波换能器输出;反射后的超声波经超声波换能器作为系统的输入,锁相环对此信号锁定,产生锁定信号启动单片机中断程序,得出时间t,再由系统软件对其进行计算、判别后,相应的计算结果被送至LED显示电路进行显示。 (一)超声波模块原理: 超声波模块采用现成的HC-SR04超声波模块,该模块可提供 2cm-400cm 的非接触式距离感测功能,测距精度可达高到 3mm。模块包括超声波发射器、接收器与控制电路。基本工作原理:采用 IO 口 TRIG 触发测距,给至少 10us 的高电平信号;模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回;有信号返回,通过 IO 口 ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S))/2。实物如下图1。其中VCC 供5V 电源,GND 为地线,TRIG 触发控制信号输入,ECHO 回响信号输出等四支线。

简易超声波测距仪的设计

摘要 超声波具有指向性强,能量消耗缓慢,传播距离较远等优点,所以,在利用传感器技术和自动控制技术相结合的测距方案中,超声波测距是目前应用最普遍的一种,它广泛应用于防盗、倒车雷达、水位测量、建筑施工工地以及一些工业现场。 本课题详细介绍了超声波传感器的原理和特性,以及Atmel公司的AT89C51单片机的性能和特点,并在分析了超声波测距的原理的基础上,指出了设计测距系统的思路和所需考虑的问题,给出了以AT89C51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。整个电路采用模块化设计,由主程序、预置子程序、发射子程序、接收子程序、显示子程序等模块组成。各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。相关部分附有硬件电路图、程序流程图。 经实验证明,这套系统软硬件设计合理、抗干扰能力强、实时性良好,经过系统扩展和升级,可以有效地解决汽车倒车、建筑施工工地以及一些工业现场的位置监控。 关键词AT89C51;超声波;测距

Abstract Ultrasonic wave has strong pointing to nature ,slowly energy consumption ,propagating distance farther ,so, in utilizing the scheme of distance finding that sensor technology and automatic control technology combine together ,ultrasonic wave finds range to use the most general one at present ,it applies to guard against theft , move backward the radar , water level measuring,building construction site and some industrial scenes extensively. This subject has introduced principle and characteristic of the ultrasonic sensor in detail ,and the performance and characteristic of one-chip computer AT89C51 of Atmel Company ,and on the basis of analyzing principle that ultrasonic wave finds range ,the systematic thinking and questions needed to consider that have pointed out that designs and finds range ,provide low cost , the hardware circuit of high accuracy , ultrasonic range finder of miniature digital display and software design method taking AT89C51 as the core. Modular design of the whole circuit from the main program, pre subroutine fired subroutine receive subroutine. display subroutine modules form. SCM comprehensive analysis of the probe signal processing, and the ultrasonic range finder function. On the basis of the overall system design, hardware and software by the end of each module. The research has led to the discovery that the software and hardware designing is justified, the anti-disturbance competence is powerful and the real-time capability is satisfactory and by extension and upgrade, this system can resolve the problem of the car availably, building construction the position of the workplace and some industries spot supervision. Key words AT89C51; Ultrasonic Wave; Measure Distance

基于51单片机的超声波测距系统

基于51单片机的超声波测距系统 贾源 完成日期:2011年2月22日

目录 一、设计任务和性能指标 (3) 1.1设计任务 (3) 1.2性能指标 (3) 二、超声波测距原理概述 (4) 2.1超声波传感器 (5) 2.1.1超声波发生器 (5) 2.1.2压电式超声波发生器原理 (5) 2.1.3单片机超声波测距系统构成 (5) 三、设计方案 (6) 3.1AT89C2051单片机 (7) 3.2超声波测距系统构成 (8) 3.2.1超声波测距单片机系统 (9) 图3-1:超声波测距单片机系统 (9) 3.2.2超声波发射、接收电路 (9) 图3-1:超声波测距发送接收单元 (10) 3.2.3显示电路 (10) 四.系统软件设计 (11) 4.1主程序设计 (11) 4.2超声波测距子程序 (12) 4.3超声波测距程序流程图 (13) 4.4超声波测距程子序流程图 (14) 五.调试及性能分析 (14) 5.1调试步骤 (14) 5.2性能分析 (15) 六.心得体会 (15) 参考文献 (16) 附录一超声波测系统原理图 (18) 附录二超声波测系统原理图安装图 (19) 附录三超声波测系统原理图PCB图 (20) 附录四超声波测系统原理图C语言原程序 (21) 参考文献 (26)

一、设计任务和性能指标 1.1设计任务 利用单片机及外围接口电路(键盘接口和显示接口电路)设计制作一个超声波测距仪器,用LED数码管把测距仪距测出的距离显示出来。 要求用Protel 画出系统的电路原理图,印刷电路板,绘出程序流程图,并给出程序清单。 1.2性能指标 距离显示:用三位LED数码管进行显示(单位是CM)。 测距范围:25CM到 250CM之间。误差:1%。

基于单片机的超声波测距仪设计

基于单片机的超声波测距仪设计

基于单片机的超声波测距仪设计 1总体设计方案介绍 1.1超声波测距原理 发射器发出的超声波以速度υ在空气中传播,在到达被测物体时被反射返回,由接收器接收,其往返时间为t,由s=vt/2即可算出被测物体的距离。由于超声波也是一种声波,其声速v 与温度有关,下表列出了几种不同温度下的声速。在使用时,如果温度变化不大,则可认为声速是基本不变的。如果测距精度要求很高,则应通过温度补偿的方法加以校正。 表1-1 超声波波速与温度的关系表 表1-1 1.2超声波测距仪原理框图如下图 单片机发出40kHZ的信号,经放大后通过超声波发射器输出;超声波接收器将接收到的超声波信号经放大器放大,用锁相环电路进行检波处理后,启动单片机中断程序,测得时间为t,再由软件进行判别、计算,得出距离数并送LED

显示。 图1-1 超声波测距仪原理框图 2 系统的硬件结构设计 硬件电路的设计主要包括单片机系统及显示电路、超声波发射电路和超声波检测接收电路三部分。单片机采用AT89C51或其兼容系列。采用12MHz高精度的晶振,以获得较稳定时钟频率,减小测量误差。单片机用P1.0端口输出超声波换能器所需的40kHz的方波信号,利用外中断0口监测超声波接收电路输出的返回信号。显示电路采用简单实用的4位共阳LED数码管,段码用74LS244驱动,位码用PNP三极管8550驱动。 2.1 51系列单片机的功能特点及测距原理 2.1.1 51系列单片机的功能特点 5l系列单片机中典型芯片(AT89C51)采用40引脚双列直插封装(DIP)形式,内部由CPU,4kB的ROM,256 B的RAM,2个16b的定时/计数器TO和T1,4个8 b的工/O端I:IP0,

10米超声波测距仪设计实现

10米超声波测距仪设计实现 一、功能要求 设计一个超声波测距仪,可以测量测距仪与被测物体间的距离。要求测量范围0.1~10.00米,测量精度1cm,测量时与被测物体不接触,并将测量结果显示出来。 二、系统硬件电路 1.单片机系统及显示电路 单片机采用89C51或89S51。采用12MHz高精度晶振,以获得较稳定的时钟频率,减小测量误差。单片机用p1.0端口输出超声波换能器所需的40Hz方波信号,利用外中断0口监测超声波接受电路输出的返回信号。显示电路采用简单实用的4位共阳极LED数码管,段码用74LS244驱动,位用PNP8550驱动。 2.超声波发射电路 主要由74LS04和超声波换能器T构成。这种推挽形式的方波信号可以提高发射强度。反相器并联提高驱动能力。上拉电阻R1、R2提高74LS04输出高电平的驱动能力。 3.超声波接收电路 CX20106A是接收38KHz超声波的芯片,可利用它做接收电路。 4.系统程序 超声波测距仪的软件主要由主程序、超声波发生子程序、超声波接收中断程序及显示子程序组成。 主程序:

开始 系统初始化 发送超声波脉冲 等待反射超声波 计算距离 显示结果 丢系统初始化,设置T0为方式1,EA=1,P0,P2清0。为避免超声波发射器直接接传送到接收器,需要延时0.1ms。由于时钟的频率是12MHz,计数器每计一个数就是1us。如果按声速344m/s,则d=c*t/2=172T0 cm 超声波发生子程序:通过P1.0端口发送2个左右超声波脉冲信号,脉宽12us,同时T0计数。 超声波测距仪利用中断0检测返回的超声波,一旦接收到返回的信号,立即进入中断。中断后就立即关闭T0停止计时。如果计数器益出则测试不成功。 3方案设计和选择 根据本次设计的要求,方案的选择应力求实用性强,性价比高,使用简单。 3.1 超声波测距的基本原理 谐振频率高于20kHz的声波被称为超声波。超声波

超声波测距课程设计样本

目录 前言 1课题设计目及意义----------------------------------------------- 1 1.1设计目----------------------------------------------------- 1 1.2设计意义----------------------------------------------------- 1 1.3课题设计任务和规定------------------------------------------- 1 正文 1 课程方案设计------------------------------------------------- 2 1.1系统整体方案--------------------------------------------------- 2 1.2系统整体方案论证-------------------------------------------- 2 2系统硬件构造设计------------------------------------- 2 2.1 51系列单片机功能特点及测距原理------------------------------ 3 2.1.1 51系列单片机功能特点------------------------------------- 3 2.1.2 单片机实现测距原理 ----------------------------------------- 3 2.2 超声波电路构造------------------------------------------------ 4 2.3 超声波测距系统硬件电路设计---------------------------------- 4 2.4 PCB版图设计---------------------------------------------------- 5 3 系统软件设计----------------------------------------- 6 3.1 超声波测距仪算法设计---------------------------------------- 7 3.2 主程序流程图--------------------------------------------------- 7 3.3单片机某些C语言程序-------------------------------------------- 8 3.4超声波测距某些C语言程序-------------------------------------- 11

用51单片机实现HC-SR04超声波测距程序

#include //包括一个52标准内核的头文件 #define uchar unsigned char //定义一下方便使用 #define uint unsigned int #define ulong unsigned long sbit Trig = P1^0; //产生脉冲引脚 sbit Echo = P3^2; //回波引脚 sbit test = P1^1; //测试用引脚 uchar code SEG7[10]={~0xC0,~0xF9,~0xA4,~0xB0,~0x99,~0x92,~0x82,~0xF8,~0x80,~0x90};//数码管0-9 uint distance[4]; //测距接收缓冲区 uchar ge,shi,bai,temp,flag,outcomeH,outcomeL,i; //自定义寄存器 bit succeed_flag; //测量成功标志 //********函数声明 void conversion(uint temp_data); void delay_20us(); void main(void) // 主程序 { uint distance_data,a,b; uchar CONT_1; i=0; flag=0; test =0; Trig=0; //首先拉低脉冲输入引脚 TMOD=0x11; //定时器0,定时器1,16位工作方式 TR0=1; //启动定时器0 IT0=0; //由高电平变低电平,触发外部中断 ET0=1; //打开定时器0中断 EX0=0; //关闭外部中断 EA=1; //打开总中断0 while(1) //程序循环 { EA=0; Trig=1; delay_20us(); Trig=0; //产生一个20us的脉冲,在Trig引脚 while(Echo==0); //等待Echo回波引脚变高电平 succeed_flag=0; //清测量成功标志 EX0=1; //打开外部中断 TH1=0; //定时器1清零 TL1=0; //定时器1清零 TF1=0; //

基于51单片机超声波测距仪

基于51单片机超声波测距仪

基于51单片机的超声波测距仪设计 摘要 利用超声波进行测距有许多优点比如不受光强度、色彩和电磁场等外界因素的影响,而且超声波传感器的价位较低、结构也较为简单,超声波以声速传播,方便收发与计算。在汽车倒车雷达、移动机器人的避障、特别是测量距离等许多方面都已有了非常普遍的应用。 本次毕业设计的超声波测距仪是在STC89C51单片机的基础上设计的,在分析和了解了超声波的一些优点和特性后,又查看了利用超声波测距的基本原理。最后决定使用51单片机系统和超声波传感器共同组成。设计的超声波测距仪的硬件部分主要包括电源及复位模块、单片机与超声波模块组成的超声波发射模块、超声波接收模块、LED数码显示模块和扩展报警模块。软件部分主要包括单片机主程序、根据超声波发射与接收计算距离程序、LED距离显示程序、按键控制程序和蜂鸣器报警程序,这样安排使得系统具有模块化的特点。系统容易进行控制,具有可靠地的性能,具有较高的测量精度,最重要的是能对距离进行实时测量。 关键词:单片机,测距仪,超声波,实时测量

Design of Ultrasonic Distance Meter Based on 51 MCM ABSTRACT Using ultrasonic ranging has many advantages for example, from the effects of light intensity, color and electromagnetic field and other external factors and price lower ultrasonic sensors, the structure is simple, ultrasonic sounds velocity, convenient transceiver and calculation. In the car reverse radar, mobile robot obstacle avoidance, especially measuring distance and many other aspects have been very common application. The graduation design of ultrasonic range finder based on STC89C51 MCU design, analysis and understanding of the some advantages and characteristics of ultrasonic and looked at the use of the basic principle of ultrasonic distance measurement. Finally, the composition of the 51 single-chip microcomputer system and ultrasonic sensor is decided.. The design of ultrasonic rangefinder hardware part consists of the power and reset module, SCM and ultrasonic module consists of ultrasonic emission module, ultrasonic receiving module, LED digital display expansion module and alarm module. Software part mainly includes MCU program, according to the ultrasonic transmitting and receiving computing program distance, the distance of LED display program, key control procedures and buzzer alarm procedures, this arrangement enables the system to have the characteristics of modular. The system is easy to control and has the reliable performance, and has the higher accuracy, and the most important is the real-time measurement of the distance. KEY WORDS: Single chip microcomputer,Range finder,Ultrasonic,Real-time measurement

相关主题
文本预览
相关文档 最新文档