汽车防撞测距报警系统的设计.doc

上传人:文库蛋蛋多 文档编号:2959139 上传时间:2023-03-05 格式:DOC 页数:46 大小:665KB
返回 下载 相关 举报
汽车防撞测距报警系统的设计.doc_第1页
第1页 / 共46页
汽车防撞测距报警系统的设计.doc_第2页
第2页 / 共46页
汽车防撞测距报警系统的设计.doc_第3页
第3页 / 共46页
汽车防撞测距报警系统的设计.doc_第4页
第4页 / 共46页
汽车防撞测距报警系统的设计.doc_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《汽车防撞测距报警系统的设计.doc》由会员分享,可在线阅读,更多相关《汽车防撞测距报警系统的设计.doc(46页珍藏版)》请在三一办公上搜索。

1、 汽车防撞测距报警系统的设计 学 院 自动化学院 专 业 测控技术与仪器 班 级 学 号 姓 名 指导教师 负责教师 2010 年 6 月摘摘 要要 近年来,我国道路交通安全形式越来越严峻,如果能够在事故发生前提醒驾驶员并采取一定的安全措施,就可以有效的减少交通事故的发生。汽车防撞测距报警系统正是基于提高车辆的主动安全性来实现在行车过程中,给驾驶员提供必要提示的设施。本文设计了一个基于AT89C52单片机的汽车防撞测距报警系统,利用超声波测距传感器对汽车前方的障碍物进行检测,并把检测距离以数值的形式指示给驾驶员,达到危险距离时会发出急促的报警,防护距离可以利用键盘自由设定。其它三个方向利用光电

2、传感器对障碍物进行检测,有障碍物时会把障碍物位置只是给驾驶员并发出急促的报警声。该系统电路结构简单,原理清晰,应用性比较强,性价比高。虽然测距范围有限,但是可扩展性比较强,其测距范围主要取决于传感器,可以选择其它型号的传感器来改变测距范围。关键词:单片机;超声波;防撞;测距 Vehicle Collision Avoidance Warning System Design Range Abstract In recent years,more and more severe forms of road safety,we can effectively reduce traffic accid

3、ents if we can remind the driver to take certain safety measures before the accident.Automotive collision avoidance warning system is based on distance to improve the active safety of vehicles to achieve in driving the process,to prompt the driver to provide the necessary facilities.Paper is based o

4、n AT89C52 microcontroller vehicle collision avoidance warning system for distance,the system uses ultrasonic distance sensor to detect obstacles in front of cars,and the detection distance of a digital display to the driver,will be issued when the risk from rapid alarm,danger from the keyboard can b

5、e set freely.The other three directions using photoelectric sensors to detect obstacles,there is an obstruction to the driver will only obstacle position and issued a hasty alarm.That this system is simple,clear principles,application of relatively strong,cost-effective.Although limited in scope ran

6、ging,but relatively strong scalability,its working range depends primarily on sensors,you can choose other types of sensors to change the range.Keywords:monolithic integrated circuit;ultrasonic wave;crash;ranging 目目 录录 1 绪论.0 1.1 课题的意义.0 1.2 汽车防撞测距报警系统的设计内容.0 1.3 单片机简介及在系统中的应用.1 1.4 本文的内容安排.2 2 汽车防撞

7、测距报警系统的总体方案设计.3 2.1 方案论证.3 2.1.1 测距传感器介绍.3 2.1.2 测距传感器的选择.4 2.1.3 系统方案.4 2.2 汽车防撞测距报警系统的硬件设计.5 2.3 汽车防撞测距报警系统的软件设计.5 2.4 可行性及性价比分析.7 3 汽车防撞测距报警系统的硬件设计.8 3.1 单片机及其基本电路.8 3.1.1 单片机及内部定时器/计数器.8 3.1.2 时钟电路.9 3.1.3 复位电路.9 3.2 传感器电路.10 3.2.1 超声波测距传感器电路.10 3.2.2 光电传感器检测电路.12 3.3 键盘电路.14 3.4 数码管显示电路.14 3.5

8、指示及报警电路.16 4 汽车防撞测距报警系统的软件设计.17 4.1 主程序设计.17 4.2 子程序设计.17 4.2.1 按键识别程序.17 4.2.2 超声波测距程序.18 4.2.3 数制转换程序.20 4.2.4 显示程序.21 4.2.5 报警子程序.22 5 系统调试与分析.23 5.1 单片机仿真系统介绍.23 5.2 汽车防撞测距报警系统的硬件调试.23 5.3 汽车防撞测距报警系统的软件调试.24 5.4 汽车防撞测距报警系统的软硬件联调.24 5.5 汽车防撞测距报警系统的调试结果及其分析.25 5.5.1 调试故障及解决方案.25 5.5.2 测试结果.25 5.5.

