微型计算机原理课设.docx

上传人:b****6 文档编号:5946706 上传时间:2023-01-02 格式:DOCX 页数:10 大小:123.87KB
下载 相关 举报
微型计算机原理课设.docx_第1页
第1页 / 共10页
微型计算机原理课设.docx_第2页
第2页 / 共10页
微型计算机原理课设.docx_第3页
第3页 / 共10页
微型计算机原理课设.docx_第4页
第4页 / 共10页
微型计算机原理课设.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

微型计算机原理课设.docx

《微型计算机原理课设.docx》由会员分享,可在线阅读,更多相关《微型计算机原理课设.docx(10页珍藏版)》请在冰豆网上搜索。

微型计算机原理课设.docx

微型计算机原理课设

 

《微型计算机原理》

课程设计题目:

竞赛抢答器设计

姓名:

赵浩淞

学号:

40850020

班级:

电081

指导教师:

董洁

日期:

2010.12

前言

本次课程设计的内容是设计一个6路抢答器,并对抢答成功、抢答犯规、响铃提示等实际情况进行软硬件模拟。

设计过程中,主要用到的芯片有可编程中断控制器8259A、可编程并行接口芯片8255A、可编程定时器/计数器芯片8253等。

硬件方面,原理图的设计是基于Labcenterelectronics公司出版的Proteus,它强大的仿真能力让我赞叹不已的同时,也受益匪浅。

软件方面,程序的设计是基于8086/8088汇编语言在轻松汇编软件上进行编写和调试,它小巧方便且功能齐全。

反复推敲的设计思路,充满艰辛而又饶有趣味的设计过程,成功的软、硬件结合,再加上日复一日的努力奋斗,才有了今日之设计成果。

在要求的基础之上,我还加入了一些自主创新的东西。

设计完成之时,本人激动的心情,溢于言表。

虽然,我知道,我的设计成果之中一定还存在很多不足之处,很多可以优化的地方,甚至,有可能还会有一些漏洞。

但是,整个过程我的的确确努力了,并全身心投入于其中了。

我尽量做到了我所能做到的最好。

下面,我将对我的设计思路、设计过程、设计心得等逐一进行详细的阐释。

烦请老师审阅。

特此感谢董洁老师一学期悉心的教导。

 

目录

第一章课程设计任务书。

4

第二章设计。

5

2.1设计思路。

5

2.2硬件设计。

6

2.3软件设计。

7

第三章小结及参考文献。

10

第四章课程设计图纸。

11

第五章程序清单。

12

 

第一章设计要求

设计一个具有4(6)路抢答的抢答器,启动计算机,计算机自动为系统各芯片进行初始化,抢答器开始工作。

比赛开始,在主持人按下开始键,绿灯亮后,选手才可开始抢答,否则违规。

利用并行接口和开关键。

逻辑开关K0——K3(5)代表抢答按钮,当某个逻辑开关闭合时,相当于抢答按钮按下。

若选手抢答成功,黄灯亮,七段数码管显示选手号码,扬声器鸣叫。

若选手抢答违规(主持人未按开始键),七段数码管显示违规选手号码,红灯亮,扬声器报警。

若系统提示某号选手抢答违规,主持人仍未按开始键,此时该号选手又按下抢答键,七段数码管显示该选手的号码。

本系统开机后,若主持人既未按复位键又未按开始键,此时有选手按下抢答键,系统提示红灯亮,并报警。

注:

1)抢答成功,扬声器的鸣叫声音频率为1KHz(1.5KHz)。

2)抢答失败,扬声器的鸣叫声音频率为0.5KHz(1KHz)。

3)抢答计时时间到,扬声器的鸣叫声音频率为0.75KHz(1.25KHz)。

4)扬声器鸣叫或报警的时间为12s(10s)。

第二章设计

2.1设计思路

由于本次实验需要用到数码显示、中断控制、倒计时等功能,股初步分析,需要8255、8259、8253等芯片。

经过分析,实验要点在于判断最先抢答者并锁存,同时不理睬其他信号。

因此,可将6个抢答按钮通过并行输入口接至微机。

当主持人启动抢答过程后,微机对6个口循环采样。

若有一组发出信号,则立刻停止,并记录组号。

为了对抢答后回答时间进行控制,可以用8253计时,先置初值再计时,时间到后亮灯并提示音。

本实验要设置一个启动键,如果在启动按钮未按下前抢答,则视为犯规,二极管发光并提示音。

 

2.2硬件设计

1.所需器件:

8088、8259A、8255、8253、74138、黄红绿二极管、扬声器、led显示器、8个按键

2.内存编址:

8259A:

20H、21H

8255A:

80H、81H、82H、83H

8253:

40H、41H、42H、43H

下面具体说明各个芯片和主要元件的功能。

1.8088CPU

8088CPU采用最小工作方式,它的地址/数据复用总线(A0~A16)通过3片地址锁存器8282和2片数据收发器8286连到各个主控芯片上,以向其发出地址信号,从而确定其端口地址和中断类型号等。

同时,负责接受芯片传送来的数据和向芯片发送数据。

2.可编程定时器/计数器芯片8253

芯片的端口地址为0CH~0FH。

计数器0为工,方式3,采用二进制计数;计数器1,方式2,只写入低8位,二进制计数;设置计数器二,方式3,二进制计数。

(1)计数器0作定时器使用,具体定时时间(10s或30s)由计时子程序提供计数初值而决定。

CLK0接5KHz时钟源。

GATE0由U3的PC7端口控制。

OUT0接到U4的IR1端口产生中断。

(2)计数器1作定时刷新装置,每2ms内刷新DRAM一次。

