- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二十三讲:计数定时技术(二) 主讲老师:王克义
《微机原理A》
第二十三讲:计数/定时技术(二)
主讲老师:王克义
课程主页:/courses/wjyl/
本讲主要内容
• 8253的初始化编程
• 8253的编程应用
23.1 8253的初始化编程
1. 内部寄存器的寻址
• 8253有三个独立的计数器通道,每个通道可以被CPU访
问的部件有:
• 8位的控制寄存器,它只能写入,不能读出;
• 16位的计数初值寄存器CR,它只能写入,不能读出;
• 16位的输出锁存器OL,它只能读出,不能写入;
• 8253芯片是否被选中,决定于片选信号CS,通常CS接自
地址译码器输出。
• 一片8253 占用四个连续的端口地址,分别对应
于三个计数初值寄存器端口和一个控制寄存器
端口。
• 由输入信号A1和A0 的四种编码来选择四个端口
之一。
• 每个通道都各自有独立的控制寄存器,但三个
通道的控制寄存器都共用一个端口地址,即A1
和A0都为1时的端口地址。它是三个通道共同
使用的控制寄存器端口地址。
• 为了能够将每个通道的控制字写入它们各自的控
制寄存器中,使用控制字的D7和D6的编码,来标
志此控制字是写入哪个通道的控制寄存器中。
• 8253内部寄存器的寻址如表23-1所示。
表23-1 8253 内部寄存器的寻址
CS RD WR A1 A0 寄存器选择和操作
0 1 0 0 0 写通道0计数初值寄存器CR0
0 1 0 0 1 写通道1计数初值寄存器CR1
0 1 0 1 0 写通道2计数初值寄存器CR2
0 1 0 1 1 写控制寄存器
0 0 1 0 0 读通道0输出锁存器OL0
0 0 1 0 1 读通道1输出锁存器OL1
0 0 1 1 0 读通道2输出锁存器OL2
2.初始化编程顺序
设置控制字
写入计数初值
• 注意:必须按控制字D5,D4位规定的格式进行写入。
3. 8253的控制字
SC1 SC0 RL1 RL0 M2 M1 M0 BCD
通道选择:
计数制:
00 通道0
0
01 通道1
02 通道2 1
11 无效
工作方式:
读/写格式:
00 计数器锁存命令 000 方式0
01 只读/写计数器低8位 001 方式1
10 只读/写计数器高8位 x10 方式2
11 先读/写计数器低8位 x11 方式3
后读/写计数器高8位
文档评论(0)