毕业论文测距系统设计.doc

上传人:文库蛋蛋多 文档编号:4026680 上传时间:2023-04-01 格式:DOC 页数:25 大小:627KB
返回 下载 相关 举报
毕业论文测距系统设计.doc_第1页
第1页 / 共25页
毕业论文测距系统设计.doc_第2页
第2页 / 共25页
毕业论文测距系统设计.doc_第3页
第3页 / 共25页
毕业论文测距系统设计.doc_第4页
第4页 / 共25页
毕业论文测距系统设计.doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《毕业论文测距系统设计.doc》由会员分享,可在线阅读,更多相关《毕业论文测距系统设计.doc(25页珍藏版)》请在三一办公上搜索。

1、基于单片机的超声波测距系统设计摘要:本设计是以单片机技术为基础,实现对前方物体距离的测量。根据超声波指向性强,能量消耗慢,在介质中传播距离远的特点,利用超生波传感器对前方物体进行感应,经过单片机中的程序对超声波传感器发射和接收的超声波信号进行分析和计算处理,最后将处理结果在LCD1602上显示。STC89C52单片机的超声波测距系统,此系统根据超声波在空气中传播反射原理,把超声波传感器作为接口部件,利用超声波在空气中传播的时间差来测量距离,设计了一套超声波检测系统。该系统设计主要由主控制器模块、超声波发射模块、超声波接收模块和显示模块等四个基本模块构成,用接收部分接收超声波。本设计利用两个中断

2、,在发射信号时,打开定时器中断0和外部中断0使定时器计时,接收到发射超声波信号时,外部中断0关闭中断,这时定时器中断0计录的时间就为超声波传播经过测距仪到前方物体的来回时间。利用公式S=TV2(V为超生波传播速度,本设计设定值340m/s),经过单片机处理得到距离值S并且通过LCD1602显示出来。关键词:单片机STC89C52,HC-SR04超声波传感器,LCD1602目录第一章 绪论超声波是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减。它也有自已的特性,如它的频率可以非

3、常高,达到兆赫级,因此,它在介质中传播时能量可以集中在很小的范围内,具有良好的成束性,也就是方向性好。1.有关于超声波的简单介绍1.1 课题研究背景超声波1是指频率在20kHz以上的声波,它属于机械波的范畴。超声波也遵循一般机械波在弹性介质中的传播规律,如在介质的分界面处发生反射和折射现象,在进入介质后被介质吸收而发生衰减等。正是因为具有这些性质,使得超声波可以用于距离的测量中。随着科技水平的不断提高,超声波测距技术被广泛应用于人们日常工作和生活之中。一般的超声波测距仪可用于固定物位或液位的测量,适用于建筑物内部、液位高度的测量等。近年来,随着电子测量技术的发展,运用超声波作出精确测量已成可能

4、。随着经济发展,电子测量技术应用越来越广泛,而超声波测量精确高,成本低,性能稳定则备受青睐。1.2 课题研究意义由于超声测距是一种非接触2检测技术,不受光线、被测对象颜色等的影响,较其它仪器更卫生,更耐潮湿、粉尘、高温、腐蚀气体等恶劣环境,对于被测物处于黑暗、有灰尘、烟雾、电磁干扰等恶劣环境有一定的适应能力。具有少维护、不污染、高可靠、长寿命等特点。因此可广泛应用于纸业、矿业、电厂、化工业、水处理厂、污水处理厂、农业用水、环保检测、食品(酒业、饮料业、添加剂、食用油、奶制品)、防汛、水文、明渠、空间定位、公路限高料位测量、车辆自动导航、物体识别与定位、车辆安全行驶辅助系统乃至地形地貌探测等许多