CLK1接1.19MHz时钟源。

GATE1接高电平。

OUT1接D触发器的时钟端。

(3)计数器2用于控制扬声器的鸣叫频率。

具体的鸣叫频率在响铃子程序中给计数器2赋初值决定。

CLK2接15KHz时钟源。

GATE2由U3的PB6端口控制。

OUT2输出和PB7通过与门控制扬声器发生,即当PB6和PB7均为高电平时,扬声器才能发生。

扬声器由一个共射放大电路控制,进行信号放大。

3.可编程并行接口芯片8255A

PA,PB,PC口均工作于方式0,输出方式。

芯片的端口地址为10H~13H。

PA0~PA6口控制显示抢搭成功选手号码的数码管。

PB0~PB5口控制选手抢搭成功时,代表选手的黄灯亮起(16~21号灯分别对应1~6号选手)。

PC0~PC6口控制显示抢答犯规选手号码的数码管。

4.8259A中断控制器

通过初始化编程向8259A写入相应的初始化命令ICW,可以使芯片处于一个规定的基本工作方式,并在此方式下进行工作。

8259A的初始化命令字共有4个ICW1-ICW4,进行初始化时要求ICW1-ICW4按一定的顺序写入。

5.译码器74LS138

用于对地址总线传来的地址进行译码,以唯一确定各芯片端口的地址。

 

2.3软件设计

 

 

第三章小结

通过这次为期一周的微机原理和接口技术课程设计,扎实了我们的理论,培养了我们的实际动手能力。

一周的设计,让我们更深入的理解了选用可编程并行接口芯片8255A和可编程计时/定时器8254的工作原理和工作方式,知道了数码管的显示方法,了解了计算机主板构成、接口技术及其应用编程方法。

这次设计也培养了我的做事认真细致有耐心的品质,锻炼了我的分析问题、解决问题的综合能力,为我们今后的学习和工作奠定了基础,让我们受益匪浅。

我在设计中遇到很多苦难,大都是芯片和应用还不熟练,还需更加努力更加深入的了解微机系统及功能。

由于我能力有限,且未通过硬件实现,设计中难免有问题有待改进。

参考文献

1、王忠民·《微型计算机原理》【M】西安电子科技大学出版社

2、仁向民·《微机接口技术实用教程》【M】清华大学出版社

3、阎石·《数字电子技术基础》【M】高等教育出版社

 

第四章课程设计图纸

 

第五章程序清单

DATASEGMENT

TABDB06H,5BH,4FH,66H,6DH,7CH,07H,7FH,67H;1~9字型码

BZDB00H

DATAENDS

STACKSEGMENTPARASTACK'stack'

DB100HDUP(?

STCKENDS

CODESEGMENT

ASSUMEDS:

DATA,CS:

CODE

START:

MOVAX,DATA

MOVDS,AX

;8259初始化

MOVAL,13H;ICW1

OUT20H,AL

MOVAL,08H;ICW2

OUT21H,AL

MOVAL,0DH;ICW4

OUT21H,AL

MOVAL,98H;8255初始化

OUT83H,AL

MOVAL,00001101;PC6置1

OUT80H,AL

MOVAL,73H;8253计数器1

OUT43H,AL

MOVAL,0B7H;计数器2

OUT43H,AL

MOVAH,25H;建立抢答中断向量表

MOVAL,0AH

MOVBX,SEGKEYINT

MOVDS,BX

MOVDX,OFFSETKEYINT

INT21H

STI;IF置1,开放中断

LOPM:

INAL,82H;检测开始键

TESTAL,20H;检测PC5

JZLOP2;开始键未按下

LOP1:

INAL,82H

TESTAL,20H

JNZLOP1;开始键没弹起重新检测

MOVAL,00H;关LED显示

OUT81H,AL;绿灯亮

MOVBZ,0FFH;送C口

MOVAL,1000;响铃1KHZ

OUT42H,AL

STI

LOP2:

INAL,82H;检测复位键

TESTAL,10H;检测PC4

JZLOPM;未按下

LOP3:

INAL,82H

TESTAL,10H

JNZLOP3;检测是否按下

MOVAL,00H;关显示,灯

OUT81H,AL

OUT82H,AL

MOVBZ,00H

STI

JMPLOPM

KEYINTPROCFAR

PUSHAX

PUSHBX

PUSHDX

PUSHDS

CLI;IF置0

INAL,80H;从A口获取选手信息

MOVCX,6;计六次

LOP4:

SHRAL,1

LOOPNZLOP4

MOVAX,CX;选手号给AX

MOVBX,OFFSETTAB

XLAT;选手号转换成LED字型码

OUT81H,AL

TESTBZ,0FFH

JZLOP5

MOVAL,00H

OUT42H,AL

MOVAL,10H

OUT42H,AL

MOVAL,03H;黄灯亮

OUT82H,AL

MOVAL,666;响铃1.5KHZ

OUT42H,AL

MOVDX,40H

MOVAL,64H

OUTDX,AL;写8253计数初值,定时12秒

MOVAL,00h

OUTDX,AL

MOVDX,41H

MOVAL,3EH

OUTDX,AL

MOVAL,03h

OUTDX,AL

JZLOP5

JNZKKK

LOP5:

MOVAL,00H

OUT42H,AL

MOVAL,20H

OUT42H,AL

MOVAL,05H;红灯亮

OUT82H,AL

MOVAL,800;响铃1.25KHZ

OUT42H,AL

KKK:

MOVAL,20H

OUT20H,AL

POPAX

POPBX

POPDX

POPDS

IRET

KEYINTENDP

CODEENDS

ENDSTART

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 理化生

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1