9、3 误差计算及精度估计.26 5.5.4 误差分析.26 结论.27 社会经济效益分析.28 参考文献.29 致 谢.30 附录 元器件清单.31 附录 整体电路图 .32 附录 程序清.33 1 绪论绪论 随着社会经济的发展,交通运输业日益兴旺,汽车的数量在大幅攀升。交通拥挤状况也日趋严重,撞车事件屡屡发生,造成了不可避免的人身伤亡和经济损失,针对这种情况,设计一种响应快,可靠性高且较为经济的汽车防撞测距报警系统势在必行,超声波测距法是最常见的一种距离测量方法,应用于汽车的前后左右防撞的近距离,低速状况,以及汽车防撞报警系统中,超声波作为一种特殊的声波,同样具有声波的传输的基本特性折射,反射

10、,干涉,衍射,散射。超声波测距就是利用其反射特性,当车辆附近有障碍物时,超声波测距传感器利用超声波检测车辆附近的障碍物位置,并利用显示器,指示灯及蜂鸣器把障碍物的位置及距离通知驾驶人员,从而减少意外事故的发生。1.1 课题的意义课题的意义 发展汽车防撞技术,对提高汽车智能化水平有重要意义。据统计,危险境况时,如果能给驾驶员半秒钟的预处理时间,则可分别减少追尾事故的 30%,路面相关事故的 50%,迎面撞车事故的 60%;1 秒钟的预警时间可防止 90%的追尾碰撞和 60%的迎头碰撞。理论上,汽车防撞装置可在任何天气、任何车速状态下探测出将要发生的危险情况并及时提醒司机及早采取措施或自动紧急制动

11、,避免严重事故发生。车辆防撞技术作为智能运输系统的一个子课题,将不断成熟和完善,防撞系统的应用可以缩短车辆间的安全行车距离,还可以实现安全超车,保证高速运行车辆的安全性,提高公路运输效率,促进经济的快速发展。1.2 汽车防撞测距报警系统汽车防撞测距报警系统的设计内容的设计内容 设计一个汽车防撞测距报警器,能检测出汽车前后左右四个方向的障碍物并发出报警信号。要求能检测出前方障碍物的距离,并用数字显示给驾驶员,在危险距离时要发出急促的报警声。本毕业设计要求设计汽车防撞测距报警器,装置由检测电路,控制电路,键盘电路和报警电路组成,其特征为:1 以 MCS-51 单片机为控制核心。2 报警电路采用滴滴

12、声加闪光报警。3 用数码管显示前方障碍物的距离。4 保护距离可以人为设置。1.3 单片机单片机简介及在系统中的应用简介及在系统中的应用 单片机是在一块硅片上集成了中央处理器(CPU)、存储器(RAM、ROM、EPROM)和各种输入/输出接口(定时器、计数器、并行 I/O 口、串行口、A/D 转换器以及脉冲调制器 PWM 等),这样一块芯片具有一台计算机的功能,因而被称为单片机。由于单片机的硬件结构与指令系统的功能都是按工业控制要求而设计的,常用在工业的检测、控制装置中,因而也称为微控制器或嵌入式控制器。单片机根据其基本操作处理的位数可分为 1 位单片机、4 位单片机、8 位单片机、16 位单片

13、机、32 位单片机。单片机作为微型计算机的一个很重要的分支,自 70 年代问世以来,以极其高的性能价格比,受到人们的重视和关注,应用很广,发展也很快。单片机的优点很多,如体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易等。单片机主要可用于以下几方面:(1)测控系统中的应用 控制系统特别是工业控制系统的工作环境恶劣,各种干扰也强,而且往往要求实时控制,故要求控制系统工作稳定、可靠、抗干扰能力强。单片机是最适宜用于控制领域。例如炉子恒温控制、电镀生产线自动控制等。(2)智能仪表中的应用 用单片机制作的测量、控制仪表,能使仪表向数字化、智能化、多功能化、柔性化发

14、展,并使监测、处理、控制等功能一体化,使仪表重量大大减轻,便于携带和使用,同时降低了成本,提高了性能价格比。如数字式 RLC 测量仪、智能转速表、计时器等。(3)智能产品 单片机与传统的机械产品结合,使传统机械产品结构简化、控制智能化,构成新型的机电一体化产品。如数控车床、智能电动玩具、各种家用电器和通信设备等。(4)在智能计算机外设中的应用 在计算机应用系统中,除通用外部设备(键盘、显示器、打印机)外,还有许多用于外部通信、数据采集、多路分配管理、驱动控制等接口。主机和单片机能并行工作,这不仅大大提高系统的运算速度,而且单片机还可对接口信息进行预处理,以减少主机和接口间的通信密度、提高接口控

