微机课程设计

发布 2022-10-01 13:13:28 阅读 3411

题目带数码管显示的交通灯模拟控制系统设计

课程名称微机原理及应用a

院系物理与电气工程学院

专业自动化。

班级 08级(2)班

学生姓名杨世红

学号 080308083

指导教师丁文祥

课题名称带数码管显示的交通灯模拟控制系统设计。

一、概述。在star es598pci实验系统的基础上,应用可编程并行接口8255、定时/计数器8253、可编程中断控制器8259等i/o接口芯片,设计一个十字路**通信号灯模拟控制系统。

二、设计目的。

通过设计一个十字路**通灯系统掌握等接口芯片的编程和应用方法,做到理论联系实际。

三、设计要求。

要求绘制流程图、编写源程序,并在实验系统上调试通过程序。

四、设计内容。

1、十字路**通信号灯设置。

某十字路**通信号灯系统在4个路口均装设红、绿2个灯,并装设数码管显示倒计时。

图1 交通信号灯设置。

实验时用led(发光二极管)代替十字路口的红绿灯。

2、交通信号灯亮灭规律。

交通信号灯系统初始状态为所有红灯闪烁n1秒钟(不必在数码管显示);之后东西向车行道绿灯亮,车辆放行n秒钟,此时南北向车行道红灯亮,之后转为南北向车行道放行n秒钟,如此循环重复。要求数码管能够显示倒计时。

参数选择:n=20s/25s…85s/90s(每隔5s取一个秒数)

n1≤10s,闪烁次数为3~8次。

每组自行选择n、n1(及闪烁次数)。

3、参考方案。

采用组成系统,采用8253产生定时,运用8259采用中断法编写程序。

如果加入紧急车辆通过功能或其他任何先进功能,可根据具体情况加创新分。

五、设计报告要求。

要求在报告中详细叙述所选方案的原理、特点及评价,给出硬件原理图、程序流程、源程序、调试结果描述(需安排实验系统运行**)。

报告采用电力工程学院统一的标准格式书写。

最终上交的报告内容包括:1、任务书、2设计内容(正文、心得体会。

一、设计说明。

硬件方面:8253产生1hz的方波,脉冲到8259的ir1端,产生中断,调中断服务子程序。在加入紧急车道后,单脉冲()连到8259的iro端,产生一个高级的中断请求信号。

软件方面:主程序先对各个硬件初始化,在开cpu中断,然后空操作,等待中断。执行低级中断(ir1)时,8255的pa口负责选数码管,pb口负责显示数字,用查表法可查到0~9的数码管编码。

采用循环扫描方法,人眼即可看到连续的二位数。当倒计时减到零时,对红绿灯取反。若手动上下拨动单脉冲()一次,则产生一个高级中断(ir0),程序转而执行此中断处理程序,处理完后返回继续执行低级中断(ir1)。

1、硬件设计。

1.1、硬件接线图。

2.源程序清单。

io8259_0 equ 0e000h8259地址偶地址端。

io8259_1 equ 0e001h8259地址奇地址端。

k8255a equ 0f000h8255的a口、b口、c口地址。

k8255b equ 0f001h

k8255c equ 0f002h

k8255k equ 0f003h

add8253_0 equ 0d000h8253计数通道1##、3#和控制口地址。

add8253_1 equ 0d001h

add8253_2 equ 0d002h

add8253_c equ 0d003h

counter equ 60h倒计时数。

red_on equ 0cch红灯亮。

red_off equ 0ffh红灯灭。

e_w equ 0c3h东西方向通行。

data segment

tab db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh

count db ?

scan dw 485扫描次数。

data ends

stck segment stack

dw 64 dup(?)

stck ends

code segment

assume cs:code , ds:data,ss:stck

start:mov ax,data

mov ds,ax

mov es,ax

nopmov dx,k8255k写8255控制字,a,b,c均为输出,方式0

mov al,80h

out dx,al

start1: mov dx,k8255cc口输出,控制灯。

mov cx,4

flash: mov al,red_on红灯亮。

out dx,al

call delay调延时。

mov al,red_off红灯灭。

out dx,al

call delay

loop flash

start2: mov dx,add8253_c ;写8253控制字。

mov al,37h0#计数器,读写16位低高字节,方式三,bcd码。

out dx,al

mov ax,1000h写0#的计数初值1000h,根据输入设定2m=1000h*2000

mov dx,add8253_0

out dx,al

mov al,ah

out dx,al

mov dx,add8253_c写8253控制字。

mov al,77h1#计数器,读写16位低高字节,方式三,bcd码。

out dx,al

mov ax,2000h写1#计数初值2000h,根据输入设定,方波频率1hz

mov dx,add8253_1

out dx,al

mov al,ah

out dx,al

mov count,counter写计数值(红绿灯变换的间隔时间)

call init8259调8259初始化子程序。

call wriintver_8调写中断向量表子程序。

call wriintver_9调写中断向量表子程序。

mov cl,e_w

mov al,cl

mov dx,k8255c

out dx,al

stinop

start3: jmp给出中断以外cpu的工作。

init8259 proc near8259初始化子程序。

mov dx,io8259_0写icw1,边沿触发,单片,需写icw4

mov al,13h

out dx,al

mov dx,io8259_1写icw2,确定中断类型号。

mov al,08h

out dx,al

mov al,09h写icw4

out dx,al

mov al,0fch写ocw1,除ir0、ir1全屏蔽。

out dx,al

retinit8259 endp

wriintver_9 proc near写中断向量表子程序。

push es

mov ax,0

mov es,ax

mov di,24h中断类型号9,对应24h,25h,26h,27h四个单元。

lea ax,int_9取中断服务程序ip

stoswmov ax,cs取中段服务程序cs

stoswpop es

微机原理课程设计封面

时间安排 本周开始,下周一前将选题统计表以邮件的方式发给苏老师和张老师。本学期十月末交 课程设计说明书和程序及汇编生成的文件 每个同学以学号姓名建一个文件夹。同时安排答辩。迟交的一律不予接收。选题规则 1 8班同学顺次排号,第一个同学从第一题开始选,到第121个同学轮回再选第一题。每一个班选硬件题目...

微机原理课程设计要求

1 时间安排 16 17周,12月15日 12月25日,完成课程设计任务,包括撰写设计报告。12月26日,答辩 地点由答辩小组老师确定 没在规定时间答辩,以缺考处理,成绩0分。2 编程要求 在pc机上使用汇编语言编写程序。使用dos功能调用或bios调用实现要求的功能3 报告要求 题目分析和设计思路...

微机原理课程设计题目

课程设计题目。一 题目一。字符串动画显示。设计内容要求 1 菜单。内容包括 输入字符串 字符串动画显示 退出。2 输入字符串。选择该项后,可以输入一个字符串。该字符串即为动画显示时所显示的字符串。3 字符串动画显示。所显示字符串在一矩形框内从无到有,从右至左移动,完全从框内移出后,又从右至左移动,直...