微机原理及应用课程设计交通灯系统设计

上传人:痛*** 文档编号:142686303 上传时间:2022-08-25 格式:DOC 页数:26 大小:455.52KB
返回 下载 相关 举报
微机原理及应用课程设计交通灯系统设计_第1页
第1页 / 共26页
微机原理及应用课程设计交通灯系统设计_第2页
第2页 / 共26页
微机原理及应用课程设计交通灯系统设计_第3页
第3页 / 共26页
点击查看更多>>
资源描述
微机原理及应用课程设计说明书交通与汽车工程学院课程设计说明书课 程 名 称: 微机原理及应用课程设计 课 程 代 码: 题 目: 交通灯系统设计 年级/专业/班: 08/车辆工程/汽车电子1 学 生 姓 名: 学 号: 开 始 时 间: 2011 年 7 月 11 日完 成 时 间: 2011 年 7 月 15 日课程设计成绩:学习态度及平时成绩(30)技术水平与实际能力(20)创新(5)说明书(计算书、图纸、分析报告)撰写质量(45)总 分(100)指导教师签名: 年 月 日目 录摘要 21 引言 31.1 问题提出 31.2 任务与分析 32 方案设计 42.1 蓄电池电压检测系统设计方案论证 42.2 最终设计方案总体设计框图 43 系统硬件设计 53.1 80C51单片机 53.2 时钟电路 63.3 复位电路 74 系统软件设计 84.1 主程序框图 84.3 中断服务子程序框图 94.4 延时子程序框图 95 系统调试过程 125.1原理图和印制板图绘制和检查 125.2 Keil程序调试 135.3 Proteus仿真调试 13结论16致谢 17参考文献 18附录A 程序源代码19附录B 交通灯系统框图21附录C 电路原理图和PCB图 22附录D Proteus仿真和蓄电池电压检测输出图 24摘 要本系统才用了AT89C51为中心器件来设计交通灯控制器件,系统实用性强,操作简单。系统主要是LED显示系统、上电自动复位系统,能较好的模拟十字路口出现的交通状况。软件上采用了C51编程,程序由主程序、led显示程序、中断服务程序,经过整机调试,实现了十字路口交通灯得模拟。关键词:单片机;LED;交通灯;AT89C51 1 引 言 1.1 问题的提出 目前红绿灯安装在各个路口上,已经成为疏导交通车辆最常见和最有效的方法,这一技术在很早就被运用了。十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯绿灯”转换间隔,并自动切换。它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。在交通灯的通行与禁止时间控制显示中,通常要么东西、南北两方向各50秒;要么根据交通规律,东西方向60秒,南北方向40秒,时间控制都是固定的。交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受认为因素的影响。采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。另外,通过当今计算机软件和硬件快速的发展,在许多的领域都有成熟的仿真软件的应用,Labcenter公司的Proteus具有微控制器的仿真功能等功能,其最大的特点就是能进行单片机以及外围芯片的仿真,通过其对设计产品的仿真,可以更好的帮助设计者进行计算机控制系统的分析及设计。1.2 任务与分析 本文的主要任务是所缩短交通灯的时间,提高城市交通的通过率,减少交通堵塞,满足司机和路人的实际需求。重点是利用软件编程来控制交通灯的长短。在整体的硬件组成设计中电源由稳压器的+5V输出提供。四个交通灯组成系统的LED显示系统,交通灯直接由单片机驱动直接显示,所以本次课程设计的外围电路比较简单,几乎没有其它所需的外部电路,因此51系列单片机完全可以胜任。2 方案设计 2.1交通灯系统设计方案论证方案1:利用延时来控制交通灯的亮的时间方案2:利用中断定时来控制交通灯的亮的时间进行方案比较,最终选取方案2,因为定时器定时比较简单,可以简化程序,减少程序篇幅,并且定时准确,定时计算简单。2.2 最终设计方案总体设计框图复位电路 P0口80C51单片机LED交通灯显示电路时钟电路电源电路图2-1 系统总体框图单片机通过P0口控制交通灯的各种状态,LED交通控制灯显示各个交通的亮灭状态。在表1中给出了交通灯控制器的4种状态,对应的状态迁移过程见表(1)。表(1)交通灯控制器的4种状态东西走向南北走向状态0红、黄、绿001红、黄、绿100状态1红、黄、绿011红、黄、绿100状态2红、黄、绿100红、黄、绿001状态3红、黄、绿100红、黄、绿011 3 系统硬件设计3.1 80C51单片机3.1.1 80C51单片机介绍80C51是INTEL公司MCS-51系列单片机中最基本的产品,它采用INTEL公司可靠的CHMOS工艺技术制造的高性能8位单片机,属于标准的MCS-51的HCMOS产品。它结合了HMOS的高速和高密度技术及CHMOS的低功耗特征,它继承和扩展了MCS-48单片机的体系结构和指令系统。 80C51内置中央处理单元、128字节内部数据存储器RAM、32个双向输入/输出(I/O)口、2个16位定时/计数器和5个两级中断结构,一个全双工串行通信口,片内时钟振荡电路。P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST/VPD9RXD P3.010TXD P3.111INT0 P3.212INT1 P3.313T0 P3.414T1 P3.515WR P3.616RD P3.717XTAL218XTAL119VSS20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN29ALE/PROG30EA/VPP31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039VCC4089C51 此外,80C51还可工作于低功耗模式,可通过两种软件选择空闲和掉电模式。在空闲模式下冻结CPU而RAM定时器、串行口和中断系统维持其功能。掉电模式下,保存RAM数据,时钟振荡停止,同时停止芯片内其它功能。80C51有PDIP(40pin)和PLCC(44pin)两种封装形式。其引脚图如图3-1所示: 图3-1 89C51单片机引脚图80C51系列单片机都是以8031为核心发展起来的,具有和51系列单片机及基本结构和软件特征,其内部结构如图3-2所示:振荡器及定时电路80C51CPU4K字节ROM128字节RAM2个16位定时器/计数器64K总线扩展控制可编程I/O可编程串行口 图3-2 89C51单片机框图89C51单片机的引脚功能:1、主电源引脚Vss和Vcc。 Vss接地。 Vcc正常操作时为+5伏电源。2、外接晶振引脚XTAL1和XTAL2。 XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。当采用外部振荡器时,此引脚接地。 XTAL2内部振荡电路反相放大器的输出端。是外接晶体的另一端。当采用外部振荡器时,此引脚接外部振荡源。3、控制或与其它电源复用引脚RST/VPD,ALE/,和/Vpp。 RST/VPD 当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位在Vcc掉电期间,此引脚可接上备用电源,由VPD向内部提供备用电源,以保持内部RAM中的数据。 ALE/ 正常操作时为ALE功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率的)周期性地发出正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个ALE脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL电路。 对于EPROM型单片机,在EPROM编程期间,此引脚接收编程脉冲(功能)。 外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,在每个机器周期内两次有效。同样可以驱动八LSTTL输入。 /Vpp /Vpp为内部程序存储器和外部程序存储器选择端。当/Vpp为高电平时,访问内部程序存储器,当/Vpp 为低电平时,则访问外部程序存储器。对于EPROM型单片机,在EPROM编程期间,此引脚上加21伏EPROM编程电源(Vpp)。4、输入/输出引脚P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 - P3.7。 P0口(P0.0 - P0.7)是一个8位漏极开路型双向I/O口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL负载。 P1口(P1.0 - P1.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动(吸收或输出电流)四个LSTTL负载。 P2口(P2.0 - P2.7)是一个带有内部提升电阻的8位准双向I/O口,在访问外部存储器时,它输出高8位地址。P2口可以驱动(吸收或输出电流)四个LSTTL负载。 P3口(P3.0 - P3.7)是一个带有内部提升电阻的8位准双向I/O口。能驱动四个LSTTL负载。且具有第二功能。3.1.2 选用80C51单片机原因在课程设计通过单片机内部进行数据处理,显示电路采用P0口,在设计里面使用的引脚较少,占用的资源也比较少。而且该芯片是以8031为核心,性能价格比高,应用成熟,且对其内部结构较为熟悉,芯片功能够用而且适用,从而选用80C51单片机作为主控芯片。3.2 时钟电路本设计采用内部时钟方式的电路。 80C51单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入端为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和微调电容,就构成了一个稳定的自激振荡器。电路中的电容C1和C2典型值通常选择为30pF左右。晶体的振荡频率的范围通常是在1.2MHZ12MHZ之间。晶体的频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。.图3-9 时钟电路3.3 复位电路 复位电路通常采用上电自动复位和按钮复位两种方式。本次设计采用按键复位电路。按键复位电路是在按键瞬间接地来实现的,其电路如图3-7所示。按下复位按钮后,电源对按键RESET端维持两个机器周期的高电平实现复位的。图3-10 复位电路4 系统软件设计开始4.1主程序变量初始化初始化T1显示十,调用延时函数等待中断图4-1 主程序框图说明:该流程图主要是对设置定时器0为工作方式,并对定时器赋初值,然后开启总中断(EA)定时器0中断(ET0),启动定时器。然后用一个循环while(1)等待中断。 4.2T0中断服务子程序框图开始状态1南北红灯,东西绿灯状态2南北红灯,东西黄灯闪烁状态3南北绿灯,东西红灯状态4南北绿灯,东西黄灯闪烁 图4-3 中断服务子程序框图说明 中断服务程序,是在主程序响应中断后,转去执行程序。程序的主要功能时实现自动重新启动8位定时器。 中断开始4.3定时子程序框图设置中断定时器1初始值 状态1定时,定时器1完成后计数器清零状态2定时,定时器1完成后计数器清零 状态3定时,定时器1完成后计数器清零 状态4定时,定时器1完成后计数器清零 4-4 定时程序框图说明:该程序主要是实现软件可变延时的功能,该延时子程序主要实现延时到所要的时间 (设置的参数值在每个状态下不同,其延时的时间不同,延时时间=设置参书*50ms。5 系统调试过程 通过上面的设计,设计已经基本完成。下面主要实现Protell 99se的原理图、印制板图的绘制和做相关检测,对Keil进行相应的检查和调试,并用Proteus对所设计系统进行仿真用以验证设计的正确性及可行性。5.1 原理图和印制板图绘制和检查5.1.1 在Protell99se绘制原理图并进行相应的ERC检查打开Protell99se,绘制系统的原理图。原理图包括能输出+5V电源电路、LED控制交通灯电路、时钟电路、复位电路。绘制完成的原理图如图5-1:图5-1 原理图的绘制绘制完原理图之后,对原理图进行同一网络命名多个网络名称检测、未连接的电路标号检测、未连接的电源检测、电路编号重号检测、元件编号重复检测等检测。ERC检测结果如图5-2:图5-2 ERC检查5.1.2 在Protell99se生成PCB图在创建完原理图后,对各元器件的引脚进行封装,在原理图中创建网络表(NET),然后再Protell中新建PCB图并加载网络表。对于生成的PCB图中各器件进行调整,并布线。布线结果如图5-3:图5-3 PCB布线图5.2 Keil程序调试程序调试结果如图5-6:Creating hex file from “交通灯”表明 .hex文件创建成功。“交通灯”- 0 Error(s),0 Warning(s)表明文件编译结果没有错误也没有警告。图5-4 程序调试结果5.3 Proteus仿真调试在Proteus中建立仿真图。结果如图5-5: 图5-5 Proteus仿真图在Proteus中点击运行,其变化结果如图5-6所示: 1南北方向亮红灯,东西方向亮绿灯2南北方向亮红灯,东西方向亮闪烁黄灯 3南北方向亮绿灯,东西方向亮红灯4南北方向亮闪黄灯,东西方向亮红灯图5-6 交通灯状态显示 结 论在本次设计中,使用了中断控制器,对南北、东西方向交通的计时、分别控制,但是程序没有实现对双向交通的数码显示,数码显示模块空缺,会尽快将程序补全,使其具有使其具有完整的交通灯功与其他设计相比。 十字道口的红绿灯是交通法规的无声命令,是司机和行人的行为准则。十字道口的交通红绿灯控制是保证交通安全和道路畅通的关键。当前,国内大多数城市正在采用“自动”红绿交通灯,它具有固定的“红灯绿灯”转换间隔,并自动切换。它们一般由“通行与禁止时间控制显示、红黄绿三色信号灯和方向指示灯”三部分组成。在交通灯的通行与禁止时间控制显示中,通常要么东西、南北两方向各50秒;要么根据交通规律,东西方向60秒,南北方向40秒,时间控制都是固定的。交通灯的时间控制显示,以固定时间值预先“固化”在单片机中,每次只是以一定周期交替变化。但是,实际上不同时刻的车辆流通状况是十分复杂的,是高度非线性的、随机的,还经常受认为因素的影响。采用定时控制经常造成道路有效应用时间的浪费,出现绿灯方向车辆较少,红灯方向车辆积压。它不顾当前道路上交通车辆数的实际情况变化,其最大的缺陷就在于当路况发生变化时,不能满足司机与路人的实际需要,轻者造成时间上的浪费,重者直接导致交通堵塞,导致城市交通效率的下降。致 谢在赵玲老师的指导下,我完成了本次课程设计。赵玲老师是一个拥有专业知识,严谨治学态度,精益求精作风的老师,她的严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。在课程设计里面,她让我重新认识到了专业知识学习的重要性,还使我明白了许多为人处世的道理。本课程设计从选题到完成,都是老师指导下完成。另外,本次设计的完成也离不开各位同学给我的建议和帮助,是他们让我懂得了团队合作的重要性,也让我明白了团队精神的内涵。在此,我谨向赵玲老师和帮助过我的老师和同学们,表示崇高的敬意和衷心的感谢!参考文献1张毅刚. 新编MCS-51单片机应用设计M. 哈尔滨:哈尔滨工业大学出版社.20042倪志莲,张怡典. 单片机应用技术M.北京:北京理工大学出版社.20073张靖武.单片机系统的protues设计与仿真M.北京:电子工业出版社.20074Anolog Device Corp,ADC0809 Databok,2005.附录A 程序源代码#include#define uchar unsigned char #define uint unsigned int sbit RED_A=P00; sbit YELLOW_A=P01; sbit GREEN_A=P02; sbit RED_B=P03;sbit YELLOW_B=P04;sbit GREEN_B=P05;uchar Time_Count=0,Operation_Type=1,flash_count=0; /t0中断子程序void T1_int()interrupt 1TH1=-50000/256;TL1=-50000%256;switch(Operation_Type) case 1: /东西向绿灯亮RED_A=0; YELLOW_A=0; GREEN_A=1;RED_B=1; YELLOW_B=0; GREEN_B=0;if(+Time_Count!=100)return;Time_Count=0;Operation_Type=2;break;case 2:/东西向绿灯关闭,黄灯闪烁if(+Time_Count!=8)return;Time_Count=0;YELLOW_A=!YELLOW_A; GREEN_A=0; /闪烁5次if(+flash_count!=10)return;flash_count=0; Operation_Type=3; break;case 3: /东西向红灯和南北向绿灯亮RED_A=1; YELLOW_A=0; GREEN_A=0;RED_B=0; YELLOW_B=0; GREEN_B=1;if(+Time_Count!=100)return;Time_Count=0;Operation_Type=4;break;case 4:/东西向绿灯关闭,黄灯闪烁if(+Time_Count!=8)return;Time_Count=0;YELLOW_B=!YELLOW_B; GREEN_B=0; /闪烁5次 if(+flash_count!=10)return; flash_count=0;Operation_Type=1; break; void main() TMOD=0x80; IE=0x82;TR1=1;while(1) ;附录B系统框图复位电路 P0口80C51单片机LED交通灯显示电路时钟电路电源电路附录C 电路原理图和PCB图图C-1 交通灯系统原理图图C-2 交通灯系统PCB图 附录D Proteus仿真图及蓄电池电压检测输出图图D-1 蓄电池电压检测系统Proteus图图D-2 启动按钮仿真显示图- 25 -
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!