基于51单片机超声波测距

合集下载

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

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

目录摘要 (1)一. 绪论 (2)二.超声波测距的原理 (3)2.1 超声波的基本理论 (3)2.2 超声波测距系统原理 (7)三. 系统硬件的具体设计与实现 (8)3.1 系统原理和框图 (8)3.2 功能模块的设计 (8)3.2.1 单片机介绍 (8)3.2.1.1 AT89C51管脚说明 (9)3.2.1.2 AT89C51主要特性 (10)3.2.1.3芯片擦除 (11)3.2.2 超声波测距模块HC-SR04 (11)3.2.2.1 产品特点 (11)3.2.2.2 基本原理 (12)3.2.2.3 电气参数 (12)3.2.2.4 超声波时序图 (12)四. 系统软件设计 (13)1. 程序设计思路 (13)2. 程序流程图 (13)3. 程序 (14)五. 总结 (15)六. 致 (16)七. 参考文献 (17)八.附录 (18)1.原理图 (18)2.PCB图 (19)3.主程序 (19)摘要基于传统的测距方法在很多特殊场合:如带腐蚀的液体,强电磁干扰,有毒等恶劣条件下,测量距离存在不可克服的缺陷,超声波测距能很好的解决此类的问题。

本系统主要以AT89C51单片机为核心,结合超声波测距模块HC-SR04、数码管、蜂鸣器等硬件平台,对超声波测距系统的原理、数码管显示、单片机的应用等进行了分析和验证。

关键词:超声波测距模块,AT89C51,数码管。

AbstractIn many special occasions, traditional measuring distance methods based on the existence of insurmountable distance measuring defects, such as the measurement of corrosion in the liquid with strong electromagnetic interference, toxic and other adverse conditions. The ultrasonic range can be a very good solution to the problem. This system mainly uses AT89C51 microcontroller as the core,hardware platform combined with the HC-SR04 ultrasonic ranging module,digital tube,buzzer etc. Analyzed and validated the principle of ultrasonic ran,d igital tube’s display,the application of single-chip microcomputer etc.Keywords: ultrasonic ranging module,AT89C51,Digital tube.一. 绪论随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。

基于51单片机的超声波测距报告

基于51单片机的超声波测距报告

- 11 -
(六)附录 程序清单 ;********************************************
;* 超声波测距器 * ;* 采用 STC 89C54RC+ 12MHZ 晶振 * ;* 采用共阴 LED 显示器 LRM 2011.06.20 * ;******************************************** ;测距范围 7CM-1M,堆栈在 4FH 以上,20H 用于标志 ;显示缓冲单元在 40H-43H,使用内存 44H、45H、46H 用于计算距离 ; VOUT EQU P1.0 ; 红外脉冲输出端口 ; ;******************************************** ;* 中断入口程序 * ;******************************************** ; ORG 0000H LJMP START ORG 0003H ;中断 0 LJMP PINT0 ORG 000BH ;定时器 0 溢出 LJMP INTT0 ORG 0013H ;中断 1 RETI ORG 001BH ;定时器 1 溢出 LJMP INTT1 ORG 0023H ;串行口中断 RETI ORG 002BH RETI ; ;******************************************** ;* 主 程 序 * ;******************************************** ; START: MOV SP,#4FH MOV R0,#40H ;40H-43H 为显示数据存放单元 (40H 为最高位) MOV R7,#0BH CLEARDISP: MOV @R0,#00H INC R0 DJNZ R7,CLEARDISP

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

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

一设计要求(1)设计一个以单片机为核心的超声波测距仪,可以应用于汽车倒车、工业现场的位置监控;(2)测量范围在0.50~4.00m,测量精度1cm;(3)测量时与被测物无直接接触,能够清晰稳定地显示测量结果。

二超声波测距系统电路总体设计方案本系统硬件部分由AT89S52控制器、超声波发射电路及接收电路、温度测量电路、声音报警电路和LCD显示电路组成。

汽车行进时LCD显示环境温度,当倒车时,发射和接收电路工作,经过AT89S52数据处理将距离也显示到LCD 上,如果距离小于设定值时,报警电路会鸣叫,提醒司机注意车距。

超声波测距器的系统框图如下图所示:图5 系统设计总框图由单片机AT89S52编程产生10us以上的高电平,由指定引脚输出,就可以在指定接收口等待高电平输出。

一旦有高电平输出,即在模块中经过放大电路,驱动超声波发射探头发射超声波。

发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路的处理,指定接收口即变为低电平,读取单片机中定时器的值。

单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。

由时序图可以看出,超声波测距模块的发射端在T0时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序,定时器停止计数。

计算时间差,即可得到超声波在媒介中传播的时间t,由此便可计算出距离。

图6 时序图三超声波发射和接收电路的设计分立元件构成的发射和接收电路容易受到外界的干扰,体积和功耗也比较大。

而集成电路构成的发射和接收电路具有调试简单,可靠性好,抗干扰能力强,体积小,功耗低的优点,所以优先采用集成电路来设计收发电路。

3.1 超声波发射电路超声波发射电路包括超声波产生电路和超声波发射控制电路两部分,可采用软件发生法和硬件方法产生超声波。

在超声波的发射电路的设计中,我们采用电路结构简单的集成电路构成发射电路:图7 由反相器构成的超声波发射电路图7是由反相器74HC04构成的发射电路,用反相器74HC04构成的电路简单,调试容易,易通过软件控制。

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

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

本系统由51单片机及相关外围电路构成,系统由单片机系统、发射电路与接收放大电路和显示电路几部分组成。

测距范围:25CM到250CM之间。

误差:1%。

距离显示:用三位LED 数码管进行显示(单位是CM)。

该接收电路结构简单,性能较好。

硬件电路的设计主要包括单片机系统及显示电路、超声波发射电路和超声波接收电路三部分。

单片机采用AT89C2051。

采用12MHz高精度的晶振,以获得较稳定时钟频率,减小测量误差。

单片机用P3.5端口输出超声波换能器所需的40kHz的方波信号,P3.6端口监测超声波接收电路输出的返回信号。

显示电路采用简单实用的3位共阳LED数码管,段码输出端口为单片机的P1口,位码输出端口分别为单片机的P3.2、P3.1、P3.0口,数码管位驱运用PNP三极管S9012三极管驱动。

超声波发射、接收电路如图。

