单片机汽车倒车测距仪资料
单片机在汽车倒车测距仪中的应用设计

单片机在汽车倒车测距仪中的应用设计汽车倒车测距仪是一种能够帮助驾驶员识别周围障碍物并确保安全倒车的装置。
在汽车倒车测距仪的设计中,单片机起到了核心作用。
本文将详细介绍单片机在汽车倒车测距仪中的应用设计。
汽车倒车测距仪一般由超声波传感器、蜂鸣器、显示屏和控制单元组成。
超声波传感器负责检测离车辆最近的障碍物距离,蜂鸣器负责发出警告声音,显示屏用于显示距离信息,控制单元则负责接收传感器的输入信号,处理数据并控制其他模块的工作。
在设计单片机控制单元时,首先需要选择合适的单片机芯片。
一般来说,选择具有较多GPIO(通用输入输出)口的单片机可以很好地满足设计要求。
常见的单片机如STC89C52、AT89S52等都是经典的选择。
接下来,需要编写相应的程序代码。
在程序的设计中,需要考虑以下几个方面:1.硬件初始化:设置GPIO口的输入输出方向,配置传感器和其他外设的工作模式。
2.数据采集:通过超声波传感器获取到周围障碍物的距离信息,并将其转化为电压信号输入到单片机的模拟输入口。
通过定时中断或者外部中断的方式触发采集动作,并将采集到的数据存储在单片机的RAM中。
3.数据处理:将采集到的距离数据进行计算和处理,判断是否需要发出警告信号。
可以设置一个合理的临界值,当距离低于该值时,触发蜂鸣器发出警告声音。
此外,还可以根据距离的变化情况进行数据平滑处理,以减少误差。
4.控制输出:根据距离数据的处理结果,控制蜂鸣器的开关状态。
一般来说,通过GPIO口的高低电平控制蜂鸣器的开关。
5.显示输出:将采集到的距离数据通过显示屏进行显示,方便驾驶员观察。
可以选择液晶显示屏、数码管等合适的显示装置。
除了上述核心功能之外,还可以进一步完善功能。
例如可以增加倒车影像系统,通过摄像头和液晶显示屏将后方的图像实时显示出来;还可以增加倒车雷达系统,通过多个传感器进行距离测量,实现更准确的倒车辅助功能。
综上所述,单片机在汽车倒车测距仪中的应用设计主要包括硬件初始化、数据采集、数据处理、控制输出和显示输出等功能。
汽车倒车测距仪

题目:汽车倒车测距仪目录1、课程设计目的及内容要求----------------32、设计思路及原理----------------------------33、电路设计原理图----------------------------44、程序清单及流程图-------------------------95、问题分析及解决方法----------------------146、心得体会-------------------------------------15一、设计内容及要求1、设计一个微机控制的汽车倒车测距仪,能测量并显示车辆后部障碍物离车辆的距离,同时用间歇的“嘟嘟”声发出警报,“嘟嘟”声间隙随障碍物距离缩短而缩短,驾驶员不但可以直接观察到检测的距离,还可以凭听觉判断车后障碍物离车辆距离的远近;①开机后先显示“———”,并有开机指示灯。
②CPU发射超声波1ms,然后显示60ms;即1ms+60ms为一个工作周期,等待回波,在次周期内完成一次探测。
③根据距离远近发出报警声并显示距离。
障碍物距离小于1m,距离值变化5cm更换显示,否则不更换;距离在1m以上,新值与原显示值之差大于10cm更换,否则不更换。
④用三LED位数码管显示障碍物距离2、硬件电路原理图和软件框图;3 编写控制程序,写出设计任务书(总结报告)。
4设计任务:(1)、选用8088和适当的存储器及接口芯片完成相应的功能。
(2)、用LED显示器显示电子锁的当前状态。
(3)、画出详细的硬件连接图。
(4)、给出程序设计思路、画出软件流程图。
(5)、给出地址分配表。
(6)、给出所有程序清单并加上必要注释。
(7)、完成设计说明书(列出参考文献,所用器件型号)。
二、设计原理超声波测距原理:利用发射超声波的装置向着某一方向发射一束超声波,再利用计时器计算超声波发出以及遇到障碍物反射回来的时间差来测量距离。
由声音在空气中的传播速度v=340m/s及匀速运动位移关系式:s=vt可计得声音往返距离s,则s/2就是单程距离。
-汽车倒车测距仪