15、制管理的水平。如绘图仪控制器,磁带机、打印机的控制器等等。综上所述,单片机在很多应用领域都得到了广泛的应用。由于单片机体积小、重量轻、抗干扰能力强、环境要求不高、价格低廉、可靠性高、灵活性好、开发较为容易等,本系统采用 AT89C52 单片机作为整个系统的控制核心,它对本系统中的键盘电路和传感器检测电路等部分输出的信号进行分析和处理,来控制显示电路、指示电路和报警电路等有序的工作。1.4 本文的内容安排本文的内容安排 本文共5章,各章内容如下:第1章为绪论,主要介绍了本设计的课题意义、设计内容及单片机的发展和应用。第2章为汽车防撞测距报警系统的总体方案设计,主要介绍了本设计的软件和硬件的总体设

16、计、方案的选择及可行性分析 第3章为汽车防撞测距报警系统的硬件设计,本部分详细介绍了各个电路的组成及工作过程。第4章为汽车防撞测距报警系统的软件的软件设计,本部分对各个子程序进行了详细介绍。第5章为系统的调试与分析,本部分主要介绍了软硬件的调试和联调过程,并对调试结果进行分析处理。2 汽车防撞测距报警系统汽车防撞测距报警系统的总体方案设计的总体方案设计 本课题是利用单片机的运算和控制功能设计了一个汽车防撞测距报警系统,实现了检测出汽车前后左右四个方向的障碍物位置和前方障碍物的具体距离,并用数字显示,在危险距离时发出急促的报警声。本章主要介绍了汽车防撞测距报警系统的方案论证和本系统所采用的软件方

17、案和硬件方案。2.1 方案论证方案论证 2.1.1 测距传感器介绍测距传感器介绍 测距传感器主要有激光测距传感器、超声波测距传感器及红外测距传感器。激光测距传感器工作时,先由激光二极管对准目标发射激光脉冲。经目标反射后激光向各方向散射。部分散射光返回到传感器接收器,被光学系统接收后成像到雪崩光电二极管上。雪崩光电二极管是一种内部具有放大功能的光学传感器,因此它能检测极其微弱的光信号。记录并处理从光脉冲发出到返回被接收所经历的时间,即可测定目标距离。超声波测距的原理一般采用渡越时间法 TOF(timeofflight)。首先测出超声波从发射到遇到障碍物返回所经历的时间,再乘以超声波的速度就得到二

18、倍的声源与障碍物之间的距离。常温下超声波在空气中的传播速度为 C=340m/s,根据计时器记录的时间 T,就可计算出发射点到距障碍物的距离 S,即:红外测距传感器利用红外信号遇到障碍物距离的不同反射的强度也不同的原理,进行障碍物远近的检测。红外测距传感器具有一对红外信号发射与接收二极管,发射管发射特定频率的红外信号,接收管接收这种频率的红外信号,当红外的检测方向遇到障碍物时,红外信号反射回来被接收管接收,经过处理之后就可测出实际距离。2TCs (2.1)2.1.2 测距传感器的选择测距传感器的选择 激光测距需要注意人体安全,且制做的难度较大,成本较高,而且光学系统需要保持干净,否则将影响测量。

19、红外测距精度低,距离近,方向性差。汽车防撞测距报警系统的工作环境复杂,测量距离要求也比较高,所以这两种测距传感器都不适合。而超声波测距比较耐脏污,即使传感器上有尘土,只要没有堵死就可以测量,可以在较差的环境中使用,测量距离可达几十米甚至上百米,完全满足本系统的要求,所以本设计采用超声波测距传感器实现障碍物距离测量。2.1.3 系统系统方案方案 根据设计任务要求,本文所设计的汽车防撞测距报警系统的原理框图如图2.1所示。系统选择MCS51系列单片机89C52作为控制核心,门控信号由89C52内部的定时器/计数器产生,所测数值通过由4位LED构成的显示电路显示出来。报警电路用于实现危险时的声光报警

20、,键盘可以根据实际需要设置危险距离的数值。光电传感器用于检测左右和后方的障碍物,超声波测距传感器用于检测前方障碍物的距离。图2.1 系统框图 89C52 单片机 键盘 LED 显示器 光 电 传 感 器 发光二极管 超声波测距传感器 报警电路 工作过程:传感器部分要有一个超声波测距传感器实现前方远距离测距,另外还要有三个光电传感器来实现左右后三个方向的检测,当左右后三个方向有障碍物时光电传感器输出开关量信号传送给单片机,通过单片机处理控制发光二极管指示障碍物位置并控制报警器实现报警。超声波传感器输出的信号通过单片机计算获得障碍物距离并通过 LED 显示器显示,并与键盘设定的保护距离作比较,小于

