微机原理与接口技术实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微机原理与接口技术实验报告
班级:通信1309
姓名:张哲熙
学号:
指导教师:周永华
实验一交通信号灯模拟控制
一.实验目的
交通信号灯模拟控制是一个基于实际工程原理,结合文献、现实十字路口交通等得研究,对工程问题进行确定、表述和建模分析,获得最优设计方案,理解并在工程实践中遵守工程职业道德规范,根据实验室实验环境限定条件确定实验方案。所有知识涵盖本课程中的并行接口芯片、汇编语言程序设计、算法分析、接口地址的确定、外围设备的控制等。通过此实验可以理解微机系统中接口电路的作用,掌握软件硬件协同工作原理,熟悉微机原理与接口技术的综合应用。最终达到如下实验目的:
(1)掌握可编程并行接口 8255 芯片的工作原理
(2)掌握利用并行接口芯片 8255 实现信号灯控制的硬件设计和软件设计(3)掌握接口电路及汇编语言程序设计的调试方法
(4)了解 PC 机和实验系统板的连接原理,理解系统机扩展原理
(5)了解并行接口芯片在工程实践中的典型应用及实现方式。
二.实验内容
设计利用 TPC-2003A 实验系统提供的 8255 芯片和信号灯设计实现十字路
口交通灯的模拟控制的硬件连接和程序设计。
1.设计要求
(1)通过实际调研了解十字路口交通灯原理,确定实现的算法流程。
(2)利用实验系统设计硬件电路,明确 8255 芯片端口地址。
(3)编程实现并调试完成交通信号灯的模拟控制。
(4)分析设计方案并比较和实际交通信号灯的技术性能差别。
2.设计目标和性能指标
(1)考察一个实际十字交通等路口交通控制,模拟在实验室实现。
(2)扩展功能:用 LED 应倒计时方式显示各路口灯亮时间。
(3)对于复杂多路口应该如何设计。例如结合车流、人流等多方因素方案如何确定。
三.实验电路
如图5-3,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律燃灭。
8255动态分配地址:
控制寄存器:28BH
A口地址: 288H
C口地址: 28AH
红黄绿红黄绿
四.程序流程图
五.源程序
CODE SEGMENT
ASSUME CS:CODE
START: MOV DX,0EC0BH ;写控制端口,地址0EC0BH MOV AL,B ;C口方式0输出
OUT DX,AL
FIRST: MOV DX,0EC0AH ;写C口,地址0EC0AH MOV AL,00100100B ;南北绿,东西红,C口写00100100 OUT DX,AL
MOV CX,0 ;外层循环初值65536,延时程序
MOV AX,2000H ;内层循环初值2000H
DELAY1: DEC AX
JNZ DELAY1
LOOP DELAY1
MOV BL,5 ;黄灯亮5次
SECOND:MOV DX,0EC0AH ;C端口
MOV AL,01000100B ;南北黄,东西红
OUT DX,AL
MOV CX,3000H ;短延时,黄灯亮与暗之间的间隔
LI1: DEC AX
JNZ LI1
LOOP LI1
MOV DX,0EC0AH
MOV AL,00000100B ;南北黄灯灭,东西红灯继续亮
OUT DX,AL
MOV CX,3000H
MOV AX,0100H
WEN1: DEC AX ;短延时
JNZ WEN1
LOOP WEN1
DEC BL ;闪烁次数控制
JNZ SECOND ;南北路口黄灯再亮
THIRD: MOV DX,0EC0AH ;写入C口
MOV AL,B
OUT DX,AL ;南北红,东西绿
MOV CX,0 ;长延时,外循环初值65536,同上
MOV AX,2000H ;内循环初值2000H
DELAY2: DEC AX
JNZ DELAY2
MOV BL,4 ;控制黄灯亮的次数FORTH: MOV DX,0EC0AH ;写入C口
MOV AL,B ;南北红,东西黄
OUT DX,AL
MOV CX,3000H
MOV AX,0100H
LI2: ;短延时
DEC AX
JNZ LI2
LOOP LI2
MOV DX,0EC0AH ;C端口
MOV AL,B ;东西黄灯灭,南北红灯继续亮 OUT DX,AL
MOV CX,3000H
MOV AX,0100H
WEN2: DEC AX
JNZ WEN2
LOOP WEN2
DEC BL
JNZ FORTH ;东西路口黄灯再亮
MOV DL,0FFH
MOV AH,06H
INT 21H ;查看是否有键按下
JZ FIRST ;没有就重复
MOV AH,4CH
INT 21H ;返回DOS
CODE ENDS
END START
六.实验总结
这是第一个微机实验,我和我们组另外两名同学在去实验室做实验之前,先上网查阅了相关资料,也和其他组的同学交流了一下各自的程序,在大概了解了程序之后我们去九教实验室进行实验。虽然第一个实验并不难,但是在做的过程中我们还是遇到了各种问题,比如运行程序后实验箱上的灯不亮,经过我们小组同学讨论,求助助教之后发现可能是电脑和实验箱的连接出了问题。解决了问题之后顺利的出了结果。这次实验用的是8255芯片,经过这次实验,我了解了伤及调试的方法,以及出现一些常见的问题时应该如何解决。结合微机课上学习的知识,对8255芯片的应用也有了更深入的理解。
实验二计数、定时系统的设计实现
一.实验目的
掌握8253的基本工作原理和编程方法。