微机原理第八章可编程计数器定时器8253和其应用.ppt

微机原理第八章可编程计数器定时器8253和其应用.ppt

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八章作业 3,4,6 * 计算机系统中,实现定时或延时有三种方法: 软件定时 如延时子程序 不可编程的硬件定时 如RC单稳态电路、555芯片延时 可编程的硬件定时器 8253为可编程的硬件定时器。 第八章 可编程计数器/定时器8253及其应用 计数器/定时器的主要用途 中断信号 输出精确的定时信号 波特率发生器 实现延迟 减1 计数器 判零 外设 计数/定时脉冲CLK 外设 OUT CPU 预置值 CPU 可编程硬件计数/定时器 1. 主要功能 具有3个独立的16位计数器通道; 每个计数器均可按二进制或二—十进制计数; 每个计数器的计数速率高达2MHz; 每个通道有6种工作方式,可由程序设置和改变 所有的输入输出电平都与TTL兼容。 一、 8253的内部结构 数据总线 缓冲器 计数器 0 读/写 逻辑 控制字 寄存器 计数器 1 计数器 2 内部数据总线 CLK0 CLK1 CLK2 GATE0 GATE1 GATE2 OUT0 OUT1 OUT2 D7 ~ D0 RD WR A0 A1 CS 8253内部结构 2、8253的内部结构 CLK 计数/定时脉冲 计数器:由外设提供的计数脉冲。 定时器:时钟脉冲 GATE 门控信号 实现对CLK输入时,减1计数器是否工作的控制。其控制关系由不同工作方式确定。 OUT 输出信号 减1 计数器为0时的输出信号可以用于对外部控制,也可用于向CPU申请中断。 三个独立的16位减1计数器。 计数器计数过程 通过编程对计数器预置一个初值n。 如果门控信号GATE允许,计数器对CLK输入的脉冲进行减1计数(二进制/十进制)。 当计数器的值减为0时从OUT端输出一个脉冲信号。 定时器计数过程 通过编程对定时器预置一个初值n。 如果门控信号GATE允许,定时器对CLK输入的脉冲进行减1计数(二进制/十进制)。 当计数器的值减为0时从OUT端输出一个脉冲信号。 CLK端输入定时脉冲,定时脉冲周期为tC。 定时时间= n ? tC 最小定时时间预置值n=1,最大定时时间预置值 n=FFFFH。 n=0000H 数据总线缓冲器 CPU 8253 DB 写8253控制字 写某通道预置值 读某通道计数值 控制字寄存器(存放控制字) 数据总线 缓冲器 计数器 0 读/写 逻辑 控制字 寄存器 计数器 1 计数器 2 内部数据总线 CLK0 CLK1 CLK2 GATE0 GATE1 GATE2 OUT0 OUT1 OUT2 D7 ~ D0 RD WR A0 A1 CS 8253内部结构 读写逻辑 CS、A1、A0 选择4个片内寄存器 RD、WR 控制对4个片内寄存器读、写控制 端 口 A1 A0 通道0计数器 通道1计数器 通道2计数器 控制口控制 字寄存器 0 0 0 1 1 0 1 1 A15~A2 系统端口译码 数据总线 缓冲器 计数器 0 读/写 逻辑 控制字 寄存器 计数器 1 计数器 2 内部数据总线 CLK0 CLK1 CLK2 GATE0 GATE1 GATE2 OUT0 OUT1 OUT2 D7 ~ D0 RD WR A0 A1 CS 8253内部结构 00 选择计数器0 01 选择计数器1 10 选择计数器1 11 非法选择 000 方式0 001 方式1 X10 方式2 X11 方式3 100 方式4 101 方式5 0 二进制 1 BCD 在8253的初始化编程中,由CPU向8253的控制字寄存器写入一个控制字来设置8253的工作方式。 00 计数器锁存命令 10 只读/写计数器高字节(高八位) 01 只读/写计数器低字节(低八位) 11 先读/写低字节,后读/写高字节 控制字寄存器 计数器 读/写格式 工作方式 数制 D0 D1 D2 D3 D4 D5 D6 D7 SC1 SC0 RL1 RL0 M2 M1 M0 BCD 先写低8位,再写高8 位 二、 初始化编程和门控信号 1、初始化编程 初始化编程的步骤: (1)写入控制字 (2)写入计数器初值 例:8253三个计数器端口的地址分别为3F0H、3F2H、3F4H,控制字寄存器的端口地址为3F6H,要求通道0工作于方式3,写入的初值为n=1234H。编写初始化程序。 计数器 读/写格式 工作方式 数制 D0 D1 D2 D3 D4 D5 D6 D7 SC1 SC0 RL1 RL0 M2 M1 M0 BCD 控制字

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档