微机原理.docx
- 文档编号:5803247
- 上传时间:2023-01-01
- 格式:DOCX
- 页数:19
- 大小:160.24KB
微机原理.docx
《微机原理.docx》由会员分享,可在线阅读,更多相关《微机原理.docx(19页珍藏版)》请在冰豆网上搜索。
微机原理
课程设计说明书
电子钟
沈阳大学课程设计说明书NO.1
一、课程设计的目的和意义
掌握8255、8259、8253芯片使用方法和编程方法,通过本次课程设计,学以致用,进一步理解所学的相关芯片的原理、内部结构、使用方法等,学会相关芯片实际应用及编程,系统中采用8086微处理器完成了电子钟的小系统的独立设计。
同时并了解综合问题的程序设计掌握实时处理程序的编制和调试方法,掌握一般的设计步骤和流程,使我们以后搞设计时逻辑更加清晰。
二、设计思想与原理
1、设计思想
电子钟以8086微处理器作为CPU,用8253做定时计数器产生时钟频率,8255做可编程并行接口显示时钟和键盘电路,8259做中断控制器产生中断。
在此系统中,8253的功能是定时,接入8253的CLK信号为周期性时钟信号。
8254采用计数器0,工作于方式2,使8253的OUT0端输出周期性的负脉冲信号。
即每隔20ms,8253的OUT0端就会输出一个负脉冲的信号,此信号接8259的IR2,当中断到50次数后,CPU即处理,使液晶显示器上的时间发生变化。
程序由以下模块组成:
系统共有5个功能模块:
主控模块,显示模块,定时模块,中断模块,小键盘模块。
2、设计所用硬件设备
8253定时器:
用于产生秒脉冲
8255并口:
用做接口芯片,和小键盘相连。
8259中断控制器:
用于产生中断。
LED:
六个LED用于显示时:
分:
秒值。
小键盘:
用于控制设置。
3、程序设计原理
该程序主要由时间设置,延时程序,时钟显示以及其他子程序组成
(1)时间设置
系统日期的调用MOVAH,2AH
INT21H
系统时间的调用MOVAH,2CH
INT21H
沈阳大学课程设计说明书NO.2
将时间和日期数值转换成ASCII码字符
BCDASCPROCNEAR
PUSHBX
CBW
MOVBL,10
DIVBL
ADDAL,'0'
MOVDBUFFER[SI],AL
INCSI
ADDAH,'0'
MOVDBUFFER[SI],AH
INCSI
POPBX
RET
BCDASCENDP
功能号:
13H
功能:
在Teletype模式下显示字符串
入口参数:
AH=13H
BH=页码
BL=属性(若AL=00H或01H)
CX=显示字符串长度
(DH、DL)=坐标(行、列)
ES:
BP=显示字符串的地址AL=显示输出方式
0—字符串中只含显示字符,其显示属性在BL中。
显示后,光标位置不变
1—字符串中只含显示字符,其显示属性在BL中。
显示后,光标位置改变
2—字符串中含显示字符和显示属性。
显示后,光标位置不变
3—字符串中含显示字符和显示属性。
显示后,光标位置改变
沈阳大学课程设计说明书NO.3
暂停计时
按PauseBreak键即可暂停计时,再按下任意键恢复计时
(2)延时程序
计算机在执行指令时,各种操作都按指令执行,但在像程序控制器那样由计算机发出指令控制外部设备是,由于外部设备所具有的机械惯性或其他原因,需要在计算机发出指令后有规律地延迟或等待一段时间。
这类延时,可以用硬件延时来完成,单用软件来实现也是一种方便和常用的方法。
计算机执行每一条指令,虽然很快,但还是需要一段时间的。
因此从理论上讲,可在程序中加一些与程序无关的指令去完成,要计算指令执行的时间,又不能过多的为了延时而增加编制程序的工作量。
因此,编制延时程序,应尽量采用较少的指令,节约存储器,并且不能对主程序造成影响。
每条指令执行时间的长短,是以计算机的时钟周期为基本单位的。
当CPU采用的时钟频率一定时,时钟周期也为定值。
因此可根据时钟周期的多少来计算执行指令所需的时间。
完成本设计任务使用的计算机采用IntelPentium4处理器,主频为2.1GHz,时钟周期约为0.59ns。
通过时间约1s的延时累加,并以时、分、秒的形式显示出来,就可以编写出一个时钟程序。
(3)时钟显示
①设置光标位置子程序
一般的显示屏可显示25行、80列字符,屏幕左上角字符位置为0行0列,右下角字符位置为24行79列,对应于十六进制为:
左上角为(0,0),右下角(18,4F)。
设置光标,可调用BIOS系统,用汇编语句调用中断INT10H,其入口信息为
沈阳大学课程设计说明书NO.4
(AH)=2要设置光标;
(BH)=0页号;
(DH,DL)=(0CD,24)置光标于行、列数,本程序要求置光标于屏幕中央,即为12行36列(十进制)。
②屏幕显示程序TIME
显示屏幕作为常用的输出设备,可用来显示运算的中间结果或最终数据,也可用来显示表示正确完成或检验出的错误信息。
为了显示表示正确或显示错误的信息,必须在数据段中以字符串形式将提示信息加以定义,然后由显示器在屏幕上加以显示。
DOS系统中的显示功能模块号为2,每次调用仅能显示DL中的一个字符。
为显示字符串,可调用DOS系统另一功能,用汇编语句调用中断INT21H,其入口信息为:
(AH)=9;显示字符串的功能模块号;
(DS:
DX);指向字符串的首地址,要求字符串以字符‘$’结尾
(4)DOS操作系统,即退出
一般采用调用DOS系统的功能模块,即置(AH)=4CH,然后以软中断INT21H语句使运行程序返回DOS操作系统。
MOVAH,4CH
INT21H
三、硬件芯片‘电子钟’方案论证
1.制作框图如图1所示
图1硬件方案框图
2.硬件芯片显示及个引脚功能
沈阳大学课程设计说明书NO.5
8259A芯片的内部结构及引脚
中断控制器8259A是Intel公司专为控制优先级中断而设计开发的芯片。
它将中断源优先排队、辨别中断源以及提供中断矢量的电路集中于一片中。
因此无需附加任何电路,只需对8259A编程,就可以管理8级中断,并选择优先模式和中断请求方式,即中断结构可以由用户编程来设定。
在MD微机系统中,8259芯片工作于单片方式。
8259引脚图如图3.3,各引脚功能如下。
D7~D0——八条双向数据线;
WR(低电平有效)——写输入信号;
RD(低电平有效)——读输入信号;
CS(低电平有效)——片选输入信号;
A0——地址信号;
INT——中断请求信号;
INTA(低电平有效)——中断响应信号;
CAS0~CAS2——级联信号,形成一条专用8259A总线,以便多片8259A的级联;
图28259A引脚图
SP/EN——从编程/允许级联。
在缓冲方式中,可用做输出信号以控制总线缓冲器的接收和发送。
在非缓冲方式中,作为输入信号用于表示主片还是从片;
IR0~IR7——外部中断请求输入线。
要求输入的中断请求信号是由低电平到高电平的上升沿(并保持高电平到CPU响应时为止)或者是高电平。
沈阳大学课程设计说明书NO.6
图38255引脚图
沈阳大学课程设计说明书NO.7
四、流程图
图5显示日期子程序
对8253、8255A进行初始化,设置中断向量,扫描键盘根据按键值作相应的处理。
主要由软件实现。
主要功能是调用其它模块对系统工作进行协调,它的主要功能是读小键盘输入键值并执行要做的工作,如果键值为C则将显示初始值00:
00:
00置入显示缓冲,并调用显示模块显示。
如果键值为G则开中断如果键值为D则关中断,停止动态显示。
如健值为P则连续六次调用小键盘模块,将键值依次存入显示缓冲。
并调用显示模块显示。
如果健值为E,则终止程序,返回DOS。
沈阳大学课程设计说明书NO.8
电子时钟的完整电路图如下:
沈阳大学课程设计说明书NO.9
五、程序清单
STACKSEGMENTSTACK
DW64DUP(?
)
STACKENDS
DATASEGMENT
HDW000CH
MDW0000H
SDW0000H
COUNTDW0000H
OFFDW0000H
TABLEDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H
7FH,6FH
DATAENDS
CODESEGMENT
ASSUMECS:
CODE,DS:
DATA
START:
MOVAX,DATA
MOVDS,AX
PUSHDS
MOVAL,81H
OUT63H,AL
MOVAX,0000H
MOVDS,AX
MOVAX,OFFSETIRQ2
ADDAX,2000H
MOVSI,0028H
MOV[SI],AX
MOVAX,0000H
MOVSI,002AH
MOV[SI],AX
MOVAX,OFFSETIRQ6
ADDAX,2000H
MOVSI,0038H
MOV[SI],AX
MOVAX,0000H
MOVSI,003AH
MOV[SI],AX
MOVAX,OFFSETIRQ7
ADDAX,2000H
MOVSI,003CH
MOV[SI],AX
沈阳大学课程设计说明书NO.10
MOVAX,0000H
MOVSI,003EH
MOV[SI],AX
MOVAL,0B6H
OUT43H,AL
MOVAL,68H
OUT42H,AL
MOVAL,0BAH
OUT42H,AL
POPDS
MOVAL,7BH
OUT21H,AL
BEGIN:
CALLDIS
STI
JMPBEGIN
IRQ7:
INCCOUNT
CMPCOUNT,25
JNZRETURN
MOVAX,0
MOVCOUNT,AX
MOVAX,S
INCAX
MOVS,AX
CMPAX,003CH
JNZRETURN
MOVAX,0
MOVS,AX
MOVBX,M
INCBX
MOVM,BX
CMPBX,003CH
JNZRETURN
MOVBX,0
MOVM,BX
MOVDX,H
INCDX
MOVH,DX
CMPDX,0018H
JNZRETURN
MOVDX,0
沈阳大学课程设计说明书NO.11
MOVH,DX
RETURN:
MOVAL,7BH
OUT21H,AL
MOVAL,20H
OUT20H,AL
IRET
IRQ6:
MOVAX,OFF
CMPAX,0001H
JNZHR
MOVBX,M
INCBX
MOVM,BX
CMPBX,003CH
JNZR0
MOVBX,0
MOVM,BX
JMPR0
HR:
CMPAX,0002H
JNZR0
MOVBX,H
INCBX
MOVH,BX
CMPBX,0018H
JNZR0
MOVBX,0
MOVH,BX
R0:
MOVAL,0BBH
OUT21H,AL
MOVAL,20H
OUT20H,AL
IRET
IRQ2:
INCOFF
MOVBX,OFF
CMPBX,0003H
JZR1
CMPBX,0001H
JZR2
CMPBX,0002H
JZR2
沈阳大学
课程设计说明书NO.12
R1:
MOVBX,0000H
MOVOFF,BX
MOVAL,7BH
OUT21H,AL
MOVAL,20H
OUT20H,AL
IRET
R2:
MOVAL,0BBH
OUT21H,AL
MOVAL,20H
OUT20H,AL
IRET
DIS:
PUSHAX
MOVSI,3000H
MOVAX,M
MOVBL,10
DIVBL
MOV[SI],AH
MOV[SI+1],AL
MOVAX,H
MOVBL,10
DIVBL
MOV[SI+2],AH
MOV[SI+3],AL
MOVDL,0F7H
MOVAL,DL
AGAIN:
OUT60H,AL
MOVAL,[SI]
MOVBX,OFFSETTABLE
ANDAX,00FFH
ADDBX,AX
MOVAL,[BX]
OUT61H,AL
CALLDALLY
INCSI
MOVAL,DL
TESTAL,01H
JZOUT
沈阳大学课程设计说明书NO.13
RORAL,1
MOVDL,AL
JMPAGAIN
OUT:
POPAX
RET
DALLY:
PUSHCX
MOVCX,000FH
T1:
MOVAX,0020H
T2:
DECAX
JNZT2
LOOPT1
POPCX
RET
CODEENDS
ENDSTART
六、结果与分析
(1)编译源文件,命名为DIANZIZHONG.ASM,并保存于D盘
(2)键入命令MASMD:
\DIANZIZHONG.ASM生成一个OBJ文件,检查源程序中的错误,并改正。
(3)键入连接命令LINKD:
\DIANZIZHONG.OBJ,再次键入HULILNGWEI回车,即可显示结果。
(4)电子时钟还具有调时功能
开机运行后,即显示初始时间12:
00整。
按动一下KK1+按键即可启动调分,此时每按动一下KK2+按键分位数字加1,完成对分的调整;再按动一下KK1+按键启动调分,此时每按动一下KK2+按键时位加1,完成对时的调整。
再按一下KK1+按键即关闭功能,正常计时。
沈阳大学
课程设计说明书NO.14
七、心得体会
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
在做课程设计的同时也是对课本知识的巩固和加强,由于课本上的知识太多,平时课间的学习并不能很好的理解和运用各个元件的功能,所以在这次课程设计过程中,我了解了很多元件的功能,并且对于其在电路中的使用有了更多的认识。
平时看课本时,有时问题老是弄不懂,做完课程设计,那些问题就迎刃而解了。
而且还可以记住很多东西。
比如一些芯片的功能,平时看课本,这次看了,下次就忘了,通过动手实践让我们对各个元件映象深刻。
认识来源于实践,实践是认识的动力和最终目的,实践是检验真理的唯一标准。
此次课程设计,学到了很多课内学不到的东西,比如独立思考解决问题,出现差错的随机应变,和与人合作共同提高,都受益非浅,今后的制作应该更轻松,自己也都能扛的起并高质量的完成项目
沈阳大学
课程设计说明书NO.15
八、参考文献
[1]戴梅萼.史嘉权编著.微型计算机技术及应用(第三版)[M].北京:
清华大学出版社,2003
[2]周明德.微型计算机系统原理及应用(第四版)[M].北京:
清华大学出版社,2002
[3]李顺增.吴国东.赵河明等.微机原理及接口技术[M].北京:
机械工业出版社,2006
[4]眭碧霞.微型计算机原理与组成[M].北京:
人民邮电出版社,2003.8
[5]朱金钧.微型计算机原理及应用技术[M].西安:
机械工业出版社,2005.5
[6]杨立.微型计算机原理与接口技术[M].北京:
科学出版社,2008.8
[7]李大友.微型计算机原理[M].北京:
清华大学出版社,1998.7
沈阳大学课程设计说明书NO.16
沈阳大学
课程设计说明书NO.17
沈阳大学
课程设计任务书
学院
信息学院
班级
07电子信息
姓名
刘琳
设计起止日期
2010.07.05-2010.07.11
设计题目:
电子钟
设计任务(主要技术参数):
设计电子钟:
1.能够设定当前日期及时间、能够显示当前日期及时间,时间显示到秒;
2.采用键盘识别定时器中断数码显示,设计制作出硬件电路;
3.汇编语言编程。
设计环境:
PC机一台、windowsXP系统、实验箱、导线若干。
设计所用设备:
1.8253定时器:
用于产生秒脉冲,其输出信号可作为中断请示信号送IRQ2。
2.8255并口:
用做接口芯片,和小键盘相连。
3.8259中断控制器:
用于产生中断。
指导教师评语:
成绩:
签字:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 微机 原理
![提示](https://static.bdocx.com/images/bang_tan.gif)