可编程接口芯片及通用IO.PPT

  1. 1、本文档共48页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
可编程接口芯片及通用IO

3. 门控信号的作用-----GATE输入总是在CLK输入时钟的上升沿被采样。在方式0,2,3,4中,GATE输入是电平起作用。在方式1,2,3,5中 GATE输入是上升沿起作用的。 可编程定时器/计数器 4. 在计数过程中改变计数值 立即有效是写入计数值后的下一个CLK脉冲后,新的计数值开始起作用。 5.计数到0后计数器的状态 计数器减到0后并不停止,在方式0,1,4,5,计数器减到0后从FFFF/9999继续计数。方式2,3是连续计数,计数器自动装入计数值后,继续计数。 可编程定时器/计数器 时钟周期指输入时钟CLK的周期 输出周期指OUT端输出的波形周期 8253的OUT端的信号变化都是在时钟的下降沿发生变化 8253计数器只计数一次(4,5,1,0) 8253定时器可循环重复计数(3,2) 工作方式 GATE=0 及下降沿 GATE上升沿 GATE=1 模式0 模式1 模式2 模式3 模式4 模式5 停止计数 无意义 停止计数 停止计数 停止计数 无意义 无意义 从初值开始重新计数 从初值开始重新计数 从初值开始重新计数 从初值开始重新计数 硬件触发信号 允许计数 无意义 允许计数 允许计数 允许计数 无意义 5、说明 可编程定时器/计数器 8253的三个计数器是相互独立的,其地址也相互独立,而且控制字的内容又确定了所控制的计数器的序号,所以对8253的编程要求不严,但有两条原则: 对计数器设置初始值前,必须先写控制字 初始值的设置,要符合控制寄存器的格式规定 编程命令: 读出命令:用来读取计数器当前的值(要先锁定) 写入命令:设置控制字,设置初始值和计数值锁存命令 可编程定时器/计数器 8253的编程命令 8253初始化编程的步骤: 1.写入通道控制字,规定通道的工作方式;(A1A0=11) 2. 写入计数值(由控制字的D7D6确定通道号)。 ①若规定只写入低8位,则写入的为计数值的低8位,高8位自动置0; ②若规定只写入高8位,则写入的为计数值的高8位,低8位自动置0; ③若是16位计数值,则分两次写入,先写入低8位,再写入高8位。 可编程定时器/计数器 工作原则: 控制字写入后,所有控制逻辑电路复位 计数初始值写入后,必须要经过一个时钟上升沿和一个下降沿,计数执行部件CE才开始进行计数 在时钟脉冲CLK上升沿时采样GATE信号 模式0、4,GATE为电平触发 模式1、5,GATE为上升沿触发 模式2、3,二者皆可 在时钟脉冲的下降沿,计数器作减1计数 可编程定时器/计数器 用8253实现初始化编程步骤: 1.初始化每一个通道的控制字; 2.控制字写入8253的控制字端口地址; 3.初始化通道的计数初值; 4.计数初值写入8253的通道端口地址。 8253的编程实例 例1 用8253实现初始化编程,要求: 使用通道0,工作在方式1,按二—十进制计数,计数值为5080H,其中端口地址给定范围0F8~0FBH. 分析: (1)确定通道控制字。 如图示 0 1 1 0 0 1 1 0 D7 D6 D5 D4 D3 D2 D1 D0 通道0 先写低8位 再写高8位 工作方式1 BCD 计数 可编程定时器/计数器 用8253实现初始化编程步骤: 1.初始化每一个通道的控制字; 2.控制字写入8253的控制字端口地址; 3.初始化通道的计数初值; 4.计数初值写入8253的通道端口地址。 分析: (2)选择控制字端口地址:A1A0组合11为控制字端口地址的低二位,故选择0FBH。 (3)计数值的低8位为80H. (4)计数值的高8位为50H. (5)选择写入计数值的端口地址:计数值写入通道0,故A1A0组合为00,选择0F8H。 可编程定时器/计数器 8253的编程实例 用8253实现初始化编程步骤: 1.初始化每一个通道的控制字; 2.控制字写入8253的控制字端口地址; 3.初始化通道的计数初值; 4.计数初值写入8253的通道端口地址。 初始化程序如下: MOV AL ,33H OUT 0FBH,AL ;写入方式控制字到端口地址中 MOV AL ,80H OUT 0F8H,AL ;写入计数初值低8位到端口地址中 MOV AL ,50H OUT 0F8H,AL ;写入计数初值高8位到端口地址中 可编程定时器/计数器 8253的编程实例 例2:要求计数器0工作于方式3,输出方波的频率为2KHz,计数脉冲的频率为2.5MHz,采用BCD计数,试写出初始化程序段。 2. 常数计算:TC = 2.5MHz/2KHz=1250 MOV AL,37H OUT 83H,AL MOV AL

文档评论(0)

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

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

1亿VIP精品文档

相关文档