一、应用系统的一般构成1、硬件系统按照系统所需功能,系统硬件结构可以划分为三大主要模块:测距系统、控制系统以及显示和语音报警系统。
系统总体结构框图如1所示.图1 系统总体结构图其中测距系统有超声波发射、接收子系统构成;控制部分以AT89S51单片机为核心,其P1.0口输出低电平控制超声波发射电路产生40KHz的超声波,利用外部中断监测超声波接收电路输出的返回信号;显示报警部分由显示系统及语音系统构成,其中显示系统采用简单实用的4位共阳8段LED数码管。
二、设计原则和要求倒车测距仪是一个由单片机控制的汽车泊车安全辅助装置。
该测距仪将单片机的实时控制及数据处理功能,与超声波的测距技术、传感器技术相结合,能够测量并显示车辆后部障碍物里车辆的距离,同时用间歇的“嘟嘟”声发出警报,“嘟嘟”声间隙随障碍物距离的缩小而缩短,驾驶员不但可以直接观察到显示的距离,还可以凭听觉判断车后障碍物离车辆的远近,解除了驾驶员泊车和起动车辆时前后左右探视所引起的困扰,并可以帮助驾驶员扫除视野死角和视线模糊的缺陷,提高驾驶的安全性。
三、基本设计内容和步骤本文将在以单片机为控制核心的基础上,设计出汽车倒车测距仪的电路,并通过数码管显示及蜂鸣器报警来提示障碍物与车后的距离。
分别完成单片机控制电路设计、数码管显示电路设计、蜂鸣器报警电路设计、按键控制电路设计及超声波测距模块的安装与调试等。
软件设计中,通过汇编语言编写程序,完成单片机对外围芯片的驱动与控制,从而完成整个汽车倒车测距仪的功能实现。
四、硬件和软件的具体设计1、系统硬件的具体设计(1)单片机控制电路设计采用AT89S51作为系统控制器。
它是美国ATMEL公司生产的低功耗、高性能CMOS 8位单片机,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。
它集Flash程序存储器既可在线编程,也可用传统方法进行编程。
AT89S51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,看门狗,2个数据指针,2个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,单片机振荡器及时钟电路。
基于单片机实现的超声波汽车倒车探测器倒车雷达

摘要超声波汽车倒车探测器是一种能够实时显示车后障碍物状况的汽车倒车辅助装置。
在现实生活中应用十分广泛。
本文根据声波在空气中可定向发射和反射的原理,以超声波换能器为接口部件,应用单片机技术设计了一套超声波测距系统。
文章提出了微处理器控制的超声波汽车倒车测距系统的设计方案。
微处理器计算超声波从发射到接收的时间,在数据处理中采用温度补偿技术对超声波在空气中的传播速度进行修正,计算出距离,并根据障碍物与车尾的距离远近情况发出不同等级的报警声,同时显示车后障碍物与车体的距离。
论文概述了超声波探测器的发展状况及基本原理。
对测距系统发射、接收、检测、显示等部分的设计方案进行了分析。
从系统的性能需求、实用要求出发,对系统组成、检测原理和方法作出选择并对软硬件进行了设计。
文章详细叙述了系统的硬件设计过程,并给出了系统软件设计程序流程图,通过误差分析,说明了系统应用的实用性。
目录前言 (1)1 概述 (2)1.1选题的意义 (2)1.2 超声波汽车倒车探测器的应用和发展现状 (2)2 设计方案分析 (5)2.1测距方式和提示方式比较 (5)2.1.1测距方式 (5)2.1.2 预警提示方式 (7)2.2 方案确定 (8)2.2.1 测距探测器方案 (10)2.2.2 超声波发射方案 (11)2.2.3超声波回波接收方案 (11)2.2.4 温度测量及补偿方案 (12)2.2.5 显示及报警方案 (12)3 硬件电路设计 (13)3.1 硬件框图 (13)3.2 单片机最小系统设计 (14)3.3超声波发送电路设计 (15)3.4超声波接收电路设计 (17)3.5 温度测量电路设计 (20)3.6 报警电路设计 (21)3.7 显示电路设计 (22)3.8 电源电路设计 (24)3.8.1 +5V和+12V稳压电源 (24)3.8.2 稳压电源电路 (25)3.9 器件说明 (26)3.9.1 AT89C2051单片机 (26)3.8.2 超声波传感器 (27)4 软件设计 (28)4.1 系统软件结构 (28)4.2 初始化程序 (31)4.3测温电路程序 (31)4.4 中断程序设计 (36)4.5 报警及显示驱动程序 (38)5 效能分析 (40)参考文献 ............................ 错误!未定义书签。
基于89C51单片机的汽车倒车测距仪的毕业设计