5、领域中。可在不同环境中进行距离准确度在线标定,可直接用于水、酒、糖、饮料等液位控制,可进行差值设定,直接显示各种液位罐的液位、料位高度。因此,超声在空气中测距在特殊环境下有较广泛的应用。利用超声波检测往往比较迅速、方便、计算简单、易于实现实时控制,并且在测量精度方面能达到工业实用的指标要求,因此为了使移动机器人能够自动躲避障碍物行走,就必须装备测距系统,以使其及时获取距障碍物的位置信息(距离和方向)。因此超声波测距在移动机器人的研究上得到了广泛的应用。同时由于超声波测距系统具有以上的这些优点,因此在汽车倒车雷达的研制方面也得到了广泛的应用。1.3国内外相关研究情况国内的超声波测3量主要集中在对

6、010 m固体和液体的测量,一般测量精度高,回波稳定4。近年来随着超声波技术研究的不断深入已广泛应用于各种工业领域,如工业自动控制,建筑工程测量和机器人视觉识别等方面。此外在材料科学、医学、生物科学等领域中也占据重要地位。国外在提高超声波测距方面做了大量的研究,国内的一些学者也作了大量相关的研究。南昌航空工业学院的江泽涛5在温度对液体中超声波速度的影响一文中,洋细地分析了温度对超声波在液体中传播速度的影响,导出了超声波速度同液体压缩系数及密度的关系,研究了压缩系数及密度同温度的关系,进而研究了温度对声速及声时的影响, 用实验测量了不同的液体成分下的声时同温度的关系。Figneroa JF,La

7、mancusa JS6在A method for accurate detection of time of arrival:AnalysiS and design of ultrasonic ranging system一文中,提出一种新的计时方法,该方法的原理是回波时延由峰值时延和相位时延相加而得,分别用不同的检测方法得到峰值时延和相位时延,相加后即得回波的传播时间。2.课题设计的任务和要求主要内容根据所学知识,设计一个基于单片机的超声波测距系统。(1)硬件设计:选择单片机型号和超声波模块,设计主要的电路模块,主要包括:单片机最小系统、键盘接口模块、超声波接口电路模块和显示模块;(2)软件

8、设计:使用Keil C51设计系统软件,并完成联机调试,软件设计的主要模块有:系统初始化、键盘扫描、超声波测距和测量结果显示。 (3)需要实现的技术指标:探测距离:2cm-450cm 精度:可达10mm 第二章 超声波测距原理1.研究方案及选择1.1方案一:基于ARM7的超声波测距系统设计以S3C2410为核心,通过对其进行软件编程,实现该芯片对其外围电路的适时控制,并提供给外围电路各种所需的信号,包括频率振荡信号、数据处理信号和译码显示信号等等,大大简化了外围电路的设计难度,同时更重要的是该种设计方案大大节省了设计成本,并且由于采用软件编程技术,所以其移植性能好,在设计电路时可以将其他更多的

9、功能设计进去8。频率为40kHz左右的超声波在空气中传播的效率最佳,发射的超声波被调制成40kHz左右,具有一定间隔调制脉冲波信号。测距系统结构如图2.1所示。系统由测距系统、控制和显示部分组成。发射电路接收电路S3C2410温度补偿LCD显示图2.1基于ARM的超声波测距系统框图1.2方案二:采用CPLD来控制的超声波测距仪采用CPLD来控制的超声波测距仪,主要是在软件上运用VHDL(Very High Speed Integrated Circuit Hardware Description Language)编写程序使用MAX+plus II软件进行软硬件设计的仿真和调试,最终实现测距功

10、能。使用本方案的优点在于在超声波测距仪设计中采用的是MAX7000s系列中的EPM7128SLC84-15的CPLD器件,其最高频率可达175.4MHz,可用于组合逻辑电路、时序逻辑电路、算法、双端口RAM等的设计。充分利用了其多达128个宏单元、68pin可编程I/O口,使该器件可以将分频功能、计数功能、显示编码功能、振荡功能全部集于一体。又因其延时平均的特点,保证了测距结果精度高、响应速度快。缺点是方案中需要一块FPGA,一块双口RAM,还需要一块用来存储波形数据的EEPROM,那么设计的成本较高。同时在FPGA中还要用硬件描述语言(VHDL语言)编写程序来实现硬件电路功能。由于EPM71

