资源描述:
《微机原理课设_交通信号灯模拟控制系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、南京工程学院通信工程学院课程设计说明书(论文)题目交通信号灯模拟控制系统课程名称微型计算机原理与接口技术专业班级学生姓名学号设计地点指导教师设计起止时间:2013年12月23日至2013年12月27日目录第一章概述3第二章设计介绍32.1功能描述32.2流程图4第三章程序实现5第四章功能演示104.1正常运行104.2只有A道通行104.3只有B道通行114.4紧急情况11第五章总结与展望125.1实验结论125.2实验总结12第六章参考文献13第一章概述在实际生活中,交通信号灯控制着交通的秩序安全。本次微机原理课程设计就是模拟实际十字路口交通灯的运行规则,用汇编语言来设计交通
2、信号灯。本次设计主要是实现对十字路口交通信号灯的控制而进行的编程,用8255A的A口控制东西方向的交通灯,用8255A的B口控制南北方向的交通灯。当程序正常运行时,依次为东西方向的绿灯和南北方向的红灯闪烁25s,东西方向的绿灯灭后东西方向的黄灯亮5s,随后东西方向的红灯和南北方向的绿灯亮并闪烁15s,南北方向的黄灯亮5s,之后同理往复循环。用8255A的C口控制紧急情况时东西、南北方向的红、黄、绿灯的亮灭,通过读C口输入的数据并进行测试查询,从而对紧急情况进行及时处理。用LED(发光二极管)模拟信号灯,8255A实现对信号灯的控制(PC0~PC6分别接D0~D6),8253的计
3、数器2实现基本单位定时(如10ms)信号的输出;再用8255A的PA口查询定时信号的变化,并统计脉冲数,以实现25s、15s和5s的定时。十字路口交通信号灯设计充分利用了可编程的并行接口芯片8255A各引脚的功能,选定工作方式0,通过改变控制字来实现交通信号灯的状态转换。另外,通过调用延时子程序来实现交通信号灯某一状态的持续,调用循环子程序来实现对交通信号灯状态循环的控制,通过控制开关来实现紧急情况下各路口红灯全亮的功能。综合各部分功能来实现较为完善的程序,运行程序来模拟十字路口交通信号灯。第二章设计介绍2.1功能描述当东西方向(A道)和南北方向(B道)均有车辆要求通过时,A道
4、和B道轮流放行。A道放行25S,B道放行15S,依次轮流。绿灯转换红灯时黄灯亮5S。一道有车,另一道无车时(用开关K5、K6状态模拟),控制系统能立即让有车道放行。遇有紧急车辆要求通过时(用开关K7状态模拟),系统能禁止普通车辆通过(A道、B道均为红灯),同时代表“紧急车辆通过”的另一个红灯闪烁。2.2流程图第三章程序实现.MODELTINYCOM_ADDEQU0F003H;8255A片选地址PA_ADDEQU0F000HPB_ADDEQU0F001HPC_ADDEQU0F002HCOM_ADDREQU0B003HT0_ADDREQU0B000HT1_ADDREQU0B001H
5、T2_ADDREQU0B002H.STACK200.DATASHU_DATADB00111111BDB00000110BDB01011011BDB01001111BDB01100110BDB01101101BDB01111101BDB00000111BDB01111111BDB01101111BCNT0DB?CNT3DB?.CODESTART:MOVDX,COM_ADD;8255初始化MOVAL,88H;PA、PB、PCL输出方式0,PCH输入OUTDX,ALMOVDX,PA_ADDMOVAL,0FFH;检测让所有灯亮OUTDX,ALMOVDX,PC_ADDINAL,DXAND
6、AL,0F0H;保留高位,低位为0ORAL,01H;保留高位,低位全部为1OUTDX,ALMOVDX,COM_ADDR;8253初始化MOVAL,0B0H;10110000BOUTDX,ALMOVCNT0,0;状态0:A,B交替MOVCNT3,0;状态3:紧急时LEABX,SHU_DATALP:CALLDL500MSMOVDX,PC_ADDINAL,DXTESTAL,80H;ALAND10000000B,检测K7JNZK7;如果PC7=0,结果为0,ZF=1,不执行K7。如果PC7=1,ZF=1,执行K7,为特殊情况TESTAL,20H;00100000B,检测PC5JNZK5
7、1;如果PC5=0,结果为0,ZF=1,不执行K51。如果相反,则执行K51TESTAL,40H;01000000B,检测PC6JNZK61MOVCNT3,0MOVCH,CNT0SHRCH,1;CNT3=0,CH右移1位相当于CH/2CMPCH,25JSGRCMPCH,30JSYRCMPCH,45JNSRYMOVDX,PA_ADDMOVAL,0D7H;11010111BOUTDX,AL;A红B绿MOVDX,PB_ADDMOVAL,50;启动数码管SUBAL,CH;AL-CH/2XLAT;AL