东莞职业技术学院毕业论文汽车倒车测距仪的设计学生姓名:黄瑜学号:201330140307年级专业:2013级电子信息工程技术指导老师:胡叶容系部:电子工程系广东·东莞提交日期:2016年5月目录目录 (I)摘要 (II)1前言 (1)1.1课题研究的意义和背景 (1)1.2国内的发展现状 (1)1.3设计思想及方案论证 (2)1.3.1设计要求 (2)1.3.2总体方案论证与选择 (2)2 硬路设计 (3)2.1系统硬件设计及组成 (3)2.1.1总体方案组成框图 (3)2.1.2超声波测距模块 (3)2.1.2单片机最小系统 (4)2.1.3时钟电路 (7)2.1.4复位电路 (8)2.1.5 蜂鸣器报警模块 (8)2.1.6 显示模块 (9)2.1.7 键盘接口模块 (10)2.2 焊接 (10)3 软件设计 (12)3.1程序流程 (12)3.2数据处理(距离计算)、显示以及报警函数 (12)4调试及误差分析 (14)4.1硬件调试 (14)4.2硬软件联调 (14)4.3测试结果分析 (16)4.3.1测试中仪器仪表 (16)4.3.2 数据分析 (16)4.3.3超声波测距误差分析 (16)5总结 (18)参考文献 (19)致谢 (20)汽车倒车测距仪的设计作者:黄瑜指导老师:胡叶容(东莞职业技术学院2013级电子信息工程技术,东莞 523808)摘要随着汽车的日益普及,由于人为原因而产生的碰撞问题也日益增多,而倒车碰撞占碰撞事故的大部分。
为提高汽车驾驶和倒车的安全性,设计了一种基于AT89C52的汽车倒车测距仪的系统。
该系统利用超声波在空气中传播遇障碍物反射的原理,以超声波传感器为借口部件,应用AT89C52单片机利用超声波在空气中的时间差来数据处理设计出了能精确测量点间距离的超声波测距仪,利用所设计出的汽车倒车仪能精确测量车后障碍物的距离,实时发出报警信号,使驾驶员能时刻链接倒车时车后的环境并采取积极有效的处理措施,从而实现汽车驾驶的安全。
基于51单片机的超声波测距倒车雷达实例-(1)资料

