车辆工程毕业设计28汽车信号灯控制系统_第1页
车辆工程毕业设计28汽车信号灯控制系统_第2页
车辆工程毕业设计28汽车信号灯控制系统_第3页
车辆工程毕业设计28汽车信号灯控制系统_第4页
车辆工程毕业设计28汽车信号灯控制系统_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目 录 引言 1 第一节 LK-51 系列单片机学习机的简介、焊接安装 1 第二节 汽车信号灯控制系统课题简介 3 第一章 系统总体设计 思路 4 第二章 硬件 系统 设计 5 第三章 软件 系统 设计 7 第一节 软件系统的框架 7 第 二节 各模块之间的接口设计 8 第三节 驾驶操作扫描模块的设计 11 第四节 信号灯响应模块的设计 11 第 五 节 主程序的设计 13 第四章 系统调试 14 总结 15 致谢 16 参考文献 16 附录 A 元器件清单 17 附录 B 程序清单 18 1 引言 本 次课程 设计是 让我们 使用在 “单片机原理及应用”课堂上学习的知识,辅以相关 资料 的 查阅, 完成一个小型 单片机 应用系统的设计开发。 目的是 培养我们的 自学的能力 , 引导我们进行 创新 思 维,把学到的知识应用到日常生活当中。 第一节 LK-51 系列单片机学习机的简介 、焊接安装 本次课程设计我们是在 LK-51系列单片机学习机 上调试完成的。 LK-51 单片机学习机是一款具有编程、实验、仿真和开发等功能的单片机学习机。具有资源丰富、稳定性好、使用方便、便于扩展开发和高性价比等特点。不需其他仿真器和编程器等工具,可直接通过串行口下载程序,或在线仿真,方便快捷,适合于单片机学习和应用者完成实验、课程设计、科技创新活动以及应用开发等。利用该款学习机可极大的降低学习单片机的成本,用户还可以通过实 验例子理解编程思路,学习单片机应用系统的一般设计和调试方法等, 快速的掌握单片机技术。 该学习机由基本实验主机板和若干功能扩展 模块构成。实验主机板除 51 系列单片机芯片外,其主要硬件资源有: ( 1) 8 路 LED 指示; ( 2) 4 位 7 段数码管以及驱动电路; ( 3) 1 个 43 矩阵式键盘以及接口电路, 1 个独立式中断按键; ( 4) 1 个蜂鸣器或小型扬声器; ( 5) 1 个继电器输出电路,含常开常、闭触点; ( 6) 1 片 AT24C02 存储器芯片; ( 7)一个塑封一体化红外线接收头; ( 8) 1 个三位拨码开关; 2 ( 9) 1 根 RS232 串口通讯接口以及下载线,可完成程序下载、在 线仿真(用SST 芯片),并实现与 PC 机以及与其他单 片机之间的通信; ( 10) 1 个可对 S5X 系列单片机编程的 ISP 接口; ( 11)可对用户开放的全部 I/O 口引脚,方便用户根据需要进行功能扩展和二次开发; ( 12) 1 个整流、滤波稳压电路,可采用 712V 电源输入(交、直流均可),对本机提供 5V 工作电压,并可对扩展功能模块提供 5V和 12V 直流电源。 该学习机由基本实验主机板和若干功能扩展模块构成。所有元件安装在一块单面印制电路板上。焊接安装步骤如下: 1. 准备好焊接工具和所需元件元件 ; 2. 看清安装图,了解元件安装位置; 3. 器件焊接: ( 1)焊接元件面跳线( 1 根);首先根据线段的长短用镊子进行定型,插入对应的安装孔,然后焊接。并用斜口钳剪掉高出部分。 ( 2)依次焊接电阻: 1K ( 16 个)、 2K ( 2 个) 2. 2K ( 1 个)、 200 ( 1 个); ( 3)依次焊接整流二极管( 4 个)、续流二极管 IN4148( 1 个); ( 4)依次焊接电容: 104 独石( 4 个) 、 104 瓷片( 5 个)、 30P( 2 个); ( 5)焊接晶振 11.0592M( 1 个); ( 6)依次焊接排阻: 102(左边) ( 7)依次焊接芯片插座: 40 脚、 16 脚、 8 脚各 1 个; ( 8)焊接轻触按键共 14 个; ( 9)焊接三极管: 9012( 1 个)、 9015( 5 个); ( 10)焊接电源指示 LED( 1 个)、 P1 口长方形 LED( 8 个); ( 11)依次焊接电解电容: 22 F ( 1 个)、 220 F ( 1 个)、 1000 F ( 2 个); ( 12)依次焊接拨玛开关、显示器、扬声器、继电器; ( 13)依次焊接跳针( 5 个)、扩展排针(两排); ( 14)依次焊接电源接插件( 4 个)、电源开关( 1 个); 3 ( 15)将 7805 装好散热片,焊接 7805。 4. 检验步骤: ( 1)接通电源,分别检查芯片插座的电源 ,结果显示所有芯片插座的电源都在 V)1.05( 范围内。 ( 2)装上 P1 口电源跳线帽,用导线将 40 脚插座的 18 脚分别接地, 8个LED都能 被点 亮 。 ( 3)装上继电器跳线帽,用导线将 40 脚插座中左边从下数第 5脚接地 , 能听到继电器“咔咔”的动作声音。 ( 4)完成以上三项检查正常后,装好复位跳线帽,安装主芯片运行检验程序检查键盘、显示器、小喇叭、继电器以及中断工作 ,全部 正常 。 5. 以上各项检查都正常 ,焊接安装成功 ,可以进行下一步的系统设计开发工作了 。 第二节 汽车信号灯控制系统 课题 简介 本课题以单片机为核心,设计出 汽车尾灯控制系统 ,具有以下功能: 1. 驾驶操作与灯光信号对应关系: 左 /右转弯 (合上左 /右开关 ):仪表板左 /右转弯灯、左 /右头灯、左 /右尾灯闪烁; 紧急开关合上:所有灯闪烁; 刹车 (合上刹车开关 ):左右尾灯亮; 左 /右转弯刹车:仪表板左 /右转弯灯、左 /右头灯、左 /右尾灯闪烁,右 /左尾灯亮; 刹车、合上紧急开关:尾灯亮、仪表板灯、头灯闪烁; 左 /右转弯刹车,并合上紧急开关:右 /左尾灯亮,其余灯闪烁; 2. 所需执行的操作由相应的开关状态反映 ; 3. 所需控制的信号灯有仪表板左 /右转弯灯、左右头灯和左右尾灯共六类灯,信号灯用 LED 显示灯模拟。 4 第 一 章 系统总体设计 思路 汽车信号灯部分对硬件的需求只有六个发光二极管(模拟六组信号灯) 和四个按键(对应着左转、右转、刹车、紧急开关四种基本操作信号)。 软件系统 的设计 就是 通过编写程序, 让 这些简单的硬件组合 去实现系统所有的功能 。 5 第 二 章 硬件 系统 设计 汽车信号灯控制系统 的输入为 左转、右转、刹车、紧急开关闭合四种基本操作, 分别 用四个 按键接入单片机的 P2.4P2.7。 输出为两组头灯、两组尾灯、两个仪表板灯,用 P1 口的低六位作为驱动信号。 另接一个发光二极管到 P1.7,作为系统正常工作的指示灯。 单片机选用 STC89C52。 6 图 2-1 硬件 原理 图 7 第 三 章 软件 系统 设 计 汽车信号灯控制系统可分为:左转、右转、刹车、紧急开关闭合四种基本操作,而按要求又可组合为九组操作,即左转弯、右转弯、紧急开关合上、刹车、左转弯刹车、右转弯刹车、刹车并合上紧急开关、左转刹车并合上紧急开关、右转刹车并合上紧急开关。一般的设计思路是,分别设计九个子程序表示以上的九种操作功能,这种设计思路很容易理解和实现。但是,这种设计思路的实现有诸多缺陷,比如说,不能够在第一时间内响应加驶员的驾驶操作。我们想出了一个非常简单的而且易于理解易于实现的方法。 第一节 软件 系统 的框架 根据系统的要求和硬件 的设计,我 们设计出了如下图 3-1 所示的软件系统的结构图 。 图 3-1 软件系统结构图 8 第二节 各模块之间的接口设计 驾驶操作 的 按键扫描 、信号灯的响应(闪烁和亮灭)、时钟的调节、时钟的运行还有时钟的显示都可以作为一个独立的模块来实现 。 让我们先来定义一下这些模块之间的接口吧。 驾驶操作的按键组合与信号灯的响应(闪烁和亮灭)存在一对一的关系,我们将它们以表格的形式罗列了出来。 表 3-1 驾驶操作与信号灯的关系 左转弯 右转弯 紧急 刹车 仪表板 头灯 尾灯 左 右 左 右 左 右 通 断 通 通 闪 亮 闪 闪 闪 闪 通 断 断 通 闪 闪 闪 闪 闪 亮 通 断 断 断 闪 灭 闪 灭 闪 灭 断 通 通 通 亮 闪 闪 闪 闪 闪 断 通 断 通 闪 闪 闪 闪 亮 闪 断 通 断 断 灭 闪 灭 闪 灭 闪 断 断 通 通 闪 闪 闪 闪 亮 亮 断 断 通 断 闪 闪 闪 闪 闪 闪 断 断 断 通 灭 灭 灭 灭 亮 亮 这样看似乎有些不明显,让我们来加工一下,使它清楚一些。思考一下,一盏灯怎样才能闪烁呢? 对了,让它一会儿亮,一会儿灭,不就“闪”起来了吗?这 问题很简单对吗?我们的整个系统就是建立在这个认识之上。 我们设想在那盏“闪烁”的灯“亮”的时候和“灭”的时候分别制一张像上表一样的表,并 将 各个控制开关的“通”和“断”分别用“ 0”和“ 1”代替,将 制表的那一瞬间各灯的“亮”和“灭”分别用“ 0”和“ 1”表示,这表会是个什么样子呢? 9 表 3-2 闪烁的信号灯“亮”时的驾驶操作与信号灯的关系 左转弯 右转弯 紧急 刹车 仪表板 头灯 尾灯 左 右 左 右 左 右 0 1 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 1 1 1 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 0 1 0 1 0 0 0 0 0 0 0 1 0 1 1 1 0 1 0 1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 0 0 1 1 1 0 1 1 1 1 0 0 表 3-3 闪烁的信号灯“ 灭 ”时的驾驶操作与信号灯的关系 左转弯 右转弯 紧急 刹车 仪表板 头灯 尾灯 左 右 左 右 左 右 0 1 0 0 1 0 1 1 1 1 0 1 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 1 1 0 1 0 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 0 0 1 1 1 1 0 0 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 0 0 10 我们按照表 3-2与表 3-3中各行的数字看作是两个相关联的二进制编码 驾驶操作 4 位;信号灯响应 8 位 ( 上表中的 6 位 作为低 6 位, 一 盏 始终“闪烁”的系统工作指示灯 作为最高位 , 第七位没用,置“ 1” )。 那么我们就得到了一个具 有信号灯控制作用的表格,如表 3-4 所示。 表 3-4 信号灯控制表格 控制字 “ 亮 ” 数据 “暗” 数据 04H 40H EFH 06H 40H FEH 07H 55H FFH 08H 40H DFH 0AH 40H FDH 0BH 6AH FFH 0CH 40H FCH 0DH 40H FFH 0EH 7CH FCH 有了上面这张表,我们就可以直接从驾驶操作的按键中读取“控制字”,再通过“控制字”查表得到相应的信号灯亮暗数据,直接送信号灯显示就可以了。简单吧? 我们现在就可 以很轻松地定义驾驶操作的按键扫描模块与信号灯响应模块之间的接口了。 设 置一个“亮”数据和一个“暗”数据的缓存,驾驶操作的按键扫描模块根据按键组合查表,得到与之对应的“亮”数据和“暗”数据, 存入各自的缓存中。 信号灯响应模块 按照一定的时间间隔分别取出“亮”数据和“暗”数据 送 P1 口驱动信号灯显示。 第三节 驾驶操作扫描模块的设计 11 驾驶操作扫描模块的 程序 流程图如下图 3-2 所示。 图 3-2 驾驶操作扫描程序流程图 第四节 信号灯响应模块的设计 因为信号 灯响应模块需要按一定的时间间隔来轮流显示“亮”数 据和“暗”数据,所以我们把它放在定时器 T0 的中断服务程序中实现。 在系统缓冲区中设置 一个显示次数的数据 ,初始时设置一个合适的值 , T0 定时 10ms,每次 T0 中断该数据都减一。直到该数据为零时,重新设置合适的值,同时更换“亮”“暗”数据的显示。 信号灯响应模块的程序流程图如下图 3-3 所示。 12 图 3-3 信号灯响应程序流程图 13 第 五 节 主程序的设计 系 统开机以后,先进行整个系统的初始化工作,包括对各个数据缓冲区的初始化工作,对定时器 T0、 T1 的初始化工作等。然后打开系统用到的两个定时器中断和总中断开关 , 起动 T0 和 T1。 接下来只要循环调用驾驶操作扫描程序、时钟调节程序和时钟显示程序就可以了。主程序的流程图如下图 3-7 所示。 图 3-7 主程序流程图 14 第 四 章 系统调试 先下载程序到单片机中,然后开 机 运行 。 用手指按住作为左转弯开关的按键不放(在实际应用中此信号就是电平信号), 仪表板左转弯灯、左头灯、左尾灯闪烁; 用手指按住作为右转弯开关的按键不放, 仪表板右转弯灯、右头灯、右尾灯闪烁; 用手指按住紧急开关不放,所有灯闪烁;用手指按住刹车按键不放,左右尾灯亮;用手指按住 左转弯按键和刹车按键, 仪表板左转弯 灯、左头灯、左尾灯闪烁,右尾灯亮; 用手指按住右转弯按键和刹车按键, 仪表板右转弯灯、右头灯、右尾灯闪烁,左尾灯亮;用手指按住刹车按键和紧急按键, 尾灯亮、仪表板灯、头灯闪烁; 用手指按住左转弯按键,刹车按键和紧急按键, 右尾灯亮,其余灯闪烁; 用手指按住右转弯按键,刹车按键和紧急按键, 左尾灯亮,其余灯闪烁; 至此整个系统调试完毕。 15 总结 在这两周的学习和设计中,使我充分认识到理论联系实际的重要。安装和调试自始至终要有严谨的科学作风,不能抱有侥幸心理。理论固然重要,但是在实际应用中遇到的很多问题是不容忽视的。 在 第一周,我们通过找大量的资料和同学们一起研究和讨论,认识设计的内容,将其分为两大部分(硬件设计部分和软件设计部分),终于设计出一套完整的方案。但是将这些具体的方案落实到实际设计中,出现很多错误,而那些错误在原则上是 可以避免的 ,这就需要我们在调试过程中利用所掌握的知识认真检查,发现不足。然后在讨论如何解决不足之 处,如此 一次次的改,一次次的查,直到完全符合我们的功能要求。 无数次的尝试总算是把设计搞好了,电路调试成功。真是难以去形容那种愉悦的心情。自己的付出总算是有了回报。我也得到了自己知识不足的教训。感觉在知 识不牢固的时候是多么无助。自己要反复的去查阅以前的课本和书籍是多烦琐的事情。这也就坚定了我在以后的学习中要认真学好基础知识的决心。 总体来说,这次实习使我受益匪浅。在摸索该如何设计电路使之实现所需功能的过程中,特别有趣,培养了我的设计思维,增加了实际操作能力。在让我体会到了设计电路的艰辛的同时,更让我体会到成功的喜悦和快乐。 通过这次课程设计,我认识到单片机设计中应注意的几个问题 : ( 1)采用模块化、子程序化的优点是便于连接和移植,特别是重复使用时尤为方便。但使用者必须预先明确各子程序的入口参数、出口参数和 所占用的资源,合理利用堆栈,避免主程序与子程序之间、子程序与子程序之间 16 所占用的资源发生冲突。 ( 2)在调试程序前,一定要预先将源程序分析透彻,在此基础上训练如何通过实验现象分析和判断产生故障的原因及故障可能存在的大致范围;灵活运用开发系统所提供的各种调试方法,快速有效地排查和缩小故障范围。通过反复调试,不断地分析和排除故障,调试软件和硬件的能力及速度。 ( 3)调试程序时,要结合能反映故障存在与否的参数变化、运行路径变化、显示内容变化等,选择合适的观测点和观测对象,再运用适当的调试方法,快速地检验调试结果,由 此分析和判断故障点。 致 谢 两周的课程设计结束了,在此我想对我的指导老师 王迎旭 老师表达我衷心的谢意。在 她 耐心的指导下, 使这次 课程设计 取得了较满意的结果 。 这次设计过程中得到了 其他 老师的指导和帮助 ,在此一并表示衷心的感谢。 在设计中,我查了不少参考资料,在此向其作者表示敬意! 参考文献 1 王迎旭编单片机原理与应用 M机械工业出版社 2004.7 2 楼然苗编 51 系列单片机设计实例 M北京航空航天大学出版社 3 陈光东编 单片微型计算机原理及接口技术 M 华中科技大学出版社 17 附录 A 元器件清单 LK-51 系列单片机学习机 ( 印制电路板一块, STC89C52 单片机一块, 发光二极管七只,轻触按键 6 个, 1K 电阻 13 个, 102 排阻一个, 30pF 电容 2 个,22 F 电容 一个 , 4 位 7 段数码管一个, 三极管 9015 四只, 12MH

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论