21、保护距离就通过反光二极管指示障碍物位置并报警。该方案电路结构简单,原理清晰,应用性比较强,性价比高,可扩展性比较强。检测范围只受传感器的性能影响,可根据实际需要更换传感器型号来实现预期目的,实现了电路测量范围的可变性。2.2 汽车防撞测距报警系统汽车防撞测距报警系统的硬件设计的硬件设计 根据系统原理框图,可知本系统的硬件部分主要是由指示电路、键盘电路、数码管显示电路及单片机相关电路组成。指示电路用单片机控制四个发光二极管实现指示四个方向障碍物位置。键盘电路包括 3 个键盘,包括默认键、自加键和确认健。当默认键按下时,系统取消保护距离设定,将采用系统默认保护距离。当自加键按下时,百位数字将在 0

22、9循环中加一,实现保护距离设置。当确认键按下时,保护距离设置完成。数码管显示电路采用四位共阴极七段数码管实现保护距离和前方实际障碍物距离的显示,其中后三位用来显示测量值,第一位用来显示设定值。单片机采用 89C52 是系统控制及数据处理的核心。2.3 汽车防撞测距报警系统汽车防撞测距报警系统的软件设计的软件设计 硬件是基础,软件是灵魂。通过软件控制单片机的功能是单片机的主要特点和优点,程序的设计要考虑合理性和可读性。程序遵循模块化设计的原则,采用自顶向下的设计方法。模块化设计使程序的可读性好、修改及完善方便。本系统的程序由主程序和数个子程序组成。其中子程序包括系统初始化程序、键盘识别程序、超声

23、波测距程序、数制转换程序和显示程序等。本系统软件总体流程图如图 2.2 所示。图2.2 系统软件流程图 系统初始化 设定保护距离 扫描左右后三个方向传感器是否有信号变化?指示位置加报警 计算实际距离并显示 比较是否小于保护距离?显示保护距离 超声波测距子程序 开始 Y Y N N 上电后,系统软件开始运行,首先进入初始化程序,然后通过键盘对保护距离进行设定并显示,设定结束后对左右后三个方向进行检测有无障碍物,有就跳转至指示位置和报警子程序,没有就启动超声波传感器对前方进行检测并计算出障碍物距离,然后显示障碍物距离,并与设定的保护距离进行比较,小于保护距离就报警和指示障碍物位置,然后再返回进行检

24、测,显示,指示及报警,如此循环。2.4 可行性及性价比分析可行性及性价比分析 本设计采用的器件都是比较常用的器件,都可批量生产,功能比较稳定并且价格也十分低廉。如 AT89C52 单片机、超声波传感器、光电传感器、同相驱动器 7407 以及七段数码管等。尤其是本次设计的核心元件 AT89C52 单片机,软件成熟,并具有种类齐全的支持芯片。这类微处理器既可用作控制器又适合于做数据处理,而且成本也比较低廉。由于本次设计着重考虑硬件电路的简单性,故尽可能减少硬件的复杂性,节省线路板的空间,达到硬件电路最优化设计。软件采用汇编语言编写,采用模块化设计思想,程序可读性强。总的说来,本次设计具有电路简单、

25、低成本、高性能的优点,如投入使用是能够为社会带来较高的经济效益的。3 汽车防撞测距报警系统汽车防撞测距报警系统的硬件设计的硬件设计 汽车防撞测距报警系统的硬件部分主要是由数码管显示电路、指示电路、键盘电路及单片机相关电路组成。3.1 单片机及其基本电路单片机及其基本电路 3.1.1 单片机及内部定时器单片机及内部定时器/计数器计数器 单片机是把那些作为控制应用所必需的基本内容都集成在一个尺寸有限的集成电路芯片上。它由微处理器、数据存储器、程序存储器、并行 I/O 口、串行口、定时器/计数器、中断系统及特殊功能寄存器等功能部件组成,能完成算术运算、过程控制、显示等功能,而且具有极为灵活的可编程性

26、,能方便地对系统进行功能扩展及改进。本设计以 89C52 单片机为核心,利用它内部的定时器/计数器完成待测信号的测量。单片机 89C52 内部具有 3 个 16 位定时器/计数器,定时/计数器的定时、计数和计数溢出中断等功能可通过编程实现。其引脚图如图 3.1 所示。图 3.1 单片机芯片引脚图 本设计中,最主要的测距功能是利用单片机内部的定时/计时器实现的,采用 T0作为定时器,T1 作为计时器。计时器 T1 对外部信号的高电平持续时间进行计时,如果外部信号没有高电平变化,系统就会等待高电平而不能继续执行,此时就需要定时器来控制等待时间,定时时间到就放弃计时,使系统正常工作。VCC P0.0

