《基于单片机的汽车倒车防撞系统的设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的汽车倒车防撞系统的设计.doc(54页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 题 目 基于单片机汽车倒车防撞系统设计 学生姓名 郭真子 学号 所在学院 物理与电信工程学院 专业班级 电子1201班 指引教师 王婷 完毕地点 博远楼#物理与电信工程学院实验室 年 6 月 5 日毕业论文设计任务书院(系) 物理与电信工程学院 专业班级 电子1201 学生姓名 郭真子 一、毕业论文设计题目 基于单片机汽车倒车防撞系统设计 二、毕业论文设计工作自 年 1 月 10 日 起至 年 6 月 15 日止三、毕业论文设计进行地点: 陕西理工学院 四、毕业论文设计内容规定: 基于单片机超声波脉冲测距原理,运用超声波反射测量距离设计一倒车防撞系统,在 整个倒车过程中自动测量车尾到近来障碍
2、物距离,并用数字显示出来,在倒车到极限距离时会发出急促警告声,提示驾驶员注意刹车,如果和制动系统联系在一起也可以形成自动刹 车。(应涉及方案设计、比较与论证、分析与计算、电路图与有关设计文献以及心得体会 等)。 五、毕业论文设计应收集资料及参照文献: 收集单片机编程、超声波测距等方面专业资料,阅读和学习下列参照文献: 1张齐,杜群贵.单片机应用系统设计技术M.电子工业出版社. 2胡瑞,周锡青.基于超声波传感器测距报警系统设计J.科技信息, 3于京.51系列单片机C程序设计与应用方案M.中华人民共和国电力出版社. 4张齐,杜群贵.单片机应用系统设计技术M.电子工业出版社. 5赵占林,刘洪梅.超声
3、波测距系统误差分析及修正J.科技情报开发与经济 , 6宋明耀.提高超声波测距精度设计J.测试测量. 六、毕业论文设计进度安排: 1月10日3月20日:查阅资料,完毕外文翻译原文和开题报告。 3月21日4月20日:完毕系统硬件电路设计并提交中期检查报告。 4月21日5月20日:完毕整体设计并调试,准备作品验收。 5月21日6月15日:撰写、修改毕业设计论文,准备并完毕答辩。 指引教师签名 系(教研室)主任签名 专业负责人签名 批准日期 基于单片机汽车倒车防撞系统设计郭真子(陕西理工学院 物理与电信工程学院 电子信息工程专业,级1班,陕西 汉中 723003) 指引教师:王婷【摘要】本设计简介了基
4、于单片机汽车倒车防撞系统设计,硬件某些以单片机STC89C52为重要控制模块,以超声波测距模块HC-SR04为测距系统,用数码管显示出车尾与障碍物之间距离,用键盘设立蜂鸣器报警最小距离,当超声波测到距离不大于报警距离时,蜂鸣器发出报警声音,并且使制动系统停止工作,完毕自动刹车功能。软件设计某些重要是运用C语言来编写程序,将调试好程序下载到单片机中,最后实现倒车防撞功能。测量范畴为2cm-500cm,完全满足汽车倒车需求,最小报警距离可以在1cm-400cm之间任意设立。【核心词】STC89C52单片机 HC-SR04 超声波测距模块 LED显示 Design of Auto Reverse C
5、ollision Avoidance System Based on Single Chip MicrocomputerGuo Zhenzi(Grade 12,Class 1,Major electronics and information engineering,College of physics and Telecommunication Engineering,Shannxi University of Technology,Hanzhong 723003,Shannxi)Tutor:Wang Ting Abstract:This design is introduced the a
6、uto reverse collision avoidance system based on single chip microcomputer. Hardware part is STC89C52 microcontroller which as the main control module,ranging system for hc-sr04 ultrasonic ranging module,using digital tube display the distance between the vehicle tail and obstacles,the keyboard buzze
7、r was used to alarm minimum distance. Buzzer alarming when the actual distance have been less than the distance alarm,and make the braking system stop working,complete automatic braking function. The software part using C language to write the program,the debugger will be downloaded to the microcont
8、roller,and ultimately to achieve the reverse collision function. The measuring range is 2cm-500cm,fully satisfied the needs of the car reverse,the minimum alarm distance can be arbitrarily set between 1cm-400cm. keyword :STC89C52 microcontroller HC-SR04 ultrasonic ranging module LED display目 录1 绪论11
9、.1 项目研究背景及意义11.2 超声波原理11.3 电机工作原理42 方案论证43 硬件电路设计63.1 主控制模块63.2 显示电路63.3 键盘电路73.4 报警电路73.5 超声波测距电路83.6 电源电路93.7 制动电路104 软件设计124.1 主程序设计124.2 超声波测距子程序设计134.3 数码管显示子程序144.4 键盘子程序设计144.5 定期器子程序设计154.6 EEPROM子程序设计165 硬件调试与分析185.1 硬件调试185.2 成果分析18道谢20参照文献21附录A:外文翻译22附录B:整体电路源程序29附录C:元器件清单35附录D:整体电路设计原理图3
10、6附录E:实物展示图371 绪论1.1 项目研究背景及意义随着当代社会经济迅速发展,人们生活水平越来越好,交通运送业日益兴旺,汽车成为当代人类生活出行必要产品。随着汽车数量大幅度攀升,交通拥挤状况越来越严重,撞车事件有赠无减,导致不计其数人员伤亡和经济损失。针对上面简介这种状况,设计一种可以有效减少汽车事故汽车防撞系统已经在所难免。在常用汽车倒车装置上采用基于单片机测距,将软、硬件相结合,通过数字显示电路显示障碍物与车辆保险杠之间间距,当倒车不大于最小距离时,发出急促警报声,提示驾驶员刹车,减少了驾驶员在驾车过程中事故发生率,并且协助减少汽车行驶在过程中视觉死角和光线模糊等不利条件,大大提高了
11、行车过程中安全性。将此系统运用到社会交通运送业中一定会减少事故发生,为人类安全事业做出更大贡献。由于超声波波速比较小,其传播时间也就比较长。当它较长时,就更加容易产生区别,这样测量能增长精确性,其方向性也比较好、强度容易控制,因而可以运用超声波对距离进行检测。超声波测距是一种运用声波反射、折射特性与电子计数相结合来实现非接触式距离测量办法。超声波测距在诸多地方有特别明显地优势,因而像超声波测距这种非接触式迅速测量办法可以在更多场合和各种环境比较恶劣状况下使用。普通所设计关于汽车防撞系统重要由核心控制器、显示屏、超声波发射接受模块、报警器设备等四个某些构成。传感器发送和接受超声波方波信号,并将接
12、受到信号接受回来,当通过解决之后再次表达出来。超声波传感器装在汽车后保险杠上,不断发出超声波检查障碍物,能摸索到诸多物体,如马路边沿,花坛,蹲在车后小孩等:显示设备装在驾驶员座位仪表盘上,显示出汽车车尾距离背面障碍物尚有多少米,一旦不大于设定最小距离时,蜂鸣器就开始发出报警声音,提示司机停车1。1.2 超声波原理声音是与人类生活密切有关一种自然现象。人类听觉是有一定范畴,当声音频率变大时(依照大量实验数据记录,取整数为0赫兹),人类听觉就会辨别不到周边声音存在,这就是人们普通所说“超声波”。通过超声波发射传感器发出超声波信号,依照接受传感器器接到超声波时与超声波发射传感器发出超声波信号时间之差
13、就可以计算出两物体之间距离了。这与雷达测距原理很相似。(s=340t/2,是计算出超声波发射点与障碍物之间距离(s)公式,超声波波速与声音速度相似,因此系数为340,而一半倍则是由于超声波发生了反射,而t则是单片机内部定期器自己记录时间)。超声波是一种通过压电效应或磁致伸缩效应产生、频率在0HZ以上声波:它能量集中性较好、同步又具备光一系列特性,例如常用直线传播、反射折射等2。这样使得超声波测距传感器因其良好性能、便宜价格、简朴计算公式,在移动机器人定位系统、车辆雷达、车辆安全,以及油井、仓库探测中档地方有大量应用3。超声波特性有:(1)吸取特性超声波在各种物质中传播时,当距离超过超声波所能有
14、效传播范畴时,超声波能量就会被削弱,这是由于介质可以吸取掉超声波一某些能量,使得超声波应用受到了极大限制。当作用于同一种材料物质时,如果作用在物体自身声波频率很高,那么它对超声波吸取能力就越强。如果一种声波频率是固定,那么在不同物质中其吸取能力不同,例如:在空气中传播时它吸取能力非常强,在水中传播时吸取能力相对削弱,在固体中传播时吸取是非常小4。(2)超声波声压特性当声波进入某物体时,由于超声波份子共振,使物质分子之间产生互相吸合或互相分离自然作用,使物质各个份子之间所受压力发生变化。既可以完毕发射超声波,又可以接受超声波集成器件就是超声波传感器。超声波探头重要由数个压电晶片构成,既可以发射信
15、号,也可以接受信号。小功率超声波探头多用作探测距离、物体等方面。超声波探头核心器件是就是所谓压电晶片,如上段中提到作用,有诸各种材料都可以构成晶片。由于晶片直径宽度和厚度大小是不同样,因而每个探头性能都是不同样,在运用超声波时,应当注意理解清晰它功能。超声波传感器重要性能指标涉及: (1)敏捷度。重要是由晶片自身材料性能决定。(2)工作频率。超声波传感器频率与其晶片共振频率相等。也就是当加到它两个端口交流电压和各个晶片共振频率相似达到其共振频率时,此时也是超声波传感器输出信号各种特性最佳时候。(3)工作温度。由于压电材料制作物比较特殊,不但工作温度非常低,并且其居里点比普通物质高。可以保持长时
16、间有效工作,并且其超声波探头使用功率比较小。医疗用超声波探头温度比普通超声波探头高,那么其正常工作就需要其她设备来维持。为了充分将超声波运用到人类社会发展中,大量超声波发生器被开发出来。从产生方式上来讲,超声波发生器可以分为两种类型:即电气型和机械型,这为此后开发超声波价值提供了基本。她们工作方式不同,不同产生超声波输送频率、工作功率和声波衰减等特性是各不相似。当前较为惯用是压电式超声波发生器。超声波是一种在介质中机械振荡波,超声波频率超过20KHz。总体上,可以分为横向振荡和纵向振荡两种振荡方式,在不同介质中振荡方式是不同。并且超声波可以在固体、液体及气体中传播,其传播速度在三中物质中也是大
17、不相似。它具备折射和反射等物理现象,且在传播过程中有较强衰减。超声波基本特性如下所述:1 波长波传播速度计算办法为频率乘以波长。波长与其频率具备很大关联,在常温状态下,超声波波速相称于声音传播速度,这样大大减少了超声波测距在后期计算解决方面复杂性,使得超声波广泛应用于人类社会生活方方面面。2 反射要探测到障碍物,就需要障碍物将接受到超声波反射回来。某些物质例如墙壁、金属,在有效距离内可以将超声波完全反射回来,这种物体可以很容易通过超声波来测量;尚有某些物质不能反射超声波,而是吸取了大量超声波,这种物质不能运用超声波进行测量。同步,由于某些特殊物质存在大量不规则反射、折射,这些物质测量也很难运用
18、超声波来进行,这些条件使得超声波测量有了较高规定。运用超声波反射特性,使得超声波可以应用在诸多状况下,大大增长了超声波对于人类社会生活水平提高。3. 衰减传播到空气中超声波能量随着距离增长而成比例地削弱,这是由于某些容易吸取超声波能量介质吸取了超声波能量而使得超声波能量削弱,这就是上文所讲吸取特性,也是由于衍射现象而导致在地球表面上扩散性削弱。当超声波频率较高时,衰减率就越来越高,超声波传播距离也会随之变短,由此可见超声波衰减特性直接影响了超声波传感器可以检测有效距离。超声波在不同温度下、距离下、检测不同物质时,超声波衰减特性不同,如下1.1图所示,列出了不同频率超声波在不同距离下衰减特性。
19、图1.1 声压在不同距离下衰减特性4敏捷度特性敏捷度是表达声音接受级单位,下文阐述了敏捷度计算公式,并且讲述了敏捷度原则和性能。 敏捷度= 20log E/P (dB)式中,“E”为所产生电压 (Vrms),“P”为输入声压(bar)。超声波测距精确性直接由超声波传感器敏捷度影响,如图1.2所示为几种中常用超声波传感器敏捷度特性表达,从图中可以发现传感器声压级最高是频率在40KHz时,这提示咱们应当充分运用40KHz时所相应测距数据,使其应用在焦急最高处,因此本设计采用超声波测距模块发射了40KHZ方波。图1.2 超声波传感器敏捷度示意图5辐射特性把超声波传感器安装在台面上。然后,测量角度与声
20、压 (敏捷度) 之间关系。为了精确地表达辐射,与前部相对比,声压 (敏捷度) 级衰减6dB角度被称为半衰减角度,用一半表达。超声波设备外表面尺寸较小容易获得较精确测量数据。分析以上研究成果不难发现超声波传感器在40KHz范畴内工作时可以产生最高声压级以及最高敏捷度。其辐射特性如图1.3所示。 图1.3 超声波传感器辐射特性示意图1.3 电机工作原理 电机又称电动机,直流电机作用是将直流电变为机械能。直流电机有诸多长处,可以广泛应用于机械能驱动场合。由于电机中磁场方向和导线中电流方向不一致,线圈受到电磁力作用产生转动,从而带动整个转子转动,这就是电动机工作原理。下图1.4所示为惯用电机。图1.4
21、 电机实物图2 方案论证方案一:方案一以STC89C52单片机为重要控制芯片,报警电路采用惯用蜂鸣器,显示电路采用LCD1602液晶显示屏,制动系统采用直流电机及其驱动电路,超声波发射电路采用由555芯片构成硬件电路,超声波接受电路由与非门构成硬件电路。发射电路重要电路为震荡电路、调制电路、勉励电路,在选用555芯片时,选用了负载能力较大双极性555,这种芯片内部电路由普通NPN 构成,相比于内部电路由CMOS构成7555,它带载能力更强。超声波接受电路由非门构成一种简朴振荡器发送电路,可由软件较容易控制。软件某些采用C语言来编写程序,将各个模块有效结合在一起,实现最后硬件功能。方案二:采用S
22、TC89C52单片机为重要控制芯片,加上单片机运营必要复位电路和时钟电路,以及实现实时显示所需要数码管及数码管驱动电路,设立报警距离键盘控制电路,报警电路,尚有最重要超声波测距电路和控制制动系统自动刹车直流电机及电机驱动电路。本设计超声波测距电路采用了已经制作好HC-SR04模块,键盘电路模块运用独立键盘设计,用来设立需要报警最小距离,报警电路用来发出报警,单片机I/O口发出高电平用来控制超声波模块工作。软件某些依然应用C语言,采用软硬件结合方式,使各个模块高效实现功能,其系统方案设计如图2.1所示。制动系统报警电路显示电路键盘电路单片机超声波发射超声波接受障碍物图2.1 系统方案设计框图方案
23、比较:两种方案基本设计思路是一致,都是以单片机为核心控制元件。方案一采用了较为老式分立元件,而方案二则采用了HC-SR04超声波测距模块来实现功能。由于采用HC-SR04模块可以减少在设计实物制作方面诸多不必要麻烦,因此方案二更简洁,以便,体现了当代设计快捷,更加节约时间。方案一显示某些采用LCD1602,而方案二显示某些采用了四位LED共阳数码管。由于本设计显示某些并不需要显示大量数据,因此从节约环保方面来考虑,运用数码管更适当。综上所述,方案二更适当,因此选用方案二作为最后设计方案。3 硬件电路设计本设计重要简介了基于STC89C52单片机汽车倒车防撞系统,本次设计以单片机为基本,以超声波
24、测距模块HC-SR04为重要模块,加上单片机最小系统所必要复位、时钟电路,实现了可以实时显示汽车车尾到障碍物之间距离数码管显示电路。可以任意设立报警距离键盘电路,当实际距离不大于最小报警距离时,可以实现报警功能蜂鸣器并且使电机自动停止工作,从而实现了汽车在倒车过程中自动刹车功能。硬件设计重要运用仿真软件proteus和画图软件Altium Designer,将各个模块和各个元器件用Altium Designer连接在一起,用proteus设计了本设计显示某些。3.1 主控制模块本模块重要以单片机最小系统模块为核心,重要涉及一种单片机以及单片机时钟电路和复位电路。复位电路与单片机复位引脚(9脚)
25、相连,当第9引脚接受到持续两个机器周期以上高电平时,单片机完毕初始化操作,复位后单片机内部程序计数器PC=0000H,即复位后单片机将从头开始执行指令。时钟电路采用了单片机片内时钟振荡方式,TXAL1和TXAL2为两个外接时钟引脚,这两个引脚外接石英晶振和震荡电容,在本设计中电容选用22pF,石英晶振选用为12MHZ,时钟电路为系统工作提供了最基本保障。最小系统设计框图如图3.1所示。 图3.1 主模块设计框图由于本设计比较简朴,对于单片机规定不高,在设计时选用了物美价廉STC89C52单片机。这种单片机是基于单片机简朴设计惯用类型,并且是低功耗、高性能CMOS材料8位单片机,具备8K Byt
26、es Flash 片内程序存储器,256 byteRAM,32个I/O口,5个中断优先级2层中断嵌套等功能,可以完全满足本设计硬件规定8。本设计主模块采用了惯用单片机最小系统,即能使单片机工作基本电路。3.2 显示电路本模块采用四位共阳数码管,当数码管多位一体时,它们内部公共端是互相独立,而负责显示什么数字段选位是连接在一起,独立公共端控制数码管多位中哪一位亮,而连接在一起段选位可以控制亮什么数字。将单片机P1口通过保护电阻与数码管段选位直接相连,将单片机P34,P35,P36,P37分别与数码管驱动电路相连。数码管驱动电路是由电阻和三极管构成,其工作原理如下:当单片机内部有低电平触发三极管P
27、NP基极时,三极管导通,这样就提供了可以驱动数码管电压,否则电压过小无法驱动数码管位选位。分别选通数码管四位选位后,就可以动态控制四个数码管亮灭,使得选用不同位选时,显示不同数字。共阳数码管内部8个发光二极管所有阳极端是所有连接在一起,电路在连接时,公共端应当接高电平,因而要使发光二极管发光时,需要给另一端口送低电平9。数码管内部发光二极管需要3mA-20mA直流电流,否则过大会烧坏发光二极管,过小会使发光二极管不能工作,因此在P1口加上了1K上拉电阻,为数码管正常工作提供适当电流。显示电路设计如图3.2所示,图中标号相似端口互相连接。 图3.2 显示模块框图3.3 键盘电路由于本设计使用键盘
28、数目较少,采用三个独立键盘既以便又节约,还可以减少软件程序编写时复杂性,因此本模块由单片机P20,P21,P22三个I/O口分别与三个独立键盘连接实现。本设计采用键盘为弹性小按键,当弹性小按键被按下时单片机I/O口接地,松开后表达电路断开。单片机控制键盘工作原理如下:三个独立键盘其中一端是接地,此外一端接单片机I/O口。由于单片机正常工作后,所有I/O口都被赋予高电平,因此键盘此外一端是接地。当键盘被按下时,单片机I/O口会变为低电平,这种状况下则被以为键盘被按下。其模块框图如图3.3所示。 图3.3 键盘模块框图3.4 报警电路本模块用一种电阻,一种三极管和一种蜂鸣器构成,与单片机P23口相
29、连。当单片机P23口产生低电平时,其相应端口三极管导通,然后三极管集电极产生可以驱动蜂鸣器电压,蜂鸣器只要达到3V左右电压就可以被驱动,蜂鸣器报警。本设计采用三极管是PNP三极管,而不是惯用NPN三极管,由于单片机在上电时所有I/O口都被置为高电平,这样使得NPN三极管基极被高电平驱动,当三极管工作后,蜂鸣器发出报警声。虽然用软件程序将单片机I/O口置低,蜂鸣器在单片机上电一瞬间也会报警发出声音,所觉得了防止蜂鸣器没有规律报警,最后采用PNP型三极管和一种10K电阻作为蜂鸣器驱动电路。电阻作用是当I/O口输出低电平时,在三级管基极产生一种可以使三极管导通电压。其报警电路设计图如图3.4所示。图
30、3.4 报警电路模块3.5 超声波测距电路超声波测距电路采用现成HC-SR04超声波模块,该模块可提供 2-500cm 非接触式测量距离功能,测距精度可达高到 3cm9。模块重要涉及一种STC11系列单片机,MAX232和TL074芯片,超声波发射传感器、接受传感器与超声波发射、接受控制电路。本设计采用超声波反射原理进行测距检测,测距时,应将超声波探头正对被侧物体,这样可以使得测量成果精确。超声波测距实物图如图3.5所示。 图3.5超声波测距实物图 超声波测距模块实物四个引脚连接方式如下:其中VCC 引脚供5V 电源,GND 引脚为地线,TRIG口供触发信号输入,ECHO口用来接受高电平信号。
31、超声波探测模块HC-SR04在本设计中用法如下:单片机I/O口P32口与模块Trig口相连,单片机向模块Trig口发送至少10us高电平,单片机内定期器在高电平开始时开始计数;HC-SR04模块自动发送若干个模块内晶振产生方波,然后超声波接受传感器自动检测与否有信号返回;当检测到信号返回时,定期器停止计数,I/O口向ECHO输出高电平持续时间(通过定期器计时得出时间)就是超声波从发射到接受时间。测试距离=(高电平时间*340)/ 2,单位为m10。超声波测距模块由单片机STC11为主控芯片,尚有MAX232和TL074,尚有超声波发射传感器和接受传感器,主控制芯片接入4MHZ晶振,用来产生40
32、KHZ方波,通过MAX232转化电平后,由超声波发射传感器发出。当方波信号遇到障碍物反射回来后,由超声波接受传感器接受,通过放大后再次返回到主芯片,这就完毕了超声波模块工作流程。 超声波测距原理图如图3.6所示。图3.6 超声波测距原理图3.6 电源电路 本设计除电机外所有元器件均采用5V直流电压源供电,因此直接采用220V-5V变压器进行供电(就是普通手机充电器头),用数据线直接接入电路板DC电源插口。DC电源插口有三个引脚,其中两个引脚接地,此外一种接电源。在本设计中,电源电路中还包具有自锁开关和电源接通批示灯,用数据线接通变压器和DC电源插口后,按下自锁开关,电源批示灯亮,整个电路开始工
33、作。电源电路如图3.7所示。 电机电源采用了12V电压源供电,12V电压源由变压器,整流桥,7012构成,通过变压、整流、滤波这几种过程后,输出了稳定12V直流电压,为系统工作提供了基本保障。12V电压源电路原理图设计如图3.8所示。 图3.7 电源电路 图3.8 12V电源电路3.7 制动电路 本设计制动电路采用了L298电机驱动模块和两个直流电机来完毕,两个直流电机分别控制两个轮子转动。当系统在正常状况下运营时,电机驱动电路正常运营,当超声波测距测到距离不大于设立距离时,单片机发送指令使电机停止运营。这样就达到了自动刹车功能。制动系统电路设计图如图3.9所示。图3.9 制动系统电路设计 直
34、流电机速度是用脉冲宽度调制来解决,它是按规律变化脉冲序列脉冲宽度,以调节输出量和波形调节办法,咱们在系统中普通采用矩形波脉冲宽度调制信号,当需要调节变化速度时,只需要调节其波形占空比就行了。占空比是指高电平持续时间在一整个周期内比例。当占空比越大,速度越快,如果所有为高电平,则占空比最大,此时电机转动速度最快。由于本设计重点并不是电机速度控制,并且52系列单片机并没有自带脉冲宽度调制控制器,因此本设计占空比采用软件延时,当高电平延时时间届时,将I/O口电平置反,然后再软件延时,时间到后将I/O继续置反,如此重复就设定了恒定速度。 L298是一种常用电机驱动模块,本设计采用L298驱动了两个直流
35、电机,通过单片机I/O口输出电平不同,可以控制电机进行不同工作方式,例如:正转、反转、刹停、停止。运用这些优势,设计不同步刻电机驱动模块工作方式。表3.1为单片机I/O不同输出状态所相应电机工作方式。表3.1 L298工作原理图ENIN1IN2转动方式0*停止110正转101反转111刹停100停止4 软件设计 本设计软件设计运用keil软件,采用C语言编写。与同样具备单片机编写能力汇编语言相比,C语言在编写程序时,更加简朴、容易理解并且移植性特别强,可以灵活运用,使得本设计软件设计可以直接运用既有模块程序。4.1 主程序设计结束与否再次检测距离显示在数码管上发出报警,制动系统自动刹车判断超声
36、波测到距离与否不大于报警距离将报警距离写入EEPROM中采用系统设立报警距离判断与否有键按下,需要设立距离定期器初始化,赋初值开始NYYNYN图4.1 主程序设计框图本设计程序设计重要是运用52单片机eeprom存储功能,系统初始化后,将预先设立好最小报警距离参数存进eeprom中,再运用超声波测距模块发送超声波,计算出最后距离,并且与预先设立好最小报警距离作比较。如果不大于报警距离,蜂鸣器发出报警声,并且同步向电机驱动电路发送刹停信号,产生自动刹车;如果距离适当就显示在数码管上,如此重复。主程序设计框图如上图4.1所示。4.2 超声波测距子程序设计结束超声波接受端接受超声波判断定期器计数与否
37、不不大于40000定期器发送超声波,并且开始计数ECHO与否为低电平定期器初始化,赋初值开始YNYN 图4.2 超声波测距子程序框图单片机向超声波测距模块ECHO口发送至少10us高电平,触发超声波测距模块开始工作,发射端发射若干个40KHZ方波,并且同步启动定期器,当接受端接受到数据时,关闭定期器,定期器计算出从超声波信号被发送出去到信号被接受到整个过程所需时间,依照这个时间可以计算出车尾到障碍物详细距离。当超声波从发射到接受所花时间超过300ms时,可以鉴定超声波测距失效,成果错误。其子程序设计框图如图上4.2所示。4.3 数码管显示子程序本设计采用四位共阳极数码管进行距离显示,数码管段选
38、位分别与单片机P1口相连。由于数码管为共阳显示,需要显示数码管段选位应当为低电平,依照数码管显示数字时段选位可以编码出P1口高低电平数据。当共阳数码管显示数字时,其0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f所相应编码数应当为0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,ox80,0x98,0x88,0xc3,0xc6,0xa1,0x86,0x8e。其相应四位位选位也应当用低电平触发数码管闪亮,哪一位位选信号为零,就选通哪一位数码管。本设计采用数码管动态显示方式,轮流向各位数码管动态显示送出段选码和控制哪一位亮位选码,运用发光二极管余辉和人眼
39、视觉暂留作用,使人感觉好像四位数码管在同步显示,而事实上四位数码管是一位一位轮流显示,只是轮流速度相称快,人眼无法辨别出来。 数码管实际程序框图如图4.3所示。 图4.3 数码管显示子程序框图4.4 键盘子程序设计本设计采用独立键盘,三个键盘装在P2口,单片机不断检测P2口并将P2口与0x07相与,若最后所得值不等于0x07,则有键被按下。最后值为0x03,表达K1键被按下;最后值为0x05,表达K2键被按下;最后值为0x06,表达K3键被按下。判断出被按下键,不同键执行不同功能,K1按下时整个模块停止工作,这时按下K2或K3可以分别加减最小报警距离,提示汽车驾驶员停止倒车,当设立完毕后,再次
40、按下K1键模块重新开始工作。由于本设计键盘采用是弹性小按键,在按键时会产生按下抖动和释放抖动,会对单片机检测产生影响,因此当单片机I/O口第一次检测到低电平时,应对单片机进行5ms延时,若单片机延时后依然还是低电平,则以为键盘被按下,这时执行其所要进行工作,应当等待按键被释放后,其按键工作才干算真正完毕。相应程序设计框图如图4.4所示。 图4.4 键盘控制子程序设计4.5 定期器子程序设计本设计应用了STC89C52单片机定期器0方式一进行工作,当超声波测距模块开始发送超声波时,定期器0被清0、赋初值、初始化、开始工作,当超声波测距模块接受到返回超声波时,定期器0结束计时,关闭中断。定期器0高八位和低八位分别被赋予0,当定期器计时完毕后,就可以依照16位定期器值得到超声波所通过时间,运用标志位flag_time0计算定期