北京化工大学微机接口技术课程实验报告.docx
- 文档编号:28227519
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:10
- 大小:206.07KB
北京化工大学微机接口技术课程实验报告.docx
《北京化工大学微机接口技术课程实验报告.docx》由会员分享,可在线阅读,更多相关《北京化工大学微机接口技术课程实验报告.docx(10页珍藏版)》请在冰豆网上搜索。
北京化工大学微机接口技术课程实验报告
北京化工大学测控专业微机接口技术课程综合创新实验报告
目录
1.课程名称1
2.课程背景1
3.功能分析.1
4.设计1
4.1硬件设计1
4.2软件设计3
4.3主题代码3
5.设计心得6
5.1收获与心得6
5.2思考7
6.参考文献7
1.实验名称基于计时中断的自动清零计数器
2.实验背景
设计一个能实现在数码管上显示的00~99的自动清零计数器,并且计数频率可调。
3.功能分析
为了实现上述要求,有三个工作要做:
一是利用可编程定时器/计时器82C54产生一个周期约为2s的方波作为中断的触发信号;二利用可编程中断控制器82C59A响应外部中断源,中断触发信号来自设计的方波;三利用可编程并行接口芯片82C55A驱动数码管显示,利用六位数码管的的低两位来显示出当前的计数值。
4.设计
4.1.硬件设计
先进行硬件设计和端口地址选择。
82C54的电路结构原理如图1所示。
图1.自动清零计数装置电路结构原理1
82C54的端口地址为0040H(通道0),0041H(通道1),0042H(通道2),0043H(命令口)。
通道0作计数器使用,工作在3方式,目的是产生一个方波,GTAE0接+5V,CLK0接由系统8MHZ时钟分频得到1MHZ的脉冲信号。
输出端OUT0,接到中断控制器的IR3端口,利用OUT0输出方波的上升沿触发中断。
下图是中断控制器的硬件设计图。
图2.自动清零计数装置中断结构原理
如图,82C59A的IR3端口接82C54的OUT0端口,中断请求线INT接到8086的INTR,中断回答线INTA接到8086的INTA;使能端CS接到实验箱的FF80H端口。
这样就实现了82C54的OUT0产生的方波来一次上升沿就触发一次中断。
下图是可编程并行芯片82C55A的硬件图:
图3.自动清零计数装置82C55A结构
如图,当82C55A用于数码管显示时,PA口作为键扫/字位口;PB口作为字形口,PC口作为键入口;即PA口作为位选信号,PB口作为段选信号。
数码管的最低位用来显示当前计数值的个位数字,次低位用来显示当前计数值的十位数字,通过添加延时,可达到尽量无抖动和尽量无消隐的效果。
下图是实验流程图:
图4.自动清零计数装置
流程图
4.2.软件设计
根据上述硬件设计的安排和设计目标的要求,可设定:
通道0的方式命令为00110110B=36H,要产生周期约为2s的方波,根据如图公式:
图3
可得定时常数为0C350H。
4.3主体代码
汇编语言程序清单如下:
CODESEGMENT
ASSUMECS:
CODE
INTPORT1EQU0FF80H
INTPORT2EQU0FF81H
INTQ3EQUINTREEUP3
TCONTROEQU0043H
TCON0EQU0040H
PAEQU0FF20H
PBEQU0FF21H
PCEQU0FF22H
CTLEQU0FF23H
ORG12D0H
START:
JMPSTART0
BUFDB?
?
?
?
?
?
INTCNTDB?
;个位数字
INTCNT10DB?
;十位数字
TABDB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H;0-9
START0:
CLD
;8255初始化
MOVDX,CTL
MOVAL,80H
OUTDX,AL
;8259初始化
MOVAL,13H
MOVDX,INTPORT1
OUTDX,AL
MOVAL,08H
MOVDX,INTPORT2
OUTDX,AL
MOVAL,09H
OUTDX,AL
MOVAL,0F7H
OUTDX,AL
;8253初始化L
MOVDX,TCONTRO
MOVAL,36H;计数器0,先写低字节再写高字节,方式3
OUTDX,AL
MOVDX,TCON0
MOVAX,0C350H;设置计数初值
MOVDX,TCON0
OUTDX,AL;先写低字节
MOVAL,AH
OUTDX,AL;再写高字节
;修改中断变量
MOVAX,0H
MOVES,AX
MOVDI,002CH
LEAAX,INTQ3
STOSW
MOVAX,0000H
STOSW
MOVINTCNT,0H;TIME=0
STI
;等待中断
WATING:
MOVAL,INTCNT
MOVAH,0
CALLDISP
CALLDELAY
JMPWATING
;中断服务子程序
INTQ3:
CLI;关中断
PUSHAX;保护现场
PUSHBX
PUSHCX
PUSHDX
MOVAL,INTCNT
INCAL
CMPAL,10
JNZINTRE2
MOVAL,0
INCINTCNT10
CMPINTCNT10,10
JNZINTRE2
MOVINTCNT10,0
INTRE2:
MOVINTCNT,AL
MOVAL,20H
MOVDX,INTPORT1
OUTDX,AL
POPDX;恢复现场
POPCX
POPBX
POPAX
STI
IRET
;8255显示子程序AL
DISP:
;显示个位数字
PUSHAX
PUSHBX
PUSHDX
MOVDX,PB
MOVBX,OFFSETTAB
XLATTAB
OUTDX,AL
MOVAL,0FEH
MOVDX,PA
OUTDX,AL
CALLDELAY
DISP1:
;显示十位数字
MOVAL,INTCNT10
MOVDX,PB
MOVBX,OFFSETTAB
XLATTAB
OUTDX,AL
MOVAL,0FDH
MOVDX,PA
OUTDX,AL
POPDX
POPBX
POPAX
RET
DELAY:
PUSHCX
MOVCX,0FFH
D:
NOP
LOOPD
POPCX
RET
CODEENDS
ENDSTART
5.设计心得
5.1收获与心得
本次设计中,我们小组一起学习和讨论了82C55A,82C59A以及82C54的基本原理,同时结合这三种芯片设计出基于计时中断的自动清零计数器,我们都这三种芯片的实际应用有了更加深刻的理解。
虽然在实验期间遇到一些问题,但我们都尽量自己去查资料解决,这些都是很锻炼我们自己的。
5.2思考
在本次设计中,如有需要,可以把功能改进,如增加按键选择模式,可以选择计数/定时模式,还可以把计数/定时范围由两位扩展到四位。
6.参考文献
[1]刘乐善.32位微型计算机接口技术及应用[M].武汉:
华中科技大学出版社,2006
[2]杨素行。
微型计算机系统原理及应用(第三版)[M].北京:
清华大学出版社,2009
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北京 化工大学 微机 接口 技术 课程 实验 报告