27、 P0.1 P0.2 P0.3 P0.4 P0.5 P0.6 P0.7 EA ALE PSEN P2.7 P2.6 P2.5 P2.4 P2.3 P2.2 P2.1 P2.0 AT89C52 40 39 38 37 36 35 34 33 32 31 30 1 29 28 27 26 25 24 23 21 22 10 14 15 16 17 20 19 18 13 12 9 8 7 4 11 6 5 3 2 3.1.2 时钟电路时钟电路 时钟是计算机的心脏,控制着计算机的工作节奏。单片机内部有一个由高增益反相放大器组成的振荡器。反相放大器输入端为 XTAL1,输出端为 XTAL2。单片机的振

28、荡方式有两种,即内部方式和外部时钟方式。单片机的内部时钟如图 3.2 所示。它是利用芯片内部反相器和电阻组成的振荡电路,在 XTAL1 和 XTAL2 引脚上跨接晶体振荡器和微调电容,从而构成一个稳定的自激振荡器,构成单片机的时钟电路。晶振可以在 1.2MHz12MHz 之间选用,电容 C1、C2 可以在 20pF100pF 之间选择,它的主要作用是帮助振荡器起振,其值的大小对振荡器频率有微调作用。本系统中的晶振选择为 11.0592MHz,C1=C2=30PF。图 3.2 单片机内部时钟电路 3.1.3 复位电路复位电路 89C52 的复位输入引脚 RST(即 RESET)为 89C52 提

29、供了初始化的手段。有了它可以使程序从指定处开始执行,即从程序存储器中的 0000H 地址单元开始执行程序。在 89C52 的时钟电路工作后,只要在 RST 引脚上出现两个机器周期以上的高电平时,单片机内部则初始复位。只要 RST 保持高电平,则 89C52 循环复位。只有当 RST 由高电平变成低电平以后,89C52 才从 0000H 地址开始执行程序。本系统的复位电路是采用按键复位的电路,如图 3.3 所示,是手动复位和上电复位的组合。当 89C52 的 ALE 及 PSEN 两引脚输出高电平,RST 引脚为高电平时,单片机复位。当系统运行出现异常或死循环时,通过按动按钮产生高电平复位称手动

30、复位。上电时,刚接通电源,电容 C 相当于瞬间短路,高电平立即加到 RST/VPD 端,该高电平使 89C52 全机自动复位,这就是上电复位。按下按钮,则直接把高电平加到了XLAT1 C C 晶 振 30PF 30PF XLAT2 XLAT1 AT89C52 RST/VPD 端从而复位称为手动复位。若运行过程中需要程序从头执行,只需按动按钮即可,复位后,P0 到 P3 并行 I/O 口全为高电平,其它寄存器全部清零,只有 SBUF寄存器状态不确定。为了保证电容充电时间足够长,应是电容值较大。R7 和 R8 的选择主要考虑到 R7 的分压作用,使 R7 的分压值最大能达到高电平,各参数选择为:C

31、=22F,R7=1 K,R8=100,在按键后复位端的电平能达到 4.5V。图 3.3 单片机复位电路 3.2 传感器电路传感器电路 3.2.1 超声波测距传感器电路超声波测距传感器电路 本部分采用DYP-ME007超声波测距传感器,DYP-ME007超声波测模块可提供3cm-3.5m的非接触式距离感测功能,包括超声波发射器、接收器与控制电路。其基本工作原理为给予此超声波测距模块一触发信号后发射超声波,当超声波投射到物体而反射回来时,模块输出一回响信号,以触发信号和回响信号间的时间差,来判定物体的距离。主要技术参数:使用电压:DC5V 静态电流:小于2mA 电平输出:高电平VCC-0.2V 低

32、0.2V 感应角度:不大于15 度 探测距离:2cm-500cm 探测精度:3MM RST AT89C52+5V C R7 R8 S 超声波测距模块的接脚图如图3.4,使用上只需要5V电源供应、地线连接、触发信号输入、与回响信号输出等四支接脚。使用方法:(1)采用IO触发测距,给TRIG至少10s的高电平信号(实际上25s最佳);(2)模块自动发送8个40kHz的方波,自动检测是否有信号返回;(3)有信号通过ECHO 返回,ECHO输出一高电平,高电平持续的时间就是超声波从发射到返回的时间。根据公式2.1方可算出距离.如此不断的周期测,就可以测出距离。图 3.4 超声波测距模块的接脚图 超声波

