单机片实现交通灯控制系统.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE 18 PAGE 1 单机片实现交通灯控制系统 系统分析 (一)十字路口基本情况分析 图1-1是一个典型的十字路口示意图。分别用1、2、3、4表明东、南、西和北四个流向的主车道,每个主车道置有一个交通灯,用于指示对面车辆的左转、右转和直行。比如,1号路口的左转灯亮时,即表示对面3号路口的车可以向左转行驶。 每个路口的情况都不尽相同,要根据具体的情况来设置各个方向的放行时间。 图1-1 十字路口示意图 (二)交通灯状态转换分析 合理的设置每个路口、每个方向的交通灯的通行时间,对车辆能否及时疏散,有着决定性的作用。 状态1的时候,2、4两个路口的直行灯亮,东西方向行驶的车辆通行45秒。2、4方向步行的行人,也可以同时通过路口。当通行时间快结束的时候,LED灯会闪烁,提醒车辆和行人通行时间快到了。 类似于状态1,状态4 的时候,1、3两个路口的直行灯亮,东西方向行驶的车辆通行45秒。1、3方向步行的行人,也可以同时通过路口。完成四个状态的一次循环需要120秒,完成了在适当的时间限度内,有效的疏散较大的通行量的目的。 整个状态转换的过程见表1-1。 表1-1 路口四个状态和相互转换过程 每个路口灯的点亮情况 通行时间 路口1 路口2 路口3 路口4 状态1(ZT1) 直行 直行 45秒 状态2(ZT2) 左转 右转 左转 右转 15秒 状态3(ZT3) 右转 左转 右转 左转 15秒 状态4(ZT4) 直行 直行 45秒 (三)硬件功能可行性分析 1.8253A定时/计数器芯片 8253A定时/计数器具有定时、计数双功能。它具有三个相同且相互独立的16位减法计数器,分别称为计数器0、计数器1和计数器2。每个计数器计数频率为0-2MHZ。 其内部数据总线缓冲器为双向三态,故可直接连在系统数据总线上,通过CPU写入计数初值,也可由CPU读出计数当前值。读写控制逻辑,当选中该芯片时,根据读写命令和送来的地址信息控制整个芯片工作。其工作方式通过控制字确定。控制字寄存器用于接收数据总线缓冲器的信息。当写入控制字时,控制计数器的工作方式;当写入数据时则装入计数初值。控制寄存器为8位,只能写入不能读出。8253A内部结构见图1-2。 当8253A执行计数功能时,计数器装入初值后,当GATE为高电平时,可用外部事件作为CLK脉冲对计数值进行减1计数。每来一个脉冲减1,当计数值减为0时,由OUT端输出一个标志信号。 当8253A执行定时功能时,计数器装入初值后,当GATE为高电平时,由CLK脉冲触发开始自动计数。当计数到零时,发计数结束定时信号。 8253A可以工作在方式0到方式5,常用的有方式2频率发生器方式和方式3方波发生器方式。在方式2时,当初值装入后,OUT变为高;计数结束,OUT变为低。该方式下如果计数未结束,但GATE为低时,立即停止计数,将OUT变为高;当GATE再变高时,便启动一次新的计数周期。在方式3时,当装入初值后,在GATE上升沿启动计数,OUT输出高电平;当计数完成一半时,OUT输出低电平。在本系统中,8253A工作于方式3方波发生器方式。 计数器0CLK0 计数器0 CLK0 GATE0 OUT0 计数器1 CLK1 GATE1 OUT1 计数器2 CLK2 GATE2 OUT2 数据总线缓冲器 读/写逻辑 控制字寄存器 D0-D7 -RD -WR A0 A1 -CS 2.8259A中断控制器芯片 8259A是专为控制优先级中断而设计的芯片。它将中断源按优先级排队、辨认中断源和提供中断向量的电路集成于一体,只要用软件对它进行编程,就可以管理8级中断。 8259A的内部结构见图1-3。它由中断请求寄存器(IRR)、优先级分析器、中断服务寄存器(ISR)、中断屏蔽寄存器(IMR)、数据总线缓冲器、读写控制电路、级联缓冲器和比较器组成。 控制逻辑服务寄存器 控制逻辑 服务寄存器 优先级分析器 中断请求寄存器 中断屏蔽寄存器IMR 内部总线 IR0 IR1 IR2 IR3 IR4 IR5 IR6 IR7 数据总线控制器 读写电路 级联缓冲器/比较器 CAS0 CAS1 CAS2 D0-D7 -RD -WR A0 -CS SP/-EN INT -INTA 对8259A编程和初始化的时候,首先要写初始化命令字ICW1-ICW4。 写ICW1以确定中断请求信号类型,清除中断屏蔽寄存器,进行中断优先级排队和确定系统是用单片还是多片。 写ICW2用来定义中断向量的高五位类型码。 ICW3可以定义主片8259A中断请求线上IR0-IR7有无级联的8259A从片。 写ICW4用来定义8259A工作时用8085模式还

文档评论(0)

小教资源库 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档