列仙传白电子书:谁能告诉我怎么用8051设计交通灯控制系统??????

来源:百度文库 编辑:高考问答 时间:2024/04/28 14:15:53
用8051单片机设计一交通信号灯模拟控制系统,晶振采用12MHz。具体要求如下:
(1)正常情况下A、B道(A、B道交叉组成十字路口,A是主道,B是支道)轮流放行,A道放行1分钟(其中5秒用于警告),B道放行30秒(其中5秒用于警告)。
(2)一道有车而另一道无车(用按键开关K1、K2模拟)时,使有车车道放行。
(3)有紧急车辆通过(用按键开关K0模拟)时,A、B道均为红灯。
解:根据题意,整体设计思路如下:
(1)正常情况下运行主程序,采用0.5秒延时子程序的反复调用来实现各种定时时间;
(2)一道有车而另一道无车时,采用外部中断1方式进入与其相应的中断服务程序,并设置该中断为低优先级中断;
(3)有紧急车辆通过时,采用外部中断0方式进入与其相应的中断服务程序,并设置该中断为高优先级中断,实现中断嵌套。
硬件设计过程如下:
用12只发光二极管模拟交通信号灯,以单片机的P1控这12只发光二极管,在P1口与发光二极管之间采用74LS07作驱动电路,口线输出高电平则“信号灯”熄,口线输出低电平则“信号灯”亮。各口线控制功能及相应控制码(P1端口数据)如表5.1所示。
表5.1 控制码表

分别以按键K1、K2模拟A、B道的车辆检测信号,当K1、K2为高电平(不按按键)时,表示有车;K1、K2为低电平(按下按键)时,表示无车。K1、K2相同时属正常情况,K1、K2不相同时属一道有车另一道无车的情况,因此产生外部中断1中断的条件应是: ,可用74LS266(如无74LS266,可用74LS86与74LS04组合)来实现。另外,还需将K1、K2信号接入单片机,以便单片机查询有车车道,可将其分别接至单片机的P3.0口和P3.1口。
以按键K0模拟紧急车辆通过开关,当K0为高电平时属正常情况,当K0为低电平时,属紧急车辆通过的情况,直接将K0信号接至脚即可实现外部中断0中断。

数字电路的问题放在这里不合适吧?抱歉不能回答你。我数电很差。