33、测距传感器与单片机的连接图如图 3.5 所示,工作时单片机 P3.1 口首先输出一个 10s 高电平脉冲,然后 P3.3 口等待高电平,利用单片机的计时功能获得高电平时间,从而实现测距功能。图 3.5 超声波测距传感器与单片机连接图 3.2.2 光电传感器检测电路光电传感器检测电路 在汽车防撞测距报警系统中,汽车的左、右及后方三个方向也要对障碍物进行检测,由于此部分不要求测出实际距离,只需检测车体附近有无障碍物即可,所以本部分选择了光电开关。光电开关工作原理是通过把光强度的变化转换成电信号的变化来实现控制的。光电开关在一般情况下,有三部分构成,它们分为:发送器,接收器和检测电路。发送器对准目标

34、发射光束,发射的光束一般来源于半导体光源,发光二极管(LED)和激光二极管。光束不间断地发射,或者改变脉冲宽度。接收器有光电二极管或光电三极管组成。在接收器的前面,装有光学元件如透镜和光圈等。在其后面是检测电路,它能滤出有效信号和应用该信号。此外,光电开关的结构元件中还有发射板和光导纤维。三角反射板是结构牢固的反射装置。它由很小的三角锥体反射材料组成,能够使光束准确地从反射板中返回,具有实用意义。它可以在与光轴0到25的范围改变发射角,使光束几乎是从一根发射线,经过反射后,还是从这根反射线返回。其原理图如图3.6。AT89C52 P3.1 P3.3 VCC Trig Echo OUT GND

35、超声波测距传感器 图 3.6 光电开关的原理图 本系统中光电传感器采用三个 E3F3-DS50N1 型光电开关,分别对汽车左后及后方三个方向的障碍物进行检测,测量范围为 50cm,当障碍物距离车体距离小于 50cm 时,光电开关输出信号的电平变化会被单片机获取,单片机会控制指示电路和报警电路指示障碍物位置并报警。其与单片机的连接电路如图 3.7。vcc vcc vcc 图 3.7 光电开关与单片机的连接电路 AT89C52 P1.5 P1.6 P1.7 VCC OUT GND 光电开关 VCC OUT GND VCC OUT GND 光电开关 光电开关 3.3 键盘电路键盘电路 在本设计中,利

36、用键盘进行各个功能的选择,它是系统进行人机对话的重要部件。由于系统需要的按键较少,因此只采用了独立式键盘。此种键盘各键相互独立,每个按键各接一根输入线,通过检测输入线的电平状态可以很容易的判断哪个按键被按下。独立式键盘电路的连线图如图 3.8 所示。采用查询方式,通过判断 P0.0P0.2的高低电平变化来识别键盘上是哪个功能键闭合。图 3.8 电路中,1 号键为默认功能键,2 号键为自加功能键,3 号键为确认功能键。1 2 3 Vcc 3.9K3 图 3.8 键盘原理图 3.4 数码管显示数码管显示电路电路 LED 是发光二极管的缩写。LED 显示器由发光二极管构成的,所以在显示器前面冠以“L

37、ED”。LED 显示器在单片机系统中的应用非常普遍。常用的 LED 显示器为 8 段,每一个段对应一个发光二极管,有共阳极和共阴极两种,本系统中采用的是共阴极的 LED 显示器。共阴极 LED 显示器的发光二极管的阴极连接在一起,通常此公共阴极接地,当某个发光二极管的阳极为高电平时,发光二极管点亮,相应的段被显示。为了使 LED 显示器显示不同的符号或数字,就要把不同段的发光二极管点亮,这样就要为 LED 显示器提供代码,因为这些代码可使 LED 相应的段发光,从而显示不同AT89C52 P0.0 P0.1 P0.2 字型,因此该代码称之为段码。LED 外观图如图 3.9 所示,内部图如图 3

38、.10 所示。图 3.9 LED 外观图 图 3.10 共阴极 LED 内部图 显示电路中,由四位 LED 显示器组成,后三位显示所测量的数值,第一位显示设定值。在硬件设计中,其电路图如图 3.11 所示。显示电路采用动态显示,工作时AT89C52 单片机的 P0.4P0.7 引脚控制四位共阴极显示器的位选,P2 口输出段码。A 74LK777774 1 2 3 4 Vcc .1008 图 3.11 显示电路图 a b c d e f g dp AT89C52 P0.7 P0.6 P0.5 P0.4 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 7404 74

