微机原理与接口技术实验报告班级:通信xxxx姓名: xxxx学号: 1xxxxx授课教师: xxxx老师目录1.实验一 (3)2. 实验二 (9)3.实验三 (15)4.实验四 (23)5.实验五 (29)6.实验六 (38)实验一交通灯控制实验一.实验目的通过应用接口技术设计十字路口、复杂路口交通灯控制系统,学会应用“微机原理与接口技术”课程所学的X86汇编语言和接口技术掌握可编程并行接口芯片的硬件设计、软件编程,实现十字路口交通灯的模拟控制并思考计算机如何应用在各种控制系统中。
(1)掌握利用X86汇编语言技巧(2)掌握X86微处理器与可编程并行接口芯片8255A硬件电路设计(3)熟悉模拟交通灯控制的实现方法并思考如何应用在实际中。
二.实验内容1.基本功能:设计一个交通控制系统,该控制系统工作后,交通灯按照如下规律变化:(1)南北路口的绿灯、东西路口的红灯同时亮3秒左右。
(2)南北路口的黄灯闪烁若干次,同时东西路口的红灯继续亮。
(3)南北路口的红、东西路口的绿灯同时亮3秒。
(4)南北路口的红灯继续亮、同时东西路口的黄灯亮闪烁若干次。
(5)返回(1)依次循环。
2.思考扩展功能:(1)如遇到特殊情况,可拨动应急开关,使各项均为红灯,特殊车辆不受红灯限制,使其顺利通过后拨动另一个开关,系统返回继续运行(2)用LED应倒计时方式显示各路口灯亮时间(3)对于多路口联网应该如何设计。
三.实验电路如下图,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。
编程使六个灯按交通灯变化规律燃灭。
8255动态分配地址:控制寄存器:0EC0BHA口地址: 0EC08HC 口地址: 0EC0AH8255PC7PC6PC5PC2PC1PC0CS288H-28FHL7 L6 L5L2 L1 L0红 黄 绿红 黄 绿交通灯实验电路图10211089四.程序流程图长延时是否有按键南北路口黄灯闪,东西路口绿灯亮南北路口绿灯亮,东西路口红灯亮南北路口红灯亮,东西路口绿灯亮设置8255A 口输出C 口输出返回DOS开始南北路口红灯亮,东西路口黄灯闪长延时YN交通灯控制流程图10211089五.源程序CODE SEGMENTASSUME CS:CODE;********************************** 工作状态控制字设置START: MOV DX,0EC0BH ;写控制端口,地址0EC0BH MOV AL,10010000B ;C口方式0输出OUT DX,AL;**********************************南北路口绿灯亮,东西路口红灯亮FIRST: MOV DX,0EC0AH ;写PC口,地址0EC0AH MOV AL,00100100B ;南北绿,东西红,PC口写00100100OUT DX,AL;------------------------------两层嵌套实现长延时MOV CX,0 ;外层循环送入初值65536MOV AX,2000H ;内层循环送入初值2000H DELAY1: DEC AXJNZ DELAY1LOOP DELAY1;**********************************南北路口黄灯闪烁,东西路口红灯亮MOV BL,5 ;BL控制黄灯亮的次数5次SECOND:MOV DX,0EC0AHMOV AL,01000100BOUT DX,AL ;南北黄,东西红MOV CX,3000HMOV AX,0100HLI1:DEC AXJNZ LI1LOOP LI1MOV DX,0EC0AH ;短延时MOV AL,00000100B ;南北路口黄灯先灭OUT DX,ALMOV CX,3000HMOV AX,0100HWEN1:DEC AXJNZ WEN1 ;短延时LOOP WEN1DEC BLJNZ SECOND ;南北路口黄灯再亮;**********************************南北路口红灯亮,东西路口绿灯亮THIRD: MOV DX,0EC0AH ;写入C口MOV AL,10000001BOUT DX,AL ;南北红,东西绿MOV CX,0 ;长延时MOV AX,2000HDELAY2: DEC AXJNZ DELAY2LOOP DELAY2MOV BL,4 ;控制黄灯亮的次数FORTH: MOV DX,0EC0AH ;写入C口MOV AL,10000010BOUT DX,AL ;南北红,东西黄MOV CX,3000HMOV AX,0100HLI2:DEC AXJNZ LI2 ;短延时LOOP LI2;**********************************南北路口红灯亮,东西路口黄灯闪烁MOV DX,0EC0AHMOV AL,10000000BOUT DX,AL ;东西路口黄灯先灭MOV CX,3000HMOV AX,0100HWEN2:DEC AXJNZ WEN2LOOP WEN2DEC BLJNZ FORTH ;东西路口黄灯再亮MOV DL,0FFH;**********************************检测是否有键按下,调用6号功能MOV AH,06HINT 21H ;执行键盘输入操作JZ FIRSTMOV AH,4CHINT 21H ;返回操作系统CODE ENDSEND START六.实验总结这是我们的首个微机原理实验,而且我们班是第一批做实验的,没有丝毫经验,对实验箱以及TPC-2003集成开发环境都比较陌生,也没有事先编写好程序,因此时间很紧张,今后一定要在实验前做好充分的预习工作,现根据实验指导书上的要求,编写好程序。