超声波发射部份由电阻R2及超声波发送头T40板成;接收电路由BG1、BG2X组成的两组三级管放大电路组成;检波电路、比较整形电路由C7、D1、D2及BG3组成。

40kHz的方波由A T 8 9 C 2 0 5 1单片机的P 3 .5驱动超声波发射头发射超声波,经反射后由超声波接收头接收到40kHz的正弦波,由于声波在空气中传播时衰减,所以接收到的波形幅值较低,经接收电路放大,整形,最后输出一负跳变,输入单片机的P3脚。

该测距电路的40kHz方波信号由单片机A T 8 9 C 2 0 5 1 的P 3 .5发出。

方波的周期为1/40ms,即25µs,半周期为12.5µs。

每隔半周期时间,让方波输出脚的电平取反,便可产生40kHz 方波。

由于单片机系统的晶振为12M晶振,因而单片机的时间分辨率是1µs,所以只能产生半周期为12µs或13µs的方波信号,频率分别为41.67kHz和38.46kHz。

本系统在编程时选用了后者,让单片机产生约38.46kHz的方波。

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

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

基于51单片机超声波测距仪基于51单片机的超声波测距仪设计摘要利用超声波进行测距有许多优点比如不受光强度、色彩和电磁场等外界因素的影响,而且超声波传感器的价位较低、结构也较为简单,超声波以声速传播,方便收发与计算。

在汽车倒车雷达、移动机器人的避障、特别是测量距离等许多方面都已有了非常普遍的应用。

本次毕业设计的超声波测距仪是在STC89C51单片机的基础上设计的,在分析和了解了超声波的一些优点和特性后,又查看了利用超声波测距的基本原理。

最后决定使用51单片机系统和超声波传感器共同组成。

设计的超声波测距仪的硬件部分主要包括电源及复位模块、单片机与超声波模块组成的超声波发射模块、超声波接收模块、LED数码显示模块和扩展报警模块。

软件部分主要包括单片机主程序、根据超声波发射与接收计算距离程序、LED距离显示程序、按键控制程序和蜂鸣器报警程序,这样安排使得系统具有模块化的特点。

系统容易进行控制,具有可靠地的性能,具有较高的测量精度,最重要的是能对距离进行实时测量。

关键词:单片机,测距仪,超声波,实时测量Design of Ultrasonic Distance Meter Based on 51 MCMABSTRACTUsing 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目录摘要 (I)目录 (III)第1章绪论 (1)1.1 研究背景 (1)1.2 研究的主要意义 (1)第2章系统电路设计 (3)2.1 系统结构设计 (3)2.2 电路总体设计方案 (3)2.2.1 发射与接收电路设计方案 (3)2.2.2 显示电路设计方案 (5)2.2.3 报警电路设计方案 (6)2.2.4 系统复位电路设计 (6)第3章系统硬件设计 (8)3.1 单片机概述 (8)3.1.1 STC89C51主要性能 (8)3.1.2 STC89C51外部结构及特性 (8)3.1.3 STC89C51内部组成 (11)3.2 超声波测距模块 (12)3.2.1 超声波传感器介绍 (12)3.2.2HC-SR04超声波测距芯片的性能特点 (12)3.2.3 超声波时序图 (15)3.3 驱动显示电路及报警电路 (15)3.3.1LED数码管显示电路 (16)3.3.2 蜂鸣器报警电路 (17)3.4HC-RS04超声波测距原理 (17)3.5 按键设置电路 (18)第4章系统软件设计 (21)4.1 系统主程序 (21)4.2 显示距离子程序 (22)4.3 报警子程序 (22)4.4 按键子程序 (23)第5章系统仿真 (25)5.1 系统仿真环境——Proteus (25)5.2 仿真 (25)5.3 误差及特性分析 (26)结论 (28)谢辞 (29)参考文献 (30)第1章绪论1.1 研究背景超声波测距法是通过超声波测量从已知位置到被测物体表面的距离的利用超声波的方法。

基于51单片机超声波测距报警系统课程设计

基于51单片机超声波测距报警系统课程设计

基于51单片机超声波测距报警系统课程设计一、引言超声波测距技术是一种常见的非接触式测距技术,具有测距范围广、精度高等优点。

在日常生活中,超声波测距技术被广泛应用于车辆倒车雷达、智能家居中的人体感应等领域。

本文将介绍基于51单片机的超声波测距报警系统的课程设计。

二、设计思路本课程设计主要分为硬件设计和软件设计两部分。

硬件部分主要包括超声波模块、LCD显示屏、蜂鸣器等模块的连接和电路设计;软件部分主要包括51单片机程序设计及LCD显示程序编写。

三、硬件设计1. 超声波模块连接超声波模块是实现测距功能的核心部件。

在本课程设计中,我们采用HC-SR04型号的超声波模块。

该模块需要连接到51单片机上,具体连接方式如下:- 将VCC引脚连接到51单片机上的5V电源;- 将GND引脚连接到51单片机上的GND;- 将Trig引脚连接到P2.0口;- 将Echo引脚连接到P2.1口。

2. LCD显示屏连接LCD显示屏用于显示测距结果和报警信息。

在本课程设计中,我们采用1602型号的LCD显示屏。

该模块需要连接到51单片机上,具体连接方式如下:- 将VSS引脚连接到51单片机上的GND;- 将VDD引脚连接到51单片机上的5V电源;- 将VO引脚连接到一个10K电位器,再将电位器两端分别接到GND 和5V电源;- 将RS引脚连接到P1.0口;- 将RW引脚连接到P1.1口;- 将EN引脚连接到P1.2口;- 将D4-D7引脚分别连接到P0口的高四位。

3. 蜂鸣器连接蜂鸣器用于报警。

在本课程设计中,我们采用被动式蜂鸣器。

该模块需要连接到51单片机上,具体连接方式如下:- 将正极引脚(一般为长针)连接到51单片机上的P3.7口;- 将负极引脚(一般为短针)连接到51单片机上的GND。

四、软件设计1. 51单片机程序设计在本课程设计中,我们采用Keil C51作为编程工具,使用C语言编写程序。

主要程序流程如下:- 定义超声波模块的Trig和Echo引脚;- 定义LCD显示屏的RS、RW、EN和D4-D7引脚;- 定义蜂鸣器的引脚;- 定义变量存储测距结果和报警状态;- 初始化LCD显示屏、超声波模块等模块;- 循环执行以下操作:- 发送超声波信号并计算回波时间,从而得到距离值;- 根据距离值判断是否需要报警,并控制蜂鸣器发出报警声音;- 将测距结果和报警状态显示在LCD显示屏上。

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

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