39、07 3.5 指示及报警指示及报警电路电路 本部分电路由五个发光二极管和一个蜂鸣器组成,指示电路利用四个发光二极管实现指示障碍物位置;报警电路是由一个发光二极管作为闪光灯和一个蜂鸣器发出急促的报警声组成。指示及报警电路如图 3.12。Vcc 470 470 图 3.12 指示及报警电路图 本电路中,P1.0-P1.3 口控制四个发光二极管,分别指示前后左右四个方向是否有障碍物,哪个方向有障碍物哪个二极管就亮;P1.4 控制报警电路,报警时 P1.4 口输出一个方波信号,使发光二极管不停地闪烁和蜂鸣器发出急促的报警声。蜂鸣器由PNP 型三极管驱动。AT89C52 P1.0 P1.1 P1.2 P

40、1.3 P1.4 470 470 470 2K 20 蜂鸣器 4 汽车防撞测距报警系统汽车防撞测距报警系统的软件设计的软件设计 软件的设计应遵循结构化设计原则,在总体概况设计的基础上进行具体的详细设计、功能分解、模块划分、细化软件层次、优化软件结构,以达到模块功能的独立性,执行的高效性。该系统的软件程序由主程序和数个子程序模块组成,其中子程序包括系统初始化程序、按键识别程序、超声波测距程序、数制转换程序、报警和显示程序等。4.1 主程序设计主程序设计 系统软件开始运行,首先进入初始化程序,然后通过键盘对保护距离进行设定并显示,设定结束后对左右后三个方向进行检测有无障碍物,有就跳转至指示位置和报

41、警子程序,没有就启动超声波传感器对前方进行检测并计算出障碍物距离,然后显示障碍物距离,并与设定的保护距离进行比较,小于保护距离就报警和指示障碍物位置,然后再返回进行检测,显示,指示及报警,如此循环。其主程序流程图如图 2.2 所示。4.2 子程序设计子程序设计 4.2.1 按键识别程序按键识别程序 本系统中,键盘采用编程扫描的工作方式。按键识别程序由三个部分组成。(1)判断有无键闭合。(2)去除键的机械抖动。其方法为,判别出键盘上有键闭合后,延迟一段时间后再判别键盘的工作状态,若仍有键闭合,则认为键盘上有一个键处于稳定的闭合期,否则认为是键的抖动。(3)判别是哪个键按下,再转入相应的功能测试程

42、序中。该程序流程图如图 4.1 所示。图4.1 键盘识别程序流程图 4.2.2 超声波测距超声波测距程序程序 在本模块中,采用单片机内部时钟方式进行计时和定时,选用 11.0592MHz 的晶振。被测信号由 P3.3 引脚输入,P3.1 作为超声波传感器的控制信号。当 P3.1 引脚为10us 高电平以后,启动定时器定时 5ms,然后等待 P3.3 引脚由低电平变为高电平。如果在 5ms 后 P3.3 口电平还没有变化,则说明超声波没有检测到障碍物,此时停止等待,去执行下一模块程序;如果在 5ms 内 P3.3 口电平低电平变为高电平,才开始计时,即启动计时器 T1 对外部超声波传感器产生信号

43、的高电平时间进行测量,当检测到单片机 P3.3 引脚变为低电平时停止计时,获得高电平时间。该程序流程图如图4.2 所示。N Y 调用延时程序消抖 开始 判断是否有键按下?确定按键位置 调用相应功能模块 返回 判断是否真的有键按下?N Y 图4.2 超声波测距程序流程图 开始 设置 T0,T1 控制字 P3.1 口输出 10us 高电平 启动定时器 T0 定时时间到?P3.3 口是否变为高电平?启动计时器 T1 P3.3 口是否变为低电平?关闭计时器 T1 读 TH1,TL1 的值 返回 Y Y Y N N N 4.2.3 数制转换程序数制转换程序 为显示距离,必须将二进制码转换为 BCD 码。

44、在二进制中,每向左移一位表示数乘以二倍。每四位为一组对二进制数分组。当第四位向第五位进位时,数由 8 变到16,若按十进制读数,则丢失 6。可见,转换可由移位的方法实现。单片机中 DA 指令可完成这一调整。DA 操作数为 8 位。数字量经过系数调整后,高 8 位存入 31H 中,低 8 位存入 30H 中,并设置 R3、R4、R5 来转换信息,R2 控制循环次数为 16 次,即完成 16 位数的一个整体循环移位。将移出的数进行保存、调整。直到移位结束,调整完毕。由于调整后 R3、R4、R5 中存放的是两位的十进制数后进行 BCD 码分离,将百位放在 41H 中,十位和个位分别放在 42H 和

