《微型计算机原理实验:实验三交通信号灯实验》由会员分享,可在线阅读,更多相关《微型计算机原理实验:实验三交通信号灯实验(4页珍藏版)》请在金锄头文库上搜索。
1、实验三实验三 交通信号灯实验交通信号灯实验n实验目的实验目的 1、掌握、掌握8255A的工作原理和编程方法。的工作原理和编程方法。 2、掌握通过、掌握通过8255A并行口传输数据,控制发光二并行口传输数据,控制发光二极管亮与灭的方法。极管亮与灭的方法。 n实验内容实验内容以十二个发光二极管(以十二个发光二极管(L1到到L12)模拟外设,)模拟外设,用用8255A作为输出接口。编程实现控制十二个发作为输出接口。编程实现控制十二个发光二极管的亮与灭,模拟交通信号灯的工作。光二极管的亮与灭,模拟交通信号灯的工作。 实验电路实验电路 n仔细分析发光二极管的工作电路,判断使仔细分析发光二极管的工作电路,
2、判断使其点亮的控制信号是其点亮的控制信号是“0”还是还是“1”?8255A初始化和硬件设计初始化和硬件设计 n 8255A的初始化的初始化: 8255A的端口地址是实验箱固定分配的端口地址是实验箱固定分配好的:好的:PA口对应的端口地址为口对应的端口地址为0FFD8H,PB口对应的端口口对应的端口地址为地址为0FFD9H,PC口对应的端口地址为口对应的端口地址为0FFDAH,控制,控制口对应的端口地址为口对应的端口地址为0FFDBH。8255A三个端口的工作模式三个端口的工作模式均工作在方式均工作在方式0,并处于输出状态。,并处于输出状态。 n 确定用确定用8255A的哪些输出口与二极管连接(
3、的哪些输出口与二极管连接(上图中的连上图中的连接只是一种可行方案接只是一种可行方案)?确定输出口的信号位与二极管(红)?确定输出口的信号位与二极管(红灯、绿灯、黄灯)的对应关系。用导线将灯、绿灯、黄灯)的对应关系。用导线将L1到到L12的接线孔的接线孔与与8255A的指定输出口可靠连接。的指定输出口可靠连接。 程序流程程序流程 n必须先了解交通路灯的亮灭规律。设有一个十字路必须先了解交通路灯的亮灭规律。设有一个十字路口口1、3为南北方向,为南北方向,2、4为东西方向。初始状态为四为东西方向。初始状态为四个路口的红灯全亮。之后,个路口的红灯全亮。之后,1、3路口的绿灯亮,路口的绿灯亮,2、4路口
4、的红灯亮,路口的红灯亮,1、3路口方向通车。延时一段时间后,路口方向通车。延时一段时间后,1、3路口的绿灯熄灭,而路口的绿灯熄灭,而1、3路口的黄灯开始闪烁,路口的黄灯开始闪烁,闪烁若干次以后,闪烁若干次以后,1、3路口红灯亮,而同时路口红灯亮,而同时2、4路口路口的绿灯亮,的绿灯亮,2、4路口方向通车。延时一段时间后,路口方向通车。延时一段时间后,2、4路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以路口的绿灯熄灭,而黄灯开始闪烁,闪烁若干次以后,后,2、4路口的红灯亮,同时路口的红灯亮,同时1、3路口方向的绿灯亮。路口方向的绿灯亮。重复上述过程。重复上述过程。n闪烁的编程次序是:点亮闪烁的编程次序是:点亮延时延时灭灭灯灯延时。延时可以设计成子程序的形式,延时。延时可以设计成子程序的形式,这样会使程序总长短一些。黄灯的闪烁延时这样会使程序总长短一些。黄灯的闪烁延时小一些,红绿灯的点亮延时要适当长一些。小一些,红绿灯的点亮延时要适当长一些。