11、28SLC84-15的算法复杂,所以在软件实现起来编程也复杂。1.3方案三:采用51单片机控制的超声波测距系统采用单片机来控制的超声波测距仪是先由单片机产生一个信号,经过信号线,把信号引入到与超声波发射器相连的信号引脚上,再由超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。超声波在空气中的传播速度为340m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离(s),即:S=vt/2原理框图如2.2所示。 t 障碍物 s 超声波发射 超声波接收 图2.2 超声波的测距原理方案一统能够实现自

12、动测距、自动探伤和实时显示功能,集探伤、测距等多种功能于一体,所有运算、处理、显示都实现数字化;并且操作简单。使用方便,所有功能都有按键控制;测量速度快、准确,结果显示直观;仪器依靠电池供电,设有低功耗模式;体积小,携带方便,适用于室内、野外等各种条件下作业。方案三计硬件简单,容易实现,测距范围适中。测量误差可以控制在士1 c m左右。系统软件采用合理算法,提高了测量精度,具有较好的应用价值。另外其使用的51系列单片机以8051为内核,兼容MCS-51系列单片机,内部含有Flash存储器,在系统开发可以反复擦写;用静态时钟方式,可以节省电能;支持ISP(在线编程),不需要把单片机从电路板取下来

13、就可以擦写程序;晶振频率高达24M,运行速度更快,价格也比较便宜;增了看门狗电路,防止程序“走飞”,更加安全可靠。与第二种方案相比,第三种使用的是单片机,编译语言可以用C语言来实现,所以比较简单。2.超声波测距的原理2.1 超声波的基本理论 超声波是一门以物理、电子、机械、以及材料科学为基础的、各行各业都要使用的通用技术之一。该技术在国民经济中,对提高产品质量,保障生产安全和设备安全运作,降低生产成本,提高生产效率特别具有潜在能力。因此,我国对超声波的研究特别活跃。超声技术是通过超声波的产生、传播以及接收的物理过程完成的。超声波具有聚束、定向及反射、投射等特性。按超声波振动辐射大小不同大致可以

14、分为:用超声波使物体或物性变化的功率应用,称之为功率超声;用超声波获取信息,称为检测超声。超声波是听觉阈值之外的振动,其频率范围在1010Hz,其中通常的频率大约在103之间。超声波在超声场(被超声波充满的范围)传播时,如果超声波的波长与超声场相比,超声场很大,超声波就像处在一种无限的介质中,超声波自由地向外扩散;反之,如果超声波的波长与相邻介质的尺寸相近,则超声波受到界面限制不能自由的向外扩散。于是超声波在传播过程中有如下的特性和作用:1 超声波的传播速度超声波在介质中可以产生三中形式的振荡波:横波质点振动方向垂直于传播方向的波;纵波质点振动方向与传播方向一致的波;表面波质点振动介于纵波和横

15、波之间,沿表面传播的波。横波只能在固体中传播,纵波能在固体液体中和气体中传播,表面波随深度的增加其衰减很快。为了测量各种状态下的物理量多采用纵波形式的超声波。超声波的频率越高,越与光波某些特性相似。 超声波与气其他声波一样,其传播速度与介质密度和弹性特性有关。 超声波在气体和液体中,其传播速度C=()式中 介质的密度; 绝对压缩系数。 可以推导出超声波在空气种传播速度。(T为环境温度)。 超声波在固体中的传播速度分两种情况: (1)纵波在固体介质中的传播速度 其传播与介质的形状有关。 (细棒) (薄板) (无限介质)式中 E杨氏模具; 泊松系数; K体积弹性模具; G剪片弹性模。(2)横波声速

16、公式为 (无限介质) 在固体中,介于05之间,因此一般可视为横波声速为纵波的一半。 2 超声波的物理性质当超声波传播到两种特性不同的介质的平面上时,一部分被反射;另一部分透射过界面,在相邻的介质内部继续传播;这样的两种情况称之为超声波的反射和折射,如图2.1.1所示: (1) 超声波的反射和折射 当超声波传播到两种特性阻抗不同介质的平面分界面上时,一部分超声波被反射;另一部分透射过界面,在相邻介质内部继续传播;这样的两种情况称之为超声波的反射和折射,如图2.1.1所示。声波的反射系数和透射系数可以分别由如下两式求得:图 2.1.1 声波反射 式中:分别为声波的入射角和反射角; 分别为两介质的特