45、43H 中,以便于显示。该程序流程图如图 4.3 所示。图 4.3 数制转换程序流程图 二进制数据左移 BCD 数加 2 进位 Y 存储十进制调整后的数 数字移位结束?N 位数到?Y N 返回 存储计数器的计数值 存储二进制数移动位数 开始 4.2.4 显示程序显示程序 四位显示器采用动态显示的方式。在 89C52 单片机内部 RAM 中设置 4 个显示缓冲单元 40H43H,分别存放显示器要显示的三位数据和设定值。首先将#40H 赋给R1,将第一位位选地址送给 R0,最后将段码送出,送完一位后,R1 加 1,而 R0 对应的位选也移至下一位,这样显示器的四位就动态地显示出缓冲区中显示数据所确

46、定的字符。89C52 单片机的 P0.4P0.7 用来控制四位共阴极显示器的位选口,而 P2 口则输出段码。该程序的流程图如图 4.4 所示。N Y 图 4.4 显示程序流程图 开始 R1:显缓首地址 R0:最左位片选码 查表取段码 段码送 P2 口 位码送 P0 口 延时 4 位显示完?返回 R1+1 R0 左移 4.2.5 报警子程序报警子程序 报警子程序是控制 P1.4 口输出一个方波信号,使发光二极管不停地闪烁和蜂鸣器发出急促的报警声。该程序的流程图如图 4.5 所示。图 4.5 报警子程序流程图 开始 设置报警时间 设置电平持续时间 置 P1.4 口为高电平 电平持续时间到?P1.4

47、 口电平取反 报警时间到?返回 Y N Y N 5 系统调试与分析系统调试与分析 汽车防撞测距报警系统的调试分为系统的硬件、软件单独调试和软硬件联调。调试是系统最后的步骤也是系统特别重要的环节,因为设计和开发出的系统是否成功,功能是否完善,通过调试才得以检验。所以为了保证设计系统能够正常工作,必须认真对软件以及硬件电路的每一个部分进行调试和分析。5.1 单片机仿真系统介绍单片机仿真系统介绍 单片机的仿真系统有很多,本次采用的仿真系统是由南京伟福实业有限公司开发的伟福仿真器进行软件调试的,此系统可以开发、调试应用软件,也可以对硬件电路进行诊断、调试等。它可以进行 CPU 仿真,可以单步、跟踪、断

48、点和全速运行程序,这样可以使调试变的非常方便。而且,程序的编译过程中,可以对软件程序进行语法检测,并自动给出错误原因,方便用户调试。同时用户调试程序时,可以通过窗口观察寄存器的工作状况,以便及时发现和排除编程中可能出现的错误。可以看出,该仿真系统是一款功能强大,实用性强的仿真系统。5.2 汽车防撞测距报警系统汽车防撞测距报警系统的硬件调试的硬件调试 硬件调试工作的主要任务是完成硬件组成单元的逻辑测试,测试基本功能能否实现,排除故障,主要包括完善设计方案和焊接工艺上的工艺性故障(例如虚焊,短路等)。在焊接硬件电路之前,反复进行此系统的硬件电路的可行性分析,确定了在理论上确定方案的硬件电路是可行的

49、,才进行焊接。在焊接电路以前,对一些拿不准的电路在面包板上做些简单的连接实验,确定无误后,进行焊接工作。在焊接硬件前,首先做布局工作,防止在焊接电路时出现电路板不够用或不宜走线的情况。如果布局不合理,很容易造成干扰,还容易出现虚焊等问题。当这种情况发生时,就得重新焊接。硬件调试有以下的步骤:(1)对照系统电路图,仔细检查焊接好的电路连线是否和电路图一致。(2)用实验室的万用表按照设计的电路图检查所焊接的各个部件的电源、接地及各个引脚的连接线是否正确、电路是否导通,是否有虚焊,短路等情况发生。在焊接完成后,要给电路板接通电源,检测每个底座的电流有多大,如若检测后,所有部件都为正常,方可插入芯片做

50、以后的调试工作。(3)在保证电路芯片没有插错,电路连接全部正常时,接到仿真器件上进行调试,通过观察各个部件输出和响应,结果表明所设计的电路满足设计要求。5.3 汽车防撞测距报警系统汽车防撞测距报警系统的软件调试的软件调试 汽车防撞测距报警系统的软件部分的部分子程序是通过唐都实验箱来调试的,具体的调试步骤如下:(1)把系统的各个子程序在仿真软件中逐个调试,如按键识别程序、数制转换程序、显示程序、报警程序等。对程序进行单步调试,观察仿真器窗口,看输出结果、内存单元以及各个特殊寄存器中的值是否符合理论值。如果不符合,观察是在什么地方发生了错误,并及时进行改正。这个步骤是至关重要的,如果各个子程序都正

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

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号