项目1:外部中断控制继电器。
1.项目要求与目的
1)项目要求:用8086cpu控制8259可编程中断控制器,实现对外部中断的响应和处理。要求程序中对ir0每次中断,去控制继电器动作,使led闪烁。
2)项目目的:
了解8086中断的概念。
了解8086的中断类型。
了解8086的中断矢量表。
了解8086的中断过程。
2.项目电路连接与说明。
1)项目电路连接:如图6-1所示的粗线为要接的连线,接线描述如下:8259a的片选连至地址译码处的210h~217h插孔;8255a的片选连至地址译码处的200h~207h插孔;pb0接到继电器的控制端上;将up脉冲按钮连接至8259a的ir0插孔。
2)项目说明:8086需要外接中断控制器才能对外部中断进行处理。8259可外接8个中断源,本项目只响应ir0中断。
将单脉冲信号up接到8259的ir0脚,每次中断时,可以看到继电器控制的led灯闪烁。
3.项目电路原理框图。
项目电路原理框图如图6-1所示。电路由8086cpu、8255a芯片、8259a芯片、继电器及驱动和脉冲按钮up组成。
图6-1 外部中断控制继电器电路图。
4.项目程序设计。
1)程序流程图。
外部中断控制继电器程序流程图如6-2所示。
(a)主程序 (b)ir0中断服务程序
图6-2 外部中断控制继电器程序流程图
2)程序清单。
外部中断控制继电器程序清单如下所示。
data segment
data ends
stack segment stack
sta dw 50 dup(?)
stack ends
code segment
assume cs:code,ds: data ,ss:stack
start :mov al,13h ; 00010011b,icw1:边沿触发,单片,要icw4
mov dx,210h ; 8259地址。
out dx,al
mov al,8 ; icw2中断类型号为8
mov dx,211h
out dx,al
mov al,01h ; icw4不用缓冲方式,正常中断结束,非特殊的全嵌套方式。
out dx,al
mov ax,0清零。
mov ds,ax ; 数据段清零
lea ax,int0 ; 写8259中断程序的入口地址。
mov ds:[4*8],ax; 把中断服务程序的入口地址偏移量送中断矢量表。
mov ax,cs
mov ds:[4*8+2],ax; 把中断服务程序的入口地址段地址送中断矢量表。
in al,dx读中断屏蔽寄存器imr,and al,0feh ; 屏蔽ir1~ir7,允许ir0中的中断请求。
out dx,al
mov dx,203h ; 8255初始化。
mov al,80h ; b口输出,方式0
out dx,al
mov bl,01h ;置继电器动作初值
sti开中断。
again :hlt
jmp again ;等待。
int0 proc near ; ir1中断服务程序
mov dx,201h ;8255的pb口地址。
not bl ;求反。
mov al,bl
out dx,al ;pb0输出
mov dx,210h
mov al,20h ; ocw2发结束命令eoi=1
out dx,al
iretint1 endp
code ends
end start
微机原理交通灯课程设计讲解
湖南科技大学。潇湘学院信息与电气工程系。课程设计报告 题目 硬件描述语言课程设计 专业通信工程 班级二班。姓名。学号。指导教师欧青立 2015 年 12 月 28 日。信息与电气工程学院。课程设计任务书。2015 2016 学年第一学期。专业 通信工程班级 二班学号 姓名 课程设计名称 微机原理与接...
微机原理课程设计封面
时间安排 本周开始,下周一前将选题统计表以邮件的方式发给苏老师和张老师。本学期十月末交 课程设计说明书和程序及汇编生成的文件 每个同学以学号姓名建一个文件夹。同时安排答辩。迟交的一律不予接收。选题规则 1 8班同学顺次排号,第一个同学从第一题开始选,到第121个同学轮回再选第一题。每一个班选硬件题目...
微机原理课程设计要求
1 时间安排 16 17周,12月15日 12月25日,完成课程设计任务,包括撰写设计报告。12月26日,答辩 地点由答辩小组老师确定 没在规定时间答辩,以缺考处理,成绩0分。2 编程要求 在pc机上使用汇编语言编写程序。使用dos功能调用或bios调用实现要求的功能3 报告要求 题目分析和设计思路...