17、征阻抗,其中为反射波和折射波的速度。反射角、折射角与声速满足折射定律关系式:。当超声波垂直入射界面时,即,则: 如果sin,入射波完全被反射,在相邻两个介质中没有折射波。如果超声波斜入射到两个固体介质面或两粘滞弹性介质面时,一列斜入射的纵波不仅产生反射纵波和折射纵波,而且还产生反射横波和折射横波。(2)超声波的衰减超声波在一种介质中传播,其声压和声强按指数函数规律衰减。在平面波的情况下,距离声源x处的声压p和声强I的衰减规律如下: 式中:距离声源x=0处的声压和声强; 超声波与声波间的距离; A衰减系数,单位为(奈培/厘米)。(3)超声波的干涉如果在一种介质中传播几个声波,于是产生波的干涉现象

18、。若以两个频率相同,振幅和不等,波程差为d的两个波干涉为例,该两个波合成振幅为,其中为波长。从上式看出,当d=0或d=(为整数)时,合成振幅达到最大值;当d=时,合成振幅为最小值。当时,;当d的奇数倍时,两波相互抵消合成幅度为0。由于超声波的干涉,在辐射器的周围形成一个包括最大最小的扬声场。 3 超声波对声场产生的作用(1) 机械作用超声波传播过程中,会引起介质质点交替的压缩与伸张,构成了压力的变化,这种压力的变化将引起机械效应。超声波引起质点的运动,虽然位移和速度不大,但是与超声波振动的频率的平方成正比的质点的加速度却很大。有时足以达到破坏介质的程度。(2) 空化作用在流体动力学指出,存在于

19、液体中的微气泡在声场的作用下振动,当声压达到一定的值时,气泡将迅速膨胀,然后突然闭合,在气泡闭合时产生冲击波,这种膨胀、闭合、振动等一系列动力学过程称为空化。(3) 热学作用如果超声波作用于介质时被介质所吸收,实际上也就是有能量吸收,同时,由于超声波的振动,使介质产生强烈的高频振荡介质相互摩擦产生热热量,这种能量使介质温度升高。 4 超声波传感器超声波传感器主要有电致伸缩和磁致伸缩两类,电致伸缩采用双压电陶瓷晶片制成,具有可逆特性。压电陶瓷片具有如下特性:当在其两端加上大小和方向不断变化的交流电压时,就会产生“压电效应”,使压电陶瓷也产生机械变形,这种机械变形的大小以及方向与外加电压的大小和方

20、向成正。也就是说,若在压电晶片两边加以频率为的交流电电压时,它就会产生同频率的机械振动,这种机械振动推动空气的张弛,当落在音频范围内时便会发出声音。反之,如果由超声波机械振动作用于陶瓷片使其发生微小的形变时,那么压电晶片也会产生与振动频率相同的微弱的交流信号。超声波传感器结构如下: 图 2.1.2 元件内部结构 图 2.1.3 超声波外部结构 2.2 超声波测距系统原理在超声探测电路中,发射端得到输出脉冲为一系列方波,其宽度为发射超声的时间间隔,被测物距离越大,脉冲宽度越大,输出脉冲个数与被测距离成正比。超声测距大致有以下方法: 取输出脉冲的平均值电压,该电压 (其幅值基本固定 )与距离成正比

