交通灯控制实验

  • 格式:doc
  • 大小:79.00 KB
  • 文档页数:3
实验报告
系别
班级
学号
姓名
时间地点机电系课程名称微型计算机原理及应用
实验名称
交通灯控制实验
实验过程
一.实验目的
通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用。
二.实验设备
教学实验箱,TTC-2(USB)实验系统附件
三.实验内容
如图8-1,L7、L6、L5作为南北路口的交通灯与PC7、PC6、PC5相连,L2、L1、L0作为东西路口的交通灯与PC2、PC1、PC0相连。编程使六个灯按交通灯变化规律亮灭。
data ends
code segment
assume cs:code,ds:data
start:
mov ax,data
mov ds,ax
mov dx,io8255b
mov al,90h
out dx,al ;设置8255为C口输出
mov dx,io8255a
re_on: mov bx,0
on: mov al,portc1[bx]
2、实验体会与感想
通过这次实验,了解了8255的编程方法。8255并行接口8255实现十字路口交通灯的模拟控制,能进一步掌握对并行口的使用,使自己更加熟练编程。
jnz de0 ;di不为0
loop de1
push dx
mov ah,06h
mov dl,0ffh
int 21h
pop dx
jz on ;没有,转到on
exit: mov ah,4ch ;返回
int 21h
code ends
end start
六.运行截图
七.实验总结(教师提问及回答)
1、教师提问及回答
cmp al,0ffh
jz re_on
out dx,al ;点亮相应的灯
inc bx
mov cx,200 ;参数赋初值
test al,21h ;是否有绿灯亮
jz de1 ;没有,短延时
mov cx,2000 ;有,长延时
de1: mov di,9000 ;di赋初值9000
de0: dec di ;减1计数
四.实验原理图与流程图
五.实验程序(有注释)
data segment
io8255a equ 28ah
io8255b equ 28bh
portc1 db 24h,44h,04h,44h,04h,44h,04h ;六个灯可能
db 81h,82h,80h,82h,80h,82h,80h ;的状态数据
db 0ffh ;结束标志