摘要本设计采用以AT89S58单片机为核心的低成本、高精度、微型化数字显示超声波测距仪的硬件电路和软件设计方法。
整个电路采用模块化设计,由主程序、预置子程序、发射子程序、接受子程序、显示子程序、语音播报子程序等模块组成。
发射模块发射超声波,接受模块接受回波,单片机计算距离,显示测量结果。
各探头的信号经单片机综合分析处理,实现超声波测距仪的各种功能。
在此基础上设计了系统的总体方案,最后通过硬件和软件实现了各个功能模块。
相关部分附有硬件电路图、程序流程图。
超声波测距今年来得到了广泛的应用。
本设计的优点在于超声波明显特征是方向性好,穿透性强。
尤其是在光不透明的固体中,它碰到杂质或分界面就有显著地反射。
用超声波测距离时通过测量发射的超声波与接受到被测物体反射的回波之间的时间差来确定的。
关键词:AT89S51,超声波,测距目录第一章绪论 (1)1.1课题设计目的及意义 (1)1.1.1设计的目的 (1)1.1.2设计的意义 (1)1.2超声波测距仪的现状和发展 (1)1.2.1发展历史 (1)1.2.2 研究现状 (3)1.3本课题研究的主要内容 (3)第二章系统方案论证 (4)2.1超声波测距仪的设计思路 (4)2.1.1超声波测距原理 (4)2.1.2超声波测距仪原理框图 (4)2.1.3课题设计的要求 (4)2.2超声波测距方法的选择 (4)2.3超声波发生器选择 (6)2.4超声波接受传感器 (6)2.5显示单元选择 (6)2.6语音播报电路选择 (7)2.7温度传感器的选择 (7)第三章系统的硬件结构设计 (9)3.1 AT89S51单片机的功能及特点 (9)3.1.1主要性能参数 (9)3.1.2功能特性概述 (9)3.2单片机最小系统 (10)3.3单片机测距原理 (11)3.4超声波发射电路 (12)3.5超声波检测接收电路 (13)3.6温度补偿电路 (14)3.7显示单元电路 (15)3.7.1 12864液晶资料 (16)3.7.2 12864液晶基本特性 (16)3.8语音播报电路 (17)3.9无线发射与接收电路 (18)3.9.1APC240无线通信模块主要特点 (18)3.9.2APC240无线通信模块主要技术指标 (19)第四章系统的软件设计 (20)4.1超声波测距仪的算法设计 (20)4.2主程序流程图 (20)4.3超声波发生子程序和超声波接收中断程序 (22)4.4系统的软硬件的调试 (24)总结 (25)致谢 (27)参考文献 (28)附录一超声波测距电路原理图 (30)附录二程序清单 (31)第一章绪论1.1课题设计目的及意义1.1.1设计的目的随着科学技术的快速发展,超声波将在测距仪中的应用越来越广。
基于单片机的汽车倒车雷达系统设计(含程序)介绍
基于单片机的汽车倒车雷达系统设计摘要随着社会经济的发展交通运输业日益兴旺,汽车的数量在大副攀升。
交通拥挤状况也日趋严重,撞车事件屡屡发生,造成了不可避免的人身伤亡和经济损失,针对这种情况,设计一种响应快,可靠性高且较为经济的汽车倒车防撞预警系统势在必行。
本设计是利用最常见的超声波测距法来设计的一种基于单片机的汽车倒车雷达系统。
本设计的主要是基于STC89C52单片机利用超声波的特点和优势,将超声波测距系统和STC89C52单片机结合于一体,设计出一种基于STC89C52单片机的汽车倒车雷达系统。
该系统采用软、硬件结合的方法,实现了汽车与障碍物之间距离的显示以及危险距离的声光报警等功能。
本设计论文概述了超声波检测的发展及基本原理,阐述了超声波传感器的原理及特性。
在超声波测距系统功能和STC89C52单片运用的基础上,提出了系统的总体构成,对系统各个设计单元的原理进行了介绍,并且对组成各单元硬件电路的主要器件做了详细说明和选择。
本设计论文还介绍了系统的软件结构,并通过编程来实现系统功能和要求。
关键词:汽车倒车雷达、STC89C52、超声波、测量距离、显示距离、声光报警第一章绪论1.1 课题设计的目的和意义随着汽车的普及,越来越多的家庭拥有了汽车。
交通拥挤状况也随之出现,撞车事件也是经常发生,人们在享受汽车带来的乐趣和方便的同时,更加注重的是汽车的安全性,许多“追尾”事故都与车距有着密切的关系。
为了解决这个安全问题,设计一种汽车测距防撞报警系统势在必行。
由于超声波指向性强,能量消耗缓慢,在介质中传播的距离较远,因而超声经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。
利用超声波检测往往比较迅速、方便、计算简单。
所以超声波测距法是一种非常简单常见的方法,应用在汽车停车的前后左右防撞的近距离测量,以及在汽车倒车防撞报警系统中,超声波作为一种特殊的声波,具有声波传输的基本物理特性—折射,反射,干涉,衍射,散射。
基于51单片机的超声波倒车雷达测距
毕业设计题目:基于51单片机的超声波倒车雷达测距学院:电气与信息工程学院专业:电气工程与其自动化摘要超声波是频率高于20KHZ的声波,具有指向性强,能量消耗缓慢,在介质中传播的距离较远的特点,因而超声波经常用于距离的测量,如测距仪和物位测量仪等都可以通过超声波来实现。
利用超声波检测往往比较迅速、方便、计算简单、易于做到实时控制,并且在测量精度方面能达到工业实用的要求,因此在液位、井深、管道长度的测量、移动机器人定位和避障等领域得到了广泛的应用。
基于此,本次设计尝试使用AT89S52与HY-SRF05模块来实现超声波的测量,结合外围电路模块实现距离显示与语音播报构成超声波测距系统。
本次超声波测距系统由单片机计时与控制电路、超声波发射接收模块、测量距离显示电路、语音电路等部分组成。
详细介绍了超声波测距模块与AT89S52单片机的测距原理。
以HY-SRF05超声波测距模块为核心实现超声波的发射与接收。
整体电路结构简单,成本低廉,工作稳定,测量精度也达到实际应用要求。
关键词:AT89S52;超声波;HY-SRF05;测距AbstractUltrasound is sound waves with frequency higher than 20KHz, it has strong directivity and consumes energy slowly, at the same time it spreads farther in the same medium. Therefore ultrasound is often used for distance measurement, such as the range finder and level measurement and so on can be achieved by it. Use of ultrasonic detection tends to be quickly, convenient and simple calculation, easy to do real-time control. In the measurement precision it can reach industry practical requirement. So in liquid level, well depth, pipe length measurement, mobile robot localization and obstacle avoidance, etc a wide range of applications.This ultrasonic distance measurement system by single-chip timing and display circuit of the control circuits, ultrasound modules, measuring distances, voice circuits and other components. Details the ultrasonic range finder and AT89S52 microcontroller module location. Core realization of ultrasonic HY-SRF05 ultrasonic distance measurement modules for transmit and receive. A whole circuit of simple structure, low cost, stable, measurement precision to reach the actual application requirements.Keywords:AT89S52;Ultrasonic wave;HY-SRF05;Measure distance目录摘要IAbstractII第1章绪论11.1 课题研究的背景11.2 国外研究现状11.3 课题研究的意义2第2章超声波测距原理42.1 超声波简介42.2 超声波测距原理4第3章方案论证63.1 设计思路63.2 系统结构设计7第4章硬件电路设计84.1 单片机AT89S5284.2 超声波测距模块HY-SRF05104.2.1 基本工作原理104.2.2 HY-SRF05电气参数114.2.3 超声波时序图124.2.4 超声波应用电路图124.3 温度传感器DS18B20124.4 LCD1602液晶134.4.1 LCD1602主要技术参数134.4.2 LCD1602引脚功能144.4.3 LCD1602应用电路图144.5 ISD1420语音芯片154.5.1 特点154.5.2 电特性154.5.3 ISD1420引脚功能154.5.4 ISD1420语音电路16第5章系统软件设计185.1 主程序185.2 超声波测距子程序185.3 测温子程序20第6章系统调试分析226.1 硬件电路测试226.2 软件调试226.3 误差分析23结论25参考文献26致27附录28附录A:实物作品28附录B: 原理图29附录C: PCB图30附录D: 程序30第1章绪论1.1 课题研究的背景随着我国经济的飞速发展,交通运输车辆的不断增多,由此产生的交通问题越来越成为人们关注的问题。
基于单片机的超声波测距仪任务书
XXXX学院XX系
专业方向课程设计任务书
题目基于单片机的超声波测距仪汽车倒车雷达设计_________________ 指导教师______________ 一、小组成员信息及分工:
、设计的主要内容:
采用HC-SR04超声波传感器进行测距,超声波测到的距离实时显示到数码管上。
当测出的实际距离小于设定值时,LED灯亮起、蜂鸣器响起发出报警信号。
三、设计的主要技术指标:
①可测量的范围:0.05m--5.5m
②可设置报警距离:通过按键加减操作修改报警距离
四、设计的基本要求及应完成的成果:
①单片机主控模块:采用51系列单片机作为主控芯片。
②用HC-SR04超声波模块测距。
③数码管显示单元:实时显示测出的距离。
④报警单元:采用蜂鸣器报警。
⑤按键单元:通过按键设置安全距离。
五、设计的进度安排:
2017410-2017415 :搜集资料、杳阅资料,复习专业课程知识,形成初步设计思路。
六、设计应收集的资料及主要参考文献:。
基于单片机的超声波测距倒车雷达
############本科生毕业论文(设计)基于单片机的超声波测距倒车雷达Based on single chip ultrasonic reversing radar专业电气工程及其自动化姓名张栋学号 12039417指导教师张商州完成时间2016.05独创性声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。
尽我所知,除文中特别加以标注和致谢的地方外,论文中不包括其他人已经发表或撰写过的研究成果,也不包含为获得商洛学院或其他教育机构的学位或证书而使用过的材料。
与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。
学位论文作者签名:日期:关于论文使用授权的说明本人完全了解商洛学院有关保留、使用学位论文的规定,即:学校有权保留送交论文的复印件,允许论文被查阅和借阅;学校可以公布论文的全部或部分内容,可以采用影印、缩印或其他复制手段保存论文。
□公开□保密(____年____月)(保密的学位论文在解密后应遵守此协议)签名:导师签名:日期:基于单片机的超声波测距倒车雷达摘要:汽车工业的增长与繁荣带来汽车保有量的大幅提高。
然而,汽车保有量的增长也带来道路拥堵和交通事故频发等问题。
通过统计分析可知:倒车过程很容易导致各种事故的发生,如何简化倒车过程,并且提高倒车过程的安全性是至关重要的。
在各种倒车辅助系统中,最常用的环境探测手段是测距,而在几种车载测距方式中,最成熟,也最实用于倒车辅助过程的是超声波测距。
超声波具有一定的优良物理学特性,使其广泛应用在各个领域。
超声波测距常用的方法有时间差法、脉冲法等。
其中脉冲法实现起来简单,成本低,可应用的测距范围较大,因此选用该方法。
超声波在空气中传播的速度主要与温度有关,因此测距系统需要探知外界环境的温度。
超声波在空气中传播时会有衰减,40kHz的超声波最适于超声波测距应用。
STC89C52是STC系列单片机里应用比较广泛的一款,在自动控制领域里享有很高的价值,以其易用性和多功能性受到了广大电子设计爱好者的好评。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机汽车倒车测距仪学号:班级:姓名:摘要本设计是一种基于AT89C52单片机的超声波测距系统,由单片机模块、超声波模块、液晶显示模块等组成。
本设计利用一片单片机对超声波信号循环不断地进行采集,能测量出倒车方向的障碍物与汽车之间的距离,并通过LCD显示模块显示两者之间的距离,然后通过蜂鸣器发出不同频率的声响,从而起到提示和报警的作用。
关键词:单片机超声波液晶显示信号AbstractThis design is a kind of ultrasonic ranging system based on AT89C52 MCU,MCU, ultrasonic module by module, LCD module. This design using a single chipon the ultrasonic signal continuously collected, can measure between the obstacle and the car reversing the direction of the distance, and through the LCDdisplay module to display the distance between the two, and then through the buzzer sounds of different frequencies and different colors of the LED light out,thus plays the role of tips and alarm.Keywords: single chip ultrasonic liquid crystal display signal目录1 方案设计................................................................................................. 错误!未定义书签。
1.1主控模块选择 (5)1.2超声波模块................................................................ 错误!未定义书签。
1.3液晶显示模块............................................................ 错误!未定义书签。
1.4提示报警模块............................................................ 错误!未定义书签。
2 结束语3 参考文献................................................................................................. 错误!未定义书签。
4 附件1 方案设计1.1主控模块选择单片机控制模块在本系统中处于核心地位,其工作包括号的采集,进行数据处理,控制执行机构的运行等。
对单片机控制模块的基本要求是具有较高的速度且资源配置满足要求。
A T89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。
单片机技术成熟,且易操作,所以主控芯片选择AT89C52单片机。
1.2超声波模块本模块性能稳定,测度距离精确。
能和国外的SRF05,SRF02等超声波测距模块相媲美。
模块高精度,盲区(2cm)超近,测量稳定。
使用本模块,占用单片机的两个IO口,一个IO口做为触发端。
一个IO口做为回波PWM信号捕捉引脚。
写程序时,先在TRIG引脚端为一个大约10US的高电平触发模块,同时模块内部将发出8个40kHz周期电平并检测回波。
并在内部程序处理变换成一个PWM的信号从Echo引脚输出,一旦检测到有回波信号则输出回响信号,高电平持续的时间就是超声波从发射到返回的时间.测试距离=(高电平时间*声速(340M/S))/2; 目前的超声波模块精度能到1cm。
1.3液晶显示模块字符型液晶显示模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,专门用于显示字母、数字、符号等点阵式LCD。
LCD1602LCD1是字符型液晶,它是16*2的显示的,采用标准的16脚(带背光)接口,各引脚接口说明如表:1.4提示报警模块蜂鸣器是一种一体化结构的电子讯响器,主要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等组成。
它的发声原理是电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,因此需要一定的电流才能驱动它,单片机IO引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。
通过一个三极管C8550来放大驱动蜂鸣器。
根据声音的不同频率来辨别距离的不同。
2结束语通过调试完成了题目的基本设计要求,在某些方面系统性能还超过了题目要求。
通过设计学会了软件编程和硬件开发技能,懂得了软硬件结合的设计,理论联系实际的重要性,这对我们以后的学习和工作不无裨益。
当然,我们的设计还存在着一些缺陷,有待于在将来设计中进一步提高。
3参考文献[1] 王兆安刘进军电力电子技术(第五版)北京:机械工业出版社 2009.5[2]童诗白华成英模拟电子技术基础(第四版)北京:高等教育出版社 2006.5[3] 阎石数字电子技术基础(第五版) 北京:高等教育出版社 2006.5[4] 孙涵芳徐爱卿单片机原理及应用北京:北京航空航天大学出版社 2004.64附件附件:1 系统框图附件:2 电路图附件:3 实物附件:4 程序#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#include<intrins.h>sbit RS = P2^6; //定义端口sbit RW = P2^5;sbit EN = P2^4;sbit TX = P1^0;sbit RX = P1^1;sbit BEEP=P1^2;#define RS_CLR RS=0#define RS_SET RS=1#define RW_CLR RW=0#define RW_SET RW=1#define EN_CLR EN=0#define EN_SET EN=1#define DataPort P0#define uchar unsigned char#define uint unsigned intunsigned char code ASCII[ ] = {'0','1','2','3','4','5','6','7','8','9'}; unsigned char disbuff[ ] = { 0,0,0,0,};/*------------------------------------------------uS延时函数,含有输入参数 unsigned char t,无返回值unsigned char 是定义无符号字符变量,其值的范围是0~255 这里使用晶振12M,精确延时请使用汇编,大致延时长度如下 T=tx2+5 uS------------------------------------------------*/void DelayUs2x(unsigned char t){while(t--);}/*------------------------------------------------mS延时函数,含有输入参数 unsigned char t,无返回值unsigned char 是定义无符号字符变量,其值的范围是0~255 这里使用晶振12M,精确延时请使用汇编------------------------------------------------*/ void delay1(unsigned int t){while(t--);}void DelayMs(unsigned char t){while(t--){//大致延时1mSDelayUs2x(245);DelayUs2x(245);}}/*------------------------------------------------判忙函数------------------------------------------------*/ bit LCD_Check_Busy(void){DataPort= 0xFF;RS_CLR;RW_SET;EN_CLR;_nop_();EN_SET;return (bit)(DataPort & 0x80);}/*------------------------------------------------写入命令函数------------------------------------------------*/ void LCD_Write_Com(unsigned char com){while(LCD_Check_Busy()); //忙则等待RS_CLR;RW_CLR;EN_SET;DataPort= com;_nop_();EN_CLR;}/*------------------------------------------------写入数据函数------------------------------------------------*/void LCD_Write_Data(unsigned char Data){while(LCD_Check_Busy()); //忙则等待RS_SET;RW_CLR;EN_SET;DataPort= Data;_nop_();EN_CLR;}/*------------------------------------------------清屏函数------------------------------------------------*/ void LCD_Clear(void){LCD_Write_Com(0x01);DelayMs(5);}/*------------------------------------------------写入字符函数------------------------------------------------*/void LCD_Write_Char(unsigned char x,unsigned char y,unsigned char Data) {if (y == 0){LCD_Write_Com(0x80 + x);}else{LCD_Write_Com(0xC0 + x);}LCD_Write_Data( Data);}/*------------------------------------------------初始化函数------------------------------------------------*/void LCD_Init(void){LCD_Write_Com(0x38); /*显示模式设置*/DelayMs(5);LCD_Write_Com(0x38);DelayMs(5);LCD_Write_Com(0x38);DelayMs(5);LCD_Write_Com(0x38);LCD_Write_Com(0x08); /*显示关闭*/LCD_Write_Com(0x01); /*显示清屏*/LCD_Write_Com(0x06); /*显示光标移动设置*/ DelayMs(5);LCD_Write_Com(0x0C); /*显示开及光标设置*/}/*------------------------------------------------ 时间换算------------------------------------------------*/ void Conut(void){uint T,S;//,flag;T=TH0*256+TL0;TH0=0;TL0=0;S= 20.4*T/1100; //算出来是CMif(S>20&S<=30){BEEP=1; //将P0.0口赋值 0,该口电平为低,蜂鸣器不响delay1(50000); //调用延时程序;更改延时数字可以更改延时长度;//用于改变声音频率BEEP=0; //将P0.0口赋值 1,该口电平为高,使蜂鸣器响delay1(50000);}if(S>10&S<=20){BEEP=1; //将P0.0口赋值 0,该口电平为低,蜂鸣器不响delay1(30000); //调用延时程序;更改延时数字可以更改延时长度;//用于改变声音频率BEEP=0; //将P0.0口赋值 1,该口电平为高,使蜂鸣器响delay1(30000);}if(S<=10){BEEP=1; //将P0.0口赋值 0,该口电平为低,蜂鸣器不响delay1(5000); //调用延时程序;更改延时数字可以更改延时长度;//用于改变声音频率BEEP=0; //将P0.0口赋值 1,该口电平为高,使蜂鸣器响delay1(5000);}disbuff[0]=S%1000/100;disbuff[1]=S%1000%100/10;disbuff[2]=S%1000%10 %10;LCD_Write_Char(7, 1, ASCII[disbuff[0]]);LCD_Write_Char(8, 1, ASCII[disbuff[1]]);LCD_Write_Char(9, 1, ASCII[disbuff[2]]);LCD_Write_Char(11, 1, 'C'); //显示CLCD_Write_Char(12, 1, 'M'); //显示M}/********************************************************/void zhongduan0() interrupt 1 //T0中断用来计数器溢出,超过测距范围{uchar flag;flag=1; //中断溢出标志}/********************************************************/void StartModule() //启动模块{TX=1; //启动一次模块 _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){LCD_Init(); //初始化LCD_Clear();//清屏TMOD=0x01; //设T0为方式1,GATE=1;TH0=0;TL0=0;ET0=1; //允许T0中断EA=1; //开启总中断while (1){StartModule();while(!RX); //当RX为零时等待TR0=1; //开启计数while(RX); //当RX为1计数并等待TR0=0; //关闭计数 Conut();DelayMs(10);}}。