21、,测量电压即可测得距离; 测量输出脉冲的宽度,即发射超声波与接收超声波的时间间隔 t,故被测距离为 S=12vt。本测量电路采用第二种方案。由于超声波的声速与温度有关,如果温度变化不大,则可认为声速基本不变 。如果测距精度要求很高,则应通过温度补偿的方法加以校正。超声波测距适用于高精度的中长距离测量。因为超声波在标准空气中的传播速度为331.45米/秒,由单片机负责计时,单片机使用12.0M晶振,所以此系统的测量精度理论上可以达到毫米级。超声波测距的算法设计: 超声波在空气中传播速度为每秒钟340米(15时)。X2是声波返回的时刻,X1是声波发声的时刻,X2-X1得出的是一个时间差的绝对值,假

22、定X2-X1=0.03S,则有340m0.03S=10.2m。由于在这10.2m的时间里,超声波发出到遇到返射物返回的距离如下: 图 2.1.4测距原理超声波测距器的系统框图如下图所示:LCD显示单片机控制器超声波发射超声波接收 图 2.1.5 系统框图第三章 系统主要硬件设计3.2 超声波发射和接收电路设计超声波是一种振动频率超过20 kHz的机械波,它可以沿直线方向传播,而且传播的方向性好,传播的距离也较远,在介质中传播时遇到障碍物在入射到它的反射面上就会产生反射波6。由于超声波的以上几个特点,所以超声波被广泛地应用于物体距离的测量、厚度等方面6。而且,超声波的测量是一种比较理想的的非接触

23、式的测距方法6。当进行距离的测量时,由安装在同一水平线上的超声波发射器和接收器完成超声波的发射与接收,并且同时启动定时器进行计数7。首先由超声波发射探头向倒车的方向发射超声波并同时启动定时器计时,超声波在空气中传播的途中一旦遇到障碍物后就会被反射回来,当接收探头收到反射波后就会给负脉冲到单片机使其立刻停止计时6.7。这样,定时器就能够准确的记录下了超声波发射点至障碍物之间往返传播所用的时间t(s)7。由于在常温下超声波在空气中的传播速度大约为340 m/s7,所以障碍物到发射探头之间的距离为:S=340t/2=170t 因为单片机内部定时器的计时实际上就是对机器周期T的计数,而本设计中时钟频率

24、fosc取12 MHz,设计数值N,则: T12/fosc=1s t=NTN0.000001(s) S170NT170N/1000000(m) 在程序中按式S170NT170N/1000000计算距离。3.2.1 超声波发射电路设计超声波发射电路是由超声波探头和超声波放大器组成。超声波探头将电信号转换为机械波发射出去,而单片机所产生的40 kHz的方波脉冲需要进行放大才能将超声波探头驱动将超声波发射出去,所以发射驱动实际上就是一个信号的放大电路,本设计选用74LS04芯片进行信号放大,超声波发射电路如图3.5所示。图3.5 超声波发射电路工作时,由单片机产生40 kHz的脉冲从P0.1口向超声

25、波的发射电路部分发出信号,再经74LS04放大电路放大后,驱动超声波探头将超声波发射出去。3.2.2 超声波接收电路设计由于超声波在空气中的传播过程中是有衰减的,如果距离较远,那么超声波接收电路所接收到的超声波信号就会比较微弱,因此需要对接收到的信号进行放大而且放大的倍数也要比较大。超声波接收电路主要是由集成电路CX20106A芯片电路构成的,CX20106A芯片电路可以对超声波信号进行放大、限幅、带通滤波、峰值检波、整形、比较等功能,比较完之后超声波接收电路会输出一个低电平到单片机去请求中断,当即单片机停止计时,并开始去进行数据的处理。CX20106A芯片的前置放大器具有自动增益控制的功能,

26、当测量的距离比较近时,放大器不会过载;而当测量距离比较远时,超声波信号微弱,前置放大器就有较大的放大增益效果。CX20106A芯片的5脚在外接电阻对它的带通滤波器的频率进行调节,而且不用再外接其他的电感,能够很好地避免外加磁场对芯片电路的干扰,而且它的可靠性也是比较高的。CX20106A芯片电路本身就具有很高的抗干扰的能力,而且灵敏度也比较高,所以,能满足本设计的要求。超声波接收电路如图3.6所示。图3.6 超声波接收电路3.2.3 HR-SR04超声波集成模块1、产品特点:HC-SR04 超声波测距模块可提供 2cm-400cm 的非接触式距离感测功能, 测距精度可达高到 3mm;模块包括超

