- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第9章(计数器、定时器与DMA控制器)
重点 8253A引脚定义及使用, 8253A的编程应用 难点 8253A内部寄存器的功能及编程 DMA方式传送的一般过程 ??? 定时功能的实现方法 用软件实现延时——利用微处理器执行一个延时程序段实现。 用硬件实现定时 采用不可编程器件——如分频器、单稳电路、简易定时电路; 采用可编程器件——采用可编程的定时/计数芯片和软件硬件结合的办法构成灵活的定时电路,可在不同的时间段内采用不同的定时策略。 9.1 可编程计数器/定时器8253A 8253A是一种实现定时和计数功能的外围电路,拥有3个独立的16位计数器,每个计数器都可通过程序设计的方法设定为实现定时功能的各种操作方式。 可编程时间间隔定时器芯片8253A特点: 与所有Intel系列微处理器兼容 可以处理从DC~2.6MHz范围的输入频率信号 3个独立的16位的计数器 最大计数范围为0~65535 6种可编程的计数模式 以二进制或BCD计数 与TTL完全兼容 单 5V供电电压 9.1.1 8253A内部结构 该芯片内部由数据总线缓冲器、控制寄存器、读/写控制逻辑以及计数器等组成。 8253A内部结构 一、数据总线缓冲器 该缓冲器为8位双向三态的缓冲器,可直接挂在数据总线上。通过它,一方面可以向控制寄存器写入控制字,向计数器写入计数初值;另一方面也可由CPU通过该缓冲器读取计数器的当前计数值 8253A内部结构 8253A内部结构 8253A有3个独立的计数器通道,每个通道的结构完全相同。每一个通道有一个16位减法计数器,还有对应的16位初值寄存器和输出锁存器。计数开始前写入的计数初值存于初值寄存器;计数过程中,减法计数器的值不断递减,而初值寄存器中的初值不变。输出锁存器则用于写入锁存命令时锁定当前计数值 9.1.2 8253A的引脚信号 8253A有24条引脚,双列直插式封装 一、与CPU一侧的接口信号 D0~D7,三态双向数据线。 与CPU数据总线相连,用于传递CPU与8253A之间的 数据信息、控制信息和状态信息。 8253A的引脚信号 CS/,片选信号,输入,低电平有效。有效时,表示8253A被选中,允许CPU 对其进行读/写操作。通常连接到I/O端口地址译码电路的输出端 。 WR/,写信号,输入,低电平有效。用于控制CPU对8254A的写操作,可与A1、A0信号配合以决定是写入控制字还是计数初值 。 8253A读/写操作逻辑 8253A的引脚信号 二、与外部设备的接口信号 CLK[0,1,2],时钟脉冲输入端,用于输入定时脉冲或计数脉冲信号。CLK可以是系统时钟脉冲,也可以由其他脉冲源提供 。 GATE[0,1,2],门控输入端,用于外部控制计数器的启动计数和停止计数的操作。OUT[0,1,2,],计数输出端。在不同方式的计数过程中,OUT引脚上输出相应的信号 。 9.1.3 8253A的控制字 一、8253A的方式控制字 8253A的方式控制字有4个主要功能: 从3个计数器中选择一个 确定计数器数据的读写格式 确定计数器的工作方式 选择计数器的计数方式 方式控制字的格式如图所示,其中,X表示没有使用位,通常设置为0。 8253A的控制字格式 8253A的控制字 计数器选择(D7D6) 决定这个控制字是哪一个通道的控制字。由于3个通道的工作是完全独立的,所以需要有3个控制字寄存器分别规定相应通道的工作方式。但它们的地址是同一个,即A1A0=11(控制字寄存器的地址)。所以,需要由这2位来决定是哪一个通道的控制字。 8253A的控制字 工作方式(D3D2D1) 8253A的每个通道可以有6种不同的工作方式,由D3D2D1 三位决定。 数制选择(D0) 8253A的每个通道都有两种计数制:二进制和BCD码,由D0位决定。 8253A的控制字 例:选用计数器0计数,计数值为1000,分别用二进制和BCD方式计数,用方式3计数,假设系统安排8253A计数器0、1、2和控制端口的地址分别为:220H、221H、222H和223H,试对计数器0编程初始化。 8253A的编程逻辑 二、8253A的编程逻辑 当初始化8253A某个计数通道时,首先把相应的方式控制字写入到控制字寄存器中,再根据控制字中数据读/写格式(D5D4)位的规定,写入计数初值到对应的计数通道。 8253A的编程逻辑 锁存当前计数值有下面2种方法: 利用GATE信号使计数过程暂停 向8253A写入一个方式控制字,令8253A通道的输出锁存器锁存。 9.1.4 8253A
文档评论(0)