江苏经贸职业技术学院毕业设计(论文)单片机的超声波测距仪设计基于题目:MCS51) 信息技术学院系 (院12应用电子专业班级1227031128 号学学生姓名万小伟董李江职校内导师称老师职夏国平企业导师称工程师职企业导师潘仕美称研究生5年2015月日12基于MCS51单片机的超声波测距仪设计摘要:伴随着社会的发展,人们的生活质量不断地提高,各个的城市不断地在发展,当然城市的排水系统得到了很大的发展和改进,由于很多的原因和很多的因素,每个城市的排水系统,现在的城市的发展和建设往往忽略一些重要的项目那就是排水系统。

所以好多的城市经常出现开挖已经建设好的建筑和工程设施来改进排水系统因此他们忽视到这个问题的严重性。

因此,我的论文设计是采用以AT89C51单片机为核心的高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法它还有一个重要的指标那就是低成本一种的设计方法。

通过一系列的实验反馈,这个软件设计的非常的合理、低成本、实时性良好,经过开发和研究,因此在许多的方面得到很多的发展和有效的解决一些重要的问题比如在汽车的倒车,建筑的工地上,还有一些重要的工业现场的重要的位置等等。

关键词:超声波测距仪AT89C51The design of ultrasonic range finder based onMCS51Abstract:With the development of science and technology, the improvement of people'sstandard of living, speeding up the development and construction of the city. urban drainagesystem have greatly developed their situation is constantly improving. control system Freesewage culvert clear guarantee robot, the robot is designed to clear the culvert sewage to thecore.At the core of the design using AT89C51 low-cost, high accuracy, Micro figures show that theultrasonic range finder hardware and software design methods. signal processing, and theultrasonic range finder function. On the basis of the overall system design, hardware andsoftware by the end of each module.Keywords: Silent Wave Measure Distance AT89S52目录第一章绪论 ................................................ - 1 -1.1课题设计的目的和意义 (1)1.2超声波测距仪设计思路 (1)1.2.1超声波测距原理及方案论证 (1)1.2.2超声波测距仪原理框图 (2)第二章课程的方案设计 ...................................... - 3 -2.1系统整体方案的设计 (3)第三章 51系列单片机的功能特点及测距原理 ................... - 3 -3.1基于51系列单片机的功能特点 (3)3.2单片机实现测距原理 (4)3.3超声波测距原理和结构 (5)3.4超声波检测发射电路 (5)3.5超声波检测接受电路 (5)第四章系统的软硬件的调试和程序图 .......................... - 6 -总结 ..................................................... - 10 -致谢 ..................................................... - 10 -参考文献 .................................................. - 11 -第一章绪论1.1课题设计的目的和意义论文设计目的;随着社会的不断地发展,电子测量技术得到了长远的展,超声波的精准测量得到了科技人员的重视和研究。

推荐-51单片机的超声波测距 非常详细已处理 精品

推荐-51单片机的超声波测距 非常详细已处理  精品

基于51单片机的超声波测距毕业非常详细目录目录1摘要 2第1章超声波测距系统设计 31.1 超声波测距的原理 31.2超声波测距系统电路的设计 31.2.1 总体设计方案 31.2.2发射电路的设计 41.2.3接收电路的设计 51.2.4显示模块的设计 61.3超声波测距系统的软件设计71.4本章小结9第2章绪论102.1 课题背景,目的和意义 102.2两种常用的超声波测距方案102.2.1基于单片机的超声波测距系统102.2.2基于CPLD的超声波测距系统112.3课题主要内容12第3章超声波传感器133.1超声波传感器的原理与特性13 3.1.1原理133.1.2特性143.2超声波传感器的检测方式153.3超声波传感器系统的构成163.4本章小结17第4章 AT89C51单片机简介184.1单片机基础知识184.1.1单片机的内部结构184.1.2单片机的基本工作原理204.2单片机的分类及发展214.3单片机AT89C51的特性224.4本章小结25第5章电路调试及误差分析265.1电路的调试265.2系统的误差分析265.2.1声速引起的误差 265.2.2单片机时间分辨率的影响27 5.4本章小结28结论29致谢30参考文献31附录1 31附录2 36附录3 38摘要超声波具有指向性强,能量消耗缓慢,传播距离较远等优点,所以,在利用传感器技术和自动控制技术相结合的测距方案中,超声波测距是目前应用最普遍的一种,它广泛应用于防盗、倒车雷达、水位测量、建筑施工工地以及一些工业现场。

本报告详细的介绍了超声波传感器的原理和特性,以及Atmel公司的AT89C51单片机的性能和特点,并在分析了超声波测距的原理的基础上,指出了设计测距系统的思路和所需考虑的问题,给出了以AT89C51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。

该系统电路设计合理、工作稳定、性能良好、检测速度快、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求。

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

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

个性化实验基于51单片机超声波测距器设计摘要传统地测距方法存在不可克服地缺陷.例如,液面测量就是一种距离测量,传统地电极法是采用差位分布电极,通过给电或脉冲来检测液面,电极由于长期浸泡于水中或其他液体中,利用超声波测量距离就可以解决这些问题,因此超声波测量距离技术在工业控制、勘探测量、机器人定位和安全防范等领域得到了广泛地应用.本设计以STC89C52单片机为核心控制定时器产生超声波脉冲并计时,计算超声波自发射至接收地往返时间,从而得到实测距离.并且在数据处理中采用了温度补偿对声速进行调整,用1602液晶显示速度和测量距离.整个硬件电路有超声波电路、电源电路、显示电路等组成.个探头地信号经单片机综合分析处理,实现超声波测距器地功能.在此基础上设计了系统地总体方案,最后通过硬件和软件实现了测距功能.此系统具有易控制、工作可靠、测距准确度高、可读性强和流程清晰等优点,即过系统扩展和升级,可以有效地解决汽车倒车,建筑施工工地以及一些工业现场地位置监控.关键词:STC89C52;超声波;温度补偿;测距目录绪论 (3)设计目地和意义 (3)设计任务和要求 (3)系统方案设计 (4)设计原理 (4)设计框图 (5)主要元器件介绍 (5)STC89C52 (5)LCD1602液晶显示器 (6)HC-SR04超声波模块 (8)DS18B20温度传感器 (9)系统硬件结构设计 (10)单片机电路 (10)LCD显示电路 (11)温度补偿电路 (11)电源电路 (12)系统软件设计 (12)主程序流程 (12)测距流程图 (13)测试 (14)测试结果 (14)误差分析 (15)总结 (15)附录 (17)整体电路图 (17)PCB布线图 (18)实物图 ......................................................................................................错误!未定义书签。

基于51单片机的超声波测距模块

基于51单片机的超声波测距模块

基于51单片机的超声波测距模块By 黄阿阿阿厉第1章HC-SR04超声波测距模块说明1.1 产品特点HC-SR04超声波测距模块能提供2~400cm的非接触式距离感测功能,测量精度可以达到3mm;该模块包括超声波发射器、接收器与控制电路。

1.2 产品介绍HC-SR04模块实物如图1.1所示,引脚如图所示,从上到下分别为VCC,Trig,Echo和GND。

VCC,GND连接电源,Echo和Trig连接51单片机的引脚。

图1.1 HC-SR04模块实物图HC-SR04超声波电气参数如表1.1所示。

表1.1 HC-SRO4电气参数HC-SRO4超声波模块的时序图如图1.2所示。

图1.2 HC-SRO4的时序图HC-SR04的实物规格如图1.3所示。

图1.3 模块尺寸1.3 注意事项HC-SR04超声波模块不宜带电连接,若要带电连接,则先让模块的GND端先连接,否则会影响模块的正常工作。

使用该模块测距时,被测物体的面积不少于0.5平方米平面。

且平面要求尽量平整,否则会影响测量的结果。

1.4 模块分析根据时序图可以知道,只需通过单片机向模块的Trig端提供一个10us以上的脉冲出发信号,该模块内部将会发出8个40KHz的脉冲,并开始检测回波。

一旦检测到有回波信号则输出回响信号。

回响信号的脉冲宽度与所测的距离成正比。

通过检测开始发射信号到收到回响信号的时间间隔,就可以计算得到距离。

根据时序图,这样的方式可能会存在误差,即误差是声音在空气的传播速度并不固定,虽然有一个标准的声速值V=340m/s,但是实际的声速并不固定,所以计算出来的数值在不同的地区会存在差异。

因为资料不足,这里我有一个猜测。

Echo输出电平置零的时刻应该是模块不再接受到回波信号的那一刻,这样,官方提供的计算方法才能说得通。

第2章程序和说明2.1 硬件平台说明本次测试使用的硬件平台,是手创科技提供的51单片机开发板,使用的单片机型号是STC89C52RC。

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

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

机电信息工程学院单片机系统课程设计报告系别:电子工程系专业:通信工程班级:051班设计题目:超声波测距学生:王权于建坤指导教师:董玉华厚杰亚宁婷完成日期:2008年03月19日目录一、设计任务和性能指标1二、设计方案1三、系统硬件设计3四、系统软件设计5五、调试与性能分析8六、心得体会10参考文献11附录1系统硬件电路图12附录2程序清单13一、设计任务和性能指标1.1 设计任务设计一个超声波测距器,可应用在汽车倒车、建筑施工工地以与一些工业现场的位置测控,也可用于如液位、井深、管道长度的测量等场合。

要求用Altium Designer 6画出系统的电路原理图(要求以最少组件,实现系统设计所要求的功能),印刷电路板(要求布局合理,线路清晰),绘出程序流程图,并给出程序清单(要求思路清晰,尽量简洁,主程序和子程序分开,使程序有较强的可读性)。

1.2 性能指标1、测量围10—80 cm;2、测量精度1cm;3、测量时与被测物体无直接接触,能够清晰稳定地显示测量结果;4、测量围扩展为10 cm—4m,提高测量精度。

二、设计方案超声波测距仪是利用超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。

超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:s=340t/2 。

超声波测距主要应用于倒车雷达、建筑施工工地以与一些工业现场,例如:液位、井深、管道长度等场合。

目前国一般使用专用集成电路设计超声波测距仪,但是专用集成电路的成本很高,并且没有显示,操作使用很不方便。

超声波指向性强,穿透能力强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量。

如测距仪和物位测量仪等都可以通过超声波来实现。

但由于超声波传感器的成本较高,所以一般运用于专业领域,民用产品中运用较少。

基于51单片机的超声波测距系统设计单片机与电子技术专业毕业设计毕业论文

基于51单片机的超声波测距系统设计单片机与电子技术专业毕业设计毕业论文

目录目录 (1)摘要 (2)第1章超声波测距系统设计 (3)1.1超声波测距的原理 (3)1.2超声波测距系统电路的设计 (3)1.2.1 总体设计方案 (3)1.2.2发射电路的设计 (4)1.2.3接收电路的设计 (5)1.2.4显示模块的设计 (6)1.3超声波测距系统的软件设计 (7)1.4本章小结 (9)第2章绪论 (10)2.1课题背景,目的和意义 (10)2.2两种常用的超声波测距方案 (10)2.2.1基于单片机的超声波测距系统 (10)2.2.2基于CPLD的超声波测距系统 (11)2.3课题主要内容 (12)第3章超声波传感器 (13)3.1超声波传感器的原理与特性 (13)3.1.1原理 (13)3.1.2特性 (14)3.2超声波传感器的检测方式 (15)3.3超声波传感器系统的构成 (16)3.4本章小结 (17)第4章AT89C51单片机简介 (18)4.1单片机基础知识 (18)4.1.1单片机的内部结构 (18)4.1.2单片机的基本工作原理 (20)4.2单片机的分类及发展 (21)4.3单片机AT89C51的特性 (22)4.4本章小结 (25)第5章电路调试及误差分析 (26)5.1电路的调试 (26)5.2系统的误差分析 (26)5.2.1声速引起的误差 (26)5.2.2单片机时间分辨率的影响 (27)5.4本章小结 (28)结论 (29)致谢 (30)参考文献 (31)附录1 (31)附录2 (36)附录3 (38)摘要超声波具有指向性强,能量消耗缓慢,传播距离较远等优点,所以,在利用传感器技术和自动控制技术相结合的测距方案中,超声波测距是目前应用最普遍的一种,它广泛应用于防盗、倒车雷达、水位测量、建筑施工工地以及一些工业现场。

本报告详细的介绍了超声波传感器的原理和特性,以及Atmel公司的AT89C51单片机的性能和特点,并在分析了超声波测距的原理的基础上,指出了设计测距系统的思路和所需考虑的问题,给出了以AT89C51单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。

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

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

基于51单片机的超声波测距系统完成日期:2011年2月22日一、设计任务和性能指标31.1设计任务 (3)].2性能指标 (3)二、超声波测距原理概述 (4)2.1超声波传感器 (5)2.1.1超声波发生器 (5)2.1.2压电式超声波发生器原理 (5)2.1. 3单片机超声波测距系统构成 (5)三、设计方案63.1 AT89C2051 单片机 (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%。

二、超声波测距原理概述超声波是山机械振动产生的,可在不同介质中以不同的速度传播。

山于超声波指向 性强,能量消耗缓慢,在介质中传播的距离较远,因而超声波经常用于距离的测量,如 测距仪和物位测量仪等都可以通过超声波来实现。

超声测距是一种非接触式的检测方 式。

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

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

基于51单片机的超声波测距超声波:超声波是由机械振动产生的, 可在不同介质中以不同的速度传播, 具有定向性好、能量集中、传输过程中衰减较小、反射能力较强等优点。

超声波传感器可广泛应用于非接触式检测方法,它不受光线、被测物颜色等影响, 对恶劣的工作环境具有一定的适应能力, 因此在水文液位测量、车辆自动导航、物体识别等领域有着广泛的应用。

超声波测距原理:超声波测距是通过不断检测超声波发射后遇到障碍物所反射的回波, 从而测出发射和接收回波的时间差Δt , 然后求出距离S 。

在速度v 已知的情况下,距离S 的计算,公式如下:S = vΔt/ 2。

在空气中,常温下超声波的传播速度是334 米/秒,但其传播速度V 易受空气中温度、湿度、压强等因素的影响,其中受温度的影响较大,如温度每升高1 ℃, 声速增加约0. 6 米/ 秒。

因此在测距精度要求很高的情况下, 应通过温度补偿的方法对传播速度加以校正。

已知现场环境温度T 时, 超声波传播速度V 的计算公式如下:V = 331.5 + 0. 607T这样, 只要测得超声波发射和接收回波的时间差Δt 以及现场环境温度T,就可以精确计算出发射点到障碍物之间的距离。

超声波测距模块:(1):采用IO口TRIG触发测距,给至少10us的高电平信号;(2):模块自动发送8个40khz的方波,自动检测是否有信号返回;(3):有信号返回,通过IO口ECHO输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。

测试距离=(高电平时间*声速(340M/S))/2。

例程:/******************超声波测距1602显示******************单片机型号:STC89C52RC*开发环境:KEIL*名称:超声波测距液晶1602显示/**********************包含头文件*********************/#include <reg52.h>#define LCD_Data P0#define Busy 0x80/**********************宏定义*************************/#define SPEED_30C 3495 //30摄氏度时的声速,声速V=331.5+0.6*温度;#define SPEED_23C 3453 //23摄氏度时的声速,声速V=331.5+0.6*温度;/**********************位定义*************************/sbit ECHO=P1^6;sbit TRIG=P1^5;sbit BEEP=P2^3;sbit LCD_RS=P1^0;sbit LCD_RW=P1^1;sbit LCD_E=P2^5;/********************定义变量和数组*******************/long int distance=0; //距离变量unsigned char code table0[]={" SL-51A "};unsigned char code table1[]={" NO ECHO "};unsigned char code table2[]={"Distance:xxx.xcm"};unsigned char count;void Delay5Ms(void);void delay(int In,int Out);void WriteDataLCD(unsigned char WDLCD);void WriteCommandLCD(unsigned char WCLCD,BuysC);unsigned char ReadDataLCD(void);unsigned char ReadStatusLCD(void);void LCDInit(void);void DisplayOneChar(unsigned char X,unsigned char Y,unsigned char DData);void DisplayListChar(unsigned char X,unsigned char Y,unsigned char code *DData);void delayt(unsigned int x){unsigned char j;while(x-->0){for(j=0;j<125;j++){;}}}void Delay5Ms(void){unsigned int TempCyc=3552;while(TempCyc--);}void delay(int In,int Out){int i,j;for(i=0;i<In;i++){for(j=0;j<Out;j++){;}}}void Alarm(unsigned char t){unsigned char i;for(i=0;i<t;i++){BEEP=0;delay(10,1000);BEEP=1;delay(10,1000);}}void Init_timer(void){TMOD=0x01;TL0=0x66;TH0=0xfc;ET0=1;EA=1;}void Init_Parameter(void){TRIG=1;ECHO=1;count=0;distance=0;}void display(int number){unsigned char b,c,d,e;b=(number/1000);c=(number/100)%10;d=(number/10)%10;e=number%10;DisplayOneChar(9,1,(0x30+b));DisplayOneChar(10,1,(0x30+c));DisplayOneChar(11,1,(0x30+d));DisplayOneChar(13,1,(0x30+e));}void Trig_SuperSonic(void){TRIG=1;delayt(1);TRIG=0;}void Measure_Distance(void){unsigned char l;unsigned int h,y;TR0=1;while(ECHO){;}TR0=0;l=TL0;h=TH0;y=(h<<8)+l;y=y-0xfc66;distance=y+1000*count;TL0=0x66;TH0=0xfc;delayt(30);distance=SPEED_30C * distance / 20000;}void WriteDataLCD(unsigned char WDLCD){ReadStatusLCD();LCD_Data=WDLCD;LCD_RS=1;LCD_RW=0;LCD_E=0;LCD_E=0;LCD_E=1;}void WriteCommandLCD(unsigned char WCLCD,BuysC) {if (BuysC)ReadStatusLCD();LCD_Data=WCLCD;LCD_RS=0;LCD_RW=0;LCD_E=0;LCD_E=0;LCD_E=1;}unsigned char ReadDataLCD(void){LCD_RS=1;LCD_RW=1;LCD_E=0;LCD_E=0;LCD_E=1;return(LCD_Data);}unsigned char ReadStatusLCD(void){LCD_Data=0xFF;LCD_RS=0;LCD_RW=1;LCD_E=0;LCD_E=0;LCD_E=1;while (LCD_Data & Busy);return(LCD_Data);}void LCDInit(void){LCD_Data=0;WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,0);Delay5Ms();WriteCommandLCD(0x38,1);WriteCommandLCD(0x08,1);WriteCommandLCD(0x01,1);WriteCommandLCD(0x06,1);WriteCommandLCD(0x0C,1);}void LCD_Clear(void){WriteCommandLCD(0x01,1);Delay5Ms();}void DisplayOneChar(unsigned char X,unsigned char Y,unsigned char DData){Y&=0x1;X&=0xF;if(Y)X|=0x40;X|=0x80;WriteCommandLCD(X,0);WriteDataLCD(DData);}void DisplayListChar(unsigned char X,unsigned char Y,unsigned char code *DData) {unsigned char ListLength;ListLength=0;Y&=0x1;X&=0xF;while(DData[ListLength]>=0x20){if(X<=0xF){DisplayOneChar(X,Y,DData[ListLength]); ListLength++;X++;}}}void main(void){LCDInit();Init_timer();Init_Parameter();Alarm(2);DisplayListChar(0,0,table0);DisplayListChar(0,1,table1);while(1){Trig_SuperSonic();while(ECHO==0){;}Measure_Distance();DisplayListChar(0,1,table2);display(distance);Init_Parameter();delayt(100);}}void timer0 (void) interrupt 1{TF0=0;TL0=0x66;TH0=0xfc;count++;if(count==18){TR0=0;TL0=0x66;TH0=0xfc;count=0;}}。

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

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

题目基于51单片机的超声波测距仪目录摘要 (1)英文摘要 (2)引言 (3)正文 (4)1 实验平台概述 (4)1.1单片机概述 (4)1.2芯片简介 (5)1.2.1 STC89C51单片机简介 (5)1.2.2 CX20106A芯片简介 (6)1.2.3 74LS04芯片简介 (7)1.2.4 LED数码显示管简介 (8)2 实验设计 (9)2.1系统硬件设计 (9)2.1.1 超声波发射电路设计 (10)2.1.2超声波接收电路设计 (10)2.1.3 超声波显示电路设计 (11)2.1.4 蜂鸣器报警模块设计 (12)2.2系统软件设计 (12)2.2.1 主程序 (13)2.2.2 超声波中断程序 (14)2.2.3 计算和显示距离模块 (16)2.2.4 蜂鸣器报警模块 (19)3 实验结果与分析 (20)结论 (21)参考文献 (22)综述 (23)摘要本文详细的介绍了一种超声波测距仪,它是在51单片机的控制下工作的。

本设计采用的单片机为STC89C51,该单片机使用串口编程、价格便宜而且效率高、稳定性强。

该系统硬件电路设计主要包括单片机系统、超声波发射电路、接收电路、LED 数码管显示以及蜂鸣器报警装置等。

在单片机内部程序的控制下,超声波发射电路将超声波信号发射出去,超声波信号在遇到被测物体后被反射回去,反射回来的超声波信号被超声波接收器接收,然后经过接收电路的检波进行放大以及其他处理,送至单片机,单片机根据超声波的传播速度和超声波从发射到接收所使用的时间,计算出被测物体的距离,所测得的距离值用LED数码管显示出来,与被测物体之间的不同距离利用蜂鸣器报警提示。

因为基于51单片机的超声波测距仪在运用过程中具有较强的稳定性,而且检测的效率高、速度快,测量精度符合测距要求,所以,超声波测距仪具有很高的应用价值。

本设计主要围绕两个方面展开,即超声波测距仪的硬件电路设计和软件程序设计。

关键词:单片机;超声波;测距AbstractThe article describes an ultrasonic range finder in detail, which is under the control of 51 single-chip. The design of the single-chip for the STC89C51, which uses serial programming, it is not only cheap, high efficiency, and strong stability. The hardware circuit design mainly includes single-chip system, ultrasonic transmitter circuit, receiving circuit, LED digital tube display and buzzer alarm device. Under the control of the single-chip internal program, The ultrasonic transmitter circuit emits an ultrasonic signal, the ultrasonic signal is reflected back after encountering the measured object, and the reflected ultrasonic signal is received by the ultrasonic receiver. And then through the receiver circuit to detect the amplification and other processing, sent to the single-chip, the single-chip according to the propagation speed of ultrasound and ultrasound from the launch to the use of the time to calculate the distance of the measured object, the measured distance with LED digital tube Displayed, and the measured distance between the object using the buzzer alarm. Because of the 51 single-chip ultrasonic range finder in the use of the process has a strong stability, and the detection of high efficiency, speed, measurement accuracy in line with the requirements of ranging, so it has a high application value. The design mainly revolves around two aspects, namely the hardware circuit design and software program design of the ultrasonic range finder.Key words: Single-chip; Ultrasonic; Ranging引言随着社会的不断进步,人民的需求逐渐增强,超声波测距仪越来越受到大家的喜爱,在许多方面都得到运用。

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

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

基于51单片机的超声波测距系统设计超声波测距系统在工业自动化、智能机器人等领域有着广泛的应用。

本文将介绍一种基于51单片机的超声波测距系统设计,包括硬件设计和软件设计两个方面。

1.硬件设计硬件设计是超声波测距系统设计的基础,下面是一些主要的硬件设计要点。

(1)传感器模块:选择适合的超声波传感器模块作为测距传感器。

传感器模块一般包括一个超声波发射器和一个超声波接收器。

通过发送超声波脉冲,并测量收到的回波时间来计算距离。

(2)51单片机:选择一款适合的51单片机作为主控芯片。

常用的型号有AT89S51、AT89C52等。

51单片机具有丰富的外设资源,且易于编程。

(3)显示模块:可以选择常见的数码管、液晶显示屏等显示模块来显示测距结果。

(4)电源模块:设计稳定、可靠的电源模块,为系统提供电源供电。

2.软件设计软件设计是实现超声波测距系统的关键,下面是一些主要的软件设计要点。

(1)超声波发射与接收:通过51单片机的IO口驱动超声波传感器模块进行发射与接收。

超声波发射一般只需要发送一个脉冲,而超声波接收则需要采集到回波信号,可以使用定时器或外部中断来实现信号的接收。

(2)测距算法:根据超声波发射和接收的时间间隔,可以通过测距算法来计算出距离。

最常用的测距算法是利用声速的速度和回波时间的一半来计算距离。

(3)数据处理与显示:将测得的距离数据进行处理,并使用显示模块将结果显示出来。

可以选择合适的数码管显示驱动方式或液晶显示屏驱动方式。

(4)系统控制:根据实际需求,可以对系统进行控制,如设置报警阈值,当距离超出阈值时发出报警信号。

3.系统功能与扩展超声波测距系统设计完成后,可以加入一些额外的功能与扩展,以提高系统的实用性和性能。

(1)多点测距:可以设计多个传感器模块,实现多点测距功能,适用于复杂的环境。

(2)数据存储与通信:可以将测得的距离数据存储到外部存储器,如EEPROM或SD卡,并通过串口通信或无线通信方式将数据传输到上位机进行进一步处理。

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

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

基于51单片机超声波测距仪设计超声波测距仪是一种应用较为广泛的测量设备,可以用于测量物体与超声波传感器之间的距离。

本文将基于51单片机设计一个简单的超声波测距仪,并介绍其原理、硬件电路和程序设计。

一、原理介绍:超声波测距仪的工作原理是利用超声波传感器发射超声波,并接收其反射回来的波,通过计算发射和接收之间的时间差,从而确定物体与传感器之间的距离。

超声波的传播速度在空气中近似为331.4m/s,根据速度与时间关系,可以通过测量时间来计算距离。

二、硬件电路设计:1.超声波模块:选用一个常见的超声波模块,包括超声波发射器和接收器。

2.51单片机:使用51单片机作为控制器,负责控制超声波模块和处理测距数据。

3.LCD显示屏:连接一个LCD显示屏,用于显示测距结果。

4.连接电路:将超声波发射器和接收器分别连接到单片机的引脚,将LCD显示屏连接到单片机的相应引脚。

三、程序设计:1.初始化:包括初始化单片机的GPIO引脚、定时器以及其他必要的设置。

2.发送信号:发射一个超声波信号,通过超声波模块的引脚控制。

此时,启动定时器开始计时。

3.接收信号:当接收到超声波的反射信号时,停止定时器,记录计时的时间差。

根据超声波传播速度,可以计算出距离。

4.显示结果:将测得的距离数据显示在LCD显示屏上。

四、实现效果:通过以上设计,可以实现一个简单的超声波测距仪。

在实际应用中,可以根据需求扩展功能,例如增加报警功能、计算速度等。

总结:本文基于51单片机设计了一个超声波测距仪,包括硬件电路设计和程序设计。

通过该设备可以实现对物体与超声波传感器之间的距离进行测量,并将结果显示在LCD显示屏上。

该设计只是一个基本的框架,可以根据需要进行进一步的改进和优化。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一设计要求(1)设计一个以单片机为核心的超声波测距仪,可以应用于汽车倒车、工业现场的位置监控;(2)测量范围在0.50~4.00m,测量精度1cm;(3)测量时与被测物无直接接触,能够清晰稳定地显示测量结果。

二超声波测距系统电路总体设计方案本系统硬件部分由AT89S52控制器、超声波发射电路及接收电路、温度测量电路、声音报警电路和LCD显示电路组成。

汽车行进时LCD显示环境温度,当倒车时,发射和接收电路工作,经过AT89S52数据处理将距离也显示到LCD 上,如果距离小于设定值时,报警电路会鸣叫,提醒司机注意车距。

超声波测距器的系统框图如下图所示:图5 系统设计总框图由单片机AT89S52编程产生10us以上的高电平,由指定引脚输出,就可以在指定接收口等待高电平输出。

一旦有高电平输出,即在模块中经过放大电路,驱动超声波发射探头发射超声波。

发射出去的超声波经障碍物反射回来后,由超声波接收头接收到信号,通过接收电路的处理,指定接收口即变为低电平,读取单片机中定时器的值。

单片机利用声波的传播速度和发射脉冲到接收反射脉冲的时间间隔计算出障碍物的距离,并由单片机控制显示出来。

由时序图可以看出,超声波测距模块的发射端在T0时刻发射方波,同时启动定时器开始计时,当收到回波后,产生一负跳变到单片机中断口,单片机响应中断程序,定时器停止计数。

计算时间差,即可得到超声波在媒介中传播的时间t,由此便可计算出距离。

图6 时序图三超声波发射和接收电路的设计分立元件构成的发射和接收电路容易受到外界的干扰,体积和功耗也比较大。

而集成电路构成的发射和接收电路具有调试简单,可靠性好,抗干扰能力强,体积小,功耗低的优点,所以优先采用集成电路来设计收发电路。

3.1 超声波发射电路超声波发射电路包括超声波产生电路和超声波发射控制电路两部分,可采用软件发生法和硬件方法产生超声波。

在超声波的发射电路的设计中,我们采用电路结构简单的集成电路构成发射电路:图7 由反相器构成的超声波发射电路图7是由反相器74HC04构成的发射电路,用反相器74HC04构成的电路简单,调试容易,易通过软件控制。

单片机输出的方波经过反相器接到发射器T1的两极,用图中的推挽形式将方波信号加到发射器T1两端,可以提高发射器T1的发射强度。

图中把两个非门的输出接到一起的目的是为了提高其吸入电流,电路驱动能力提高。

74HC04是一个高速CMOS六反相器,具有对称的传输延迟和转换时间,而相对于LSTTL逻辑IC,它的功耗减少很多。

另外,上拉电阻R1、R2一方面可以提高反相器74HC04输出高电平的驱动能力,另一方面可以增加发射器T1的阻尼效果,缩短其自由振荡的时间。

3. 2 超声波接收电路图8是由CX20106构成的接收电路,在实物的制作过程中,我们将用CX20106A这一型号代替。

CX20106A是索尼公司生产的彩电专用红外遥控接收器,是CX20106的改进型,也可用于超声波测试,有较强的抗干扰性和灵敏度。

CX20106A采用单列8脚直插式,超小型封装,+5V供电。

管脚1是超声波信号输入端,其输入阻抗约为40K;管脚2的R1、C4决定接收器R的总增益,增大电阻R1或减小电容C4,将使放大倍数下降,负反馈量增大,电容C4的改变会影响到频率特性,实际使用中一般不改动;管脚3与GND之间连接检波电容C2,考虑到检波输出的脉冲宽度变动大,推荐参数为3.3uF;管脚5上的电阻R2用以设置带通滤波器的中心频率,阻值越大,中心频率越低,取R2=200K时,中心频率约为42KHZ;管脚6与GND之间接入一个积分电容C3,电容值越大,探测距离越短;管脚7是遥控命令输出端,它是集电极开路的输出方式,因此该引脚必须接上一个上拉电阻到电源端,没接收信号时,该端输出为高电平,有信号时则会下降;管脚8接+5V电源。

图8 CX20106构成的接收电路综合以上的分析,在由集成电路构成的接收和发射电路中,发射电路我们选用由反相器构成的电路,接收电路采用由红外接收检波芯片CX20106A构成,主要是考虑到系统的调试简单,成本低以及可靠性好。

四单片机主机系统电路4.1 复位电路单片机在RESET端加一个大于20ms正脉冲即可实现复位,上电复位和按钮组合的复位电路如图9。

在系统上电的瞬间,RST与电源电压同电位,随着电容的电压逐渐上升,RST电位下降,于是在RST形成一个正脉冲。

只要该脉冲足够宽就可以实现复位。

当人按下按钮SW1时,使电容C1通过R1迅速放电,待SW1弹起后,C1再次充电,实现手动复位。

图9 复位电路4.2 时钟电路当使用单片机的内部时钟电路时,单片机的XTAL1和XTAL2用来接石英晶体和微调电容,如图10所示。

图10 时钟电路4.3 按键电路我们通过P1.0来启动测量,程序中通过查询P1.0的电平来检测是否按键被按下,在软件中通过软件延时来消除按键的机械抖动。

图11 按键电路4.4 蜂鸣器电路本次设计通过一只蜂鸣器来提示用户按键按下了,现在单片机开始了测距。

蜂鸣器是一块压电晶片,在其两端加上3-5V的直流电压,就能产生3KHz的蜂鸣声,电路如图12。

通过单片机软件产生3KHz的信号从P3.7口送到三极管9013的基极,控制着电压加到蜂鸣器上,驱动蜂鸣器发出声音。

图12 蜂鸣器电路4.5 温度测量电路由于超声波的传播速度c会受温度、湿度、压强等的影响,其中温度的影响尤为严重。

因此在测量精度要求高的场合,应通过温度补偿对超声波的传播速度进行校正,以减小误差。

图13 温度检测电路本系统采用DALLAS公司的DS18B20数字式温度传感器进行温度测量,它所测量的温度值用9位二进制数直接表示,这些值通过DS18B20的数据总线直接输入CPU,无需A/D转换,而且读写指令、温度转换指令都是通过数据总线传入DS18B20,无需外部电源。

DS18B20数字温度传感器与AD590、LM35等温度传感器相比,具有相当的测温范围和精度,温度测量精确、不受外界干扰等优点。

4.6 LCD显示电路本设计采用LCD液晶显示屏来显示距离和温度,具有体积小、功耗低、界面美观大方等优点,这里使用YB1602液晶屏,它具有16个引脚,其正面左起为第一脚,如图14所示:图14 LCD1602实物第一脚VSS:接地。

第二脚VDD:+5V电源。

第三脚VEE:对比度调整端。

使用时通过接一个10K的电阻来调节。

第四脚RS:寄存器选择信号线,H为数据选择,L为指令选择。

第五脚RW:读写信号线。

第六脚E :使能端,当E由高电平跳变为低电平时执行命令。

第7-14脚:8位数据线D0-D7。

第十五脚BLA:背光电源正极输入端。

第十六脚BLK:背光电源负极输入端。

图15 LCD显示电路4.7 电源电路电源电路采用普通可调电源供电,该电源不含稳压器,所以在设计中需要用稳压器进行稳压。

我们选用LM7805来获得稳定的+5V直流电压。

输入电压(<21V)经过7805的稳压输出+5V的电压,图中的D2为保护7805,防止电源极性接反损坏7805,滤波电容采用100uF电解和104瓷片电容并联使用,电磁兼容的实践证明,两个差100倍的电容并联使用效果很好。

本设计电源电路如下:图16 电源电路五.系统软件设计5.1 系统程序的结构(1)DS18B20温度传感器接口模块,分为初始化程序、写入命令以及读取子程序等部分;(2)基于YB1602的显示模块,分为初始化子程序、写入子程序以及显示子程序;(3)温度补偿与距离计算模块,分为超声波发送控制程序、接收处理程序、温度补偿子程序等。

本次设计使用C语言编写程序,C语言相比汇编有许多的优势,编译器使用Keil Version2进行程序编译,Keil功能强大使用方便。

在编译完成后,通过Proteus软件进行仿真,对设计进行验证和优化。

如图17所示描述了各个模块的关系:图17 系统软件方框图5.2 系统主程序本设计主程序的思想如下:(1)温度为两位显示,距离为四位显示单位为mm;(2)温度每隔900ms采样一次,DS18B20在12位精度下转换周期为750ms ,故900ms满足该速度要求;超声波每隔60ms发送一次。

(3)按键SW2为测量启动键;(4)系统采用AT89S52的内时钟:12MHz,每记一次数为1us;图18 主程序流程图5.3 40KHz超声波发送子程序超声波每过60ms发送一次,通过定时器T0中断发送超声波,超声波发送后延时一段时间后返回,防止余波被接收头接收误判,流程图如下:图19 超声波发送子程序流程图5.4 DS18B20温度采集程序DS18B20的工作流程是,初始化→ROM操作指令→存储器操作指令→数据传输。

其工作时序包括:初始化时序、写时序和读时序。

图20 温度采集程序流程图5.5 距离计算子程序距离计算中,实行了温度补偿和角度补偿。

流程图如下:图21 距离计算子程序流程图5.6 数据转换子程序经过程序求出的数据原码无法直接用于显示,必须转换为LCD所接受的BCD码的形式。

图22 数据转换子程序流程图5.7 LCD显示子程序LCD液晶显示程序分为液晶初始化、读忙、写指令和写数据操作,液晶显示器是一块慢器件,所以在执行每条指令之前必须确定模块忙标志为低电平(不忙),否侧此指令无效。

液晶显示子程序流程图如下:图23 LCD显示子程序在程序中,我们将测量的各种结果存放到一个数组num[]中,然后通过这个数组的数据到预先存放字符的数组中去按num[]中的数据的顺序去读取出预存在numcode[]中的字符然后送到LCD中显示。

5.8 基于Proteus的软件仿真图24 Proteus仿真图图25 波形。

相关文档
最新文档