27、声波发射器、接收器与控制电路。 基本工作原理:(1)采用 IO 口 TRIG 触发测距,给至少 10us 的高电平信号; (2)模块自动发送 8 个 40khz 的方波,自动检测是否有信号返回; (3)有信号返回,通过 IO 口 ECHO 输出一个高电平,高电平持续的时间就是超声波从发射到返回的时间。测试距离=(高电平时间*声速(340M/S)/2;2、实物图:如右图接线,VCC 供5V 电源,GND 为地 线,TRIG 触发控制 信号输入,ECHO 回 响 信 号 输 出 等 四 支 线。图一 实物图3、电气参数:电气参数HC-SR04 超声波模块工作电压DC 5 V工作电流15mA工作频率

28、40Hz最远射程4m最近射程2cm测量角度15 度输入触发信号10uS 的 TTL 脉冲输出回响信号输出 TTL 电平信号,与射程成比例规格尺寸45*20*15mm4、超声波时序图:图二、 超声波时序图 以上时序图表明你只需要提供一个 10uS 以上脉冲触发信号,该模块内部将发出 8 个 40kHz 周期电平并检测回波。一旦检测到有回波信号则输出回响信号回响信号的脉冲宽度与所测的距离成正比。由此通过发射信号到收到的回响信号时间间隔可以计算得到距离。公式:uS/58=厘米或者 uS/148=英寸;或是:距离=高电平时间*声速(340M/S)/2;建议测量周期为 60ms 以上,以防止发射信号对回

29、响信号的影响。注:1、此模块不宜带电连接,若要带电连接,则先让模块的 GND 端先连接,否则会影响 模块的正常工作。2、测距时,被测物体的面积不少于 0.5 平方米且平面尽量要求平整,否则影响测量的结果5、实物规格:复位电路 单片机在RESET端加一个大于20ms正脉冲即可实现复位,上电复位和按钮组合的复位电路如下:图3.2.2 复位电路在系统上电的瞬间,RST与电源电压同电位,随着电容的电压逐渐上升,RST电位下降,于是在RST形成一个正脉冲。只要该脉冲足够宽就可以实现复位,即ms。一般取R1,C22uF。 当人按下按钮S1时,使电容C1通过R1迅速放电,待S1弹起后,C再次充电,实现手动复

30、位。R1一般取200。3.2.3 时钟电路 当使用单片机的内部时钟电路时,单片机的XATL1和XATL2用来接石英晶体和微调电容,如图所示,晶体一般可以选择3M24M,电容选择30pF左右。我们选择晶振为12MHz,电容33pF。 图3.2.3 时钟电路3.2.4 按键电路 我们通过P1.0来启动测量,程序中通过查询P1.0的电平来检测是否按键被按下,电路原理如下: 当按下按键时P1.0为低电平,单片机通过 查询到低电平开始测量距离,当松开按键,P1.0即为高电平。在软件中通过软件延时来消除按键的机械抖动。 图3.2.4按键电路3.2.5 蜂鸣器电路报警模块通过单片机给定不同频率利用蜂鸣器发出

31、不同声音。报警模块电路图如图3.10所示。图3.10 报警模块电路图3.6 LCD显示电路 本设计采用LCD液晶显示屏显示。其具有体积小、功耗低、界面美观大方等优点,这里使用YB1602液晶屏,1602显示模块用点阵图形显示字符,显示模式分为2行16个字符。它具有16个引脚,其正面左起为第一脚,如下图所示:第一脚GND:接地。第二脚VCC:+5V电源。第三脚VO:对比度调整端。使用时通过接一个10K的电阻来调节。第四脚RS:寄存器选择信号线。第五脚RW:读写信号线。第六脚E:使能端,当E由高电平跳变为低电平时执行命令。第714脚:8位数据线D0D7。第十五脚BLA:背光电源正极输入端。第十六脚

32、BLK:背光电源负极输入端。 图3.5.2 LCD显示电路操作控制表操作读状态写指令读数据写数据输入RS=0,RW=1,E=1RS=0,RW=0,D07=指令码,E=H脉冲RS=1,RW=1,E=1RS=1,RW=0,D07=数据,E=H脉冲 表3.6.1 LCD1602操作指令 1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”

33、。因为1602识别的是ASCII码,试验可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如A。1602通过D0D7的8位数据端传输数据和指令。显示模式设置: (初始化)0011 0000 0x38设置162显示,57点阵,8位数据接口;显示开关及光标设置: (初始化)0000 1DCB D显示(1有效)、C光标显示(1有效)、B光标闪烁(1有效)0000 01NS N=1(读或写一个字符后地址指针加1 &光标加1),N=0(读或写一个字符后地址指针减1 &光标减1),S=1 且 N=1 (当写一个字符后,整屏显示左移)s=0 当写一个字符后,整屏显示不移动数据指针设置:

34、数据首地址为80H,所以数据地址为80H+地址码(0-27H,40-67H)其他设置:01H(显示清屏,数据指针=0,所有显示=0);02H(显示回车,数据指针 =0)3.7 电源电路 34 系统整体电路根据本章前面对设计的各个相关模块的分别讲述讲述,再结合单片机的引脚功能,从而得到系统整体电路图,如图3.11所示。第四章 系统软件设计本设计采用的是模块化的思路来进行设计和编写程序,程序主要由系统主程序和中断程序构成。主程序完成单片机的初始化,超声波的发射和接收、计算超声波发射点与障碍物之间的距离、数码管显示和蜂鸣器报警等。系统程序设计的主要的功能是发射超声波、接受超声波、计算测量距离、数据计

35、算、蜂鸣器报警和数码管显示。4.1 系统程序的结构 (2)基于YB1602的显示模块,分为初始化子程序、写入子程序以及显示子程序;(3)距离计算模块、分为超声波发送控制程序、接收处理程序、 (4)本次设计使用C语言编写程序,C语言相比汇编有许多的优势;编译器使用Keil Version2进行程序编译,Keil功能强大使用方便。(5) 主程序,分为系统初始化、按键处理以及各个子程序的调度管理等部分。如图4.1.1所示描述了各个模块的关系: 图 4.1.1 系统软件方框图4.2 系统主程序 本设计主程序的思想如下: (1)距离为四位显示单位为mm; (2)超声波每隔60ms发送一次。 (3)按键S

36、为测量启动键; (4)系统采用STC89C52的内时钟:12MHz; (5)没有使用看门狗功能; (6)超声波发送一定时间后才开始启动检测,避免直达信号造成误判。所以系统最小测量约为112mm; 系统主程序如下:void main(void) uchar i,j; for(i=0;i255;i+) for(j=0;j255;j+); /延时,等待系统外围复位完成 sys_init(); /初始化 display(); /显示 sta_flag=0; /标准复位 waitforstarting: /检测按键 while(START); for(i=0;i20;i+) delay1ms(); if

37、(START) goto waitforstarting; BUZZER=0; /蜂鸣器鸣音一次提示按键按下 i=100000; while(i-); BUZZER=1; i=100000; while(i-); TR0=1; /启动定时器0 ET0=1; testtemp(); /启动温度转换 while(1) if(sta_flag) /60MS到了,超声波已经发送 while(0=CSBIN); /等待超声波返回 TR1=0; jsh=TH1; /停止计数 jsl=TL1; if(15=count) /1S到,检测温度 temp=wd(); count=0; testtemp(); /重新启动转换 display(); /刷新显示 computer(); /计算距离 hextobcd(); /转化成BCD码 sta_flag=0; /标志清零 void sys_init(void) uchar i; for(i=0;i29;i+) /显示清零 numi=0; TMOD=0x11; TH0=0x15; TL0=0xA0; P0=0; CNT=0; /超声波发送关闭 CSBIN=1; EA=1; /开放总中断 Init_LCD();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号