好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

定时计数技术(甄兰兰).ppt

33页
  • 卖家[上传人]:夏**
  • 文档编号:572548069
  • 上传时间:2024-08-13
  • 文档格式:PPT
  • 文档大小:2.30MB
  • / 33 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 第第1010章章 定时定时/ /计数技术计数技术 本章学习目标本章学习目标 v掌握掌握8253的内部结构的内部结构v掌握掌握8253的的6种工作方式种工作方式v掌握掌握初始化编程应用初始化编程应用v了解了解8253的引脚结构的引脚结构v了解了解6种工作方式的区别及使用场合种工作方式的区别及使用场合 10.1 概述§在计算机系统以及实时控制和处理系统中经常要用到定时信号§定时信号的产生可以通过软件和硬件两种方法获得§软件定时的方法就是利用微处理器执行一个延时程序段实现§硬件定时的方法就是利用专用的硬件电路来产生延时1)不可编程的硬件定时 2)可编程的硬件定时 10.2 8253功能简介§基本功能(1)16位减法计数器;(2)最多提供3路独立的定时/计数通道;(3)最高2MHZ的计数频率;(4)二进制和十进制两种计数模式;(5)6种工作方式可选择; (6)所有引脚与TTL兼容 §计数原理1.可编程定时/计数器按其计数方式的不同又可分为减法计数器和加法计数器2.8253属于减法计数器,其本质上是一个减“1”计数器3.充当计数器时,可对标准的脉冲源或外部事件的脉冲进行计数,接收一个脉冲,计数器减1,减到零时,输出一个信号便结束。

      因此,计数过程是一次性4.充当定时器时,计数器对精准的高频脉冲源输入的脉冲进行减1计数,计数器减到零时,这一减1计数过程并没有就此结束,反而又开始了新一轮的计数 §充当定时器时,定时输出的是一个循环往复的周期性的信号,输出的低频脉冲信号的周期是输入高频脉冲信号的若干倍减一计数器 10.3 8253内部结构与外部引脚§引脚及功能1.8253采用NMOS工艺制成,+5V单一电源供电,24引脚的双列直插式器件 §8253的逻辑功能图 §内部结构§主要包括3个计数器通道、1个控制寄存器、数据总线缓冲器及读写逻辑电路 (1)计数器§8253芯片内部有3个16位计数通道,CN0、CN1和CN23个通道结构相同,功能相同,相互独立,可以分别按各自的方式并行工作每个通道都包括1个16位的初值寄存器(CR),1个16位的计数执行部件(CE)和1个16位的输出锁存器(OL) (2)控制寄存器§8253内部的控制寄存器用来存放控制字的控制字决定了每个计数通道的工作方式,计数制,以及计数初值的字长等信息控制字在8253初始化时写入控制寄存器,控制寄存器只能写,不能读 (3)数据总线缓冲器§数据总线缓冲器是8253与CPU数据总线之间的1个8位的双向三态缓冲器。

      总线缓冲器通过片内总线与控制寄存器和各个计数模块相连CPU对8253进行读写的所有信息都是由数据总线缓冲器进行暂存,包括控制字,计数初值等在内4)读/写逻辑电路§读/写逻辑电路是8253内部的控制部件,它接收来自系统总线的控制输入信号,经过逻辑变换产生对各个端口的控制信号当片选信号无效时,数据总线缓冲器处于浮空状态,CPU无法对8253读写 10.4 工作原理§计数通道的内部结构高8位低8位高8位低8位高8位低8位 8位 §8253内部的3个计数通道,结构完全相同,每个计数通道都包括1个16位的初值寄存器(CR),1个16位的计数执行部件(CE)和1个16位的输出锁存器(OL)§1)初值寄存器CR 用来存放CPU写入的计数初值一旦写入数据,初值寄存器的内容将保持不变,直到CPU再次写入新的计数初值§2)输出锁存器OL 输出锁存器时刻跟随计数执行部件CE变化而变化只有当CPU执行锁存命令时,OL则不再跟随CE变化,而是保持住当前计数值,直到CPU执行读命令,读出锁存器的内容后,OL又再次跟随CE变化因此,CPU可以先后执行锁存命令和读命令读出当前计数值 §3)计数执行部件CE 计数执行部件是整个计数模块的核心。

      本质上是一个减“1”计数器接收来自CR 的计数初值,在计数过程中的任何时刻,CPU可通过读输出锁存器读出当前计数值CE的计数过程受来自外部的CLK和GATE 两个输入引脚的控制CLK 决定了计数的速率一般情况下,GATE=1时,允许计数;GATE=0时,禁止计数 §工作原理 CPU通过端口输出指令将计数初值写入初值寄存器端口,8253时刻检测门控信号GATE是否有效,当检测到门控信号有效时,初值寄存器CR就将计数初值输出到计数执行部件CECE接收到计数初值后就开始了减“1”计数,直到减到零,本轮计数结束在计数模式下,计数过程是一次性的,计数到零,输出停止而在定时模式下,计数过程是循环的,输出信号是连续的 §计数模块的特点1)设置初值寄存器CR的目的2)设置输出锁存器OL的目的§定时/计数的工作过程1)设置8253的工作方式(6种); 2)设置计数初值到初值寄存器; 3)设置GATE门控信号,把‘门’打开,使CLK可通过之送入计数寄存器计数;4)第一个CLK信号使初值寄存器的内容置入计数寄存器; 5)以后每来一个CLK信号,计数寄存器减1;6)减到0时,OUT端输出一特殊波形的信号; 10.5 8253 的工作方式§软启动与硬启动(1)软启动(程序指令启动)(2)硬启动(外部电路信号启动)§8253的工作方式(1)方式0——计数结束后产生中断 §(2)方式1——可重复触发的单稳态触发器§(3)方式2——频率发生器 §(4)方式3———方波发生器§(5)方式4——软件触发选通 §方式5——硬件触发选通 §8253的几种工作方式比较(1)方式 0 与方式 4 的比较(软件控制)(2)方式 1 与方式 5 的比较(硬件触发)(3)方式 2 与方式 3 的比较(波形输出)§8253的工作方式小结(1)方式2、4、5的输出波形是相同的,都是宽度为一个CLK周期的负脉冲,但方式2连续工作,方式4由软件触发启动,方式5由硬件触发启动。

      2)方式5与方式1工作过程相同,但输出波形不同,方式1输出的是宽度为N个CLK脉冲的低电平有效的脉冲(计数过程中输出为低),而方式5输出的为宽度为一个CLK脉冲的负脉冲(计数过程中输出为高) (3)输出端OUT的初始状态,方式0在写入方式字后输出为低,其余方式,写入控制字后,输出均能变为高4)任一种方式,均是在写入计数初值之后,才能开始计数,方式0、2、3、4都是在写入计数初值之后,开始计数的,而方式1和方式5需要外部触发启动,才开始计数5)6种工作方式中,只有方式2和方式3是连续计数,其它方式都是一次计数,要继续工作需要重新启动,方式0、4由软件启动,方式1、5由硬件启动 (6)通过门控信号GATE,可以干预8253某一通道的计数过程,在不同的工作方式下,门控信号起作用的方式也不一样,其中0、2、3、4是电平起作用,1、2、3、5是上升沿起作用,方式2、3对电平上升沿都可以起作用7)在计数过程中改变计数值,它们的作用有所不同8)计数到0后计数器的状态,方式0、1、4、5继续倒计数,变为FF、FE……,而方式2、3、,则自动装入计数初值继续计数 10.6 8253的控制字与初始化编程§8253的控制字 §8253的编程命令(1)读命令 读命令用来读取当前指定计数模块的当前计数值。

      2)写命令 写命令包括写控制字和写初值控制字写入控制寄存器端口,初值写入计数模块的初值寄存器需要注意的是每个计数器的初值写入顺序一定是放在控制字的后面初值是减“1”计数的起始值,分为8位初值和16位初值若为16位初值必须使用连续两条输出指令3)锁存命令 锁存命令也属于写命令当CPU想要读取当前计数值时,先要使用锁存命令将输出锁存器中的内容锁住,然后再读出因此,锁存命令应当与读命令配合使用 §8253初始化编程 主要分为两个方面:设置计数器的控制字和计数初值,即写控制字入控制寄存器端口和写初值入初值寄存器对3个计数器的初始化顺序可任意排列,但是具体到每一个计数器,控制字的写入一定在先,初值的写入在后注意写计数值高8位是非必须的 例10-1:采用8253作定时/计数器,其接口地址为0120H~0123H要求计数器0每10ms输出一个CLK脉冲宽的负脉冲;用计数器1产生10KHz的连续方波信号,计数器2在定时5ms后产生输出高电平输入8253的时钟频率为2MHz分析:(1)计算计数初值: CNT0:10ms/0.5us=20000 CNT1:2 MHz/10KHz=200 CNT2: 5ms/0.5us=10000(2)确定控制字: CNT0:方式2,输出负脉冲波,16位计数值 CNT1:方式3,输出方波,低8位计数值 CNT2:方式0,输出高电平,16位计数值 初始化程序:CNT0:MOV DX,0123HMOV AL,34HOUT DX,ALMOV DX,0120HMOV AX,20000OUT DX,ALMOV AL,AHOUT DX,ALCNT1:MOV DX,0123HMOV AL,56HOUT DX,ALMOV DX,0121HMOV AL,200OUT DX,AL CNT2:MOV DX,0123HMOV AL,0B0HOUT DX,ALMOV DX,0122HMOV AX,10000OUT DX,ALMOV AL,AHOUT DX,AL §8253的应用举例例10-2:在PC机中使用了1片8253,8253在PC机中的连接简图如图10-13所示。

      其中,计数器0为电子时钟提供基准;计数器1为动态RAM提供刷新定时,刷新周期大约15s;计数器2作为机内扬声器的音频信号源,产生频率为1KHz的方波8253的输入时钟频率为1.193MHz,端口地址为40H-43H请写出PC机内8253的初始化编程 §分析:计数器0为系统的电子钟提供时间基准,它的输出作为系统的中断源,因此,计数器0工作于方式3,取最大初值=0;计数器1产生对DMAC的总线请求,每15s输出一个负脉冲,因而计数器1工作于方式2,初值为N1=15s*1.193MHz=18;方波信号经放大和驱动后送给扬声器可发声,所以计数器2应工作于方式3,初值为N2=1.193MHz/1KHz=1193 §8253初始化程序MOV AL,36H ;计数器0,读写16位,方式3,二进制计数OUT 43H, ALMOV AL, 0 ;计数器0初值OUT 40H, AL OUT 40H, ALMOV AL, 54H ;计数器1,读写低8位,方式2,二进制计数OUT 43H, ALMOV AL, 18 ;计数器1初值OUT 41H, ALMOV AL, 0B6H ;计数器2,读写16位,方式3,二进制计数OUT 43H, ALMOV AX, 1193 ;计数器2初值OUT 42H, ALMOV AL, AHOUT 42H, AL 8253在PC机中的连接简图 。

      点击阅读更多内容
      相关文档
      【全国硕士研究生入学统一考试政治】2020年考研政治真题.docx 【全国硕士研究生入学统一考试政治】2015年考研政治真题.docx 【全国硕士研究生入学统一考试政治】2010年考研政治真题.docx 【全国硕士研究生入学统一考试政治】1996年政治考研真题(理科)及参考答案.doc 【全国硕士研究生入学统一考试政治】2001年政治考研真题(理科)及参考答案.doc 【全国硕士研究生入学统一考试政治】2016年考研政治真题.docx 【全国硕士研究生入学统一考试政治】2000年政治考研真题(文科)及参考答案.doc 【全国硕士研究生入学统一考试政治】1997年政治考研真题(理科)及参考答案.doc 【全国硕士研究生入学统一考试政治】2007年考研政治真题.doc 【全国硕士研究生入学统一考试政治】1997年政治考研真题(文科)及参考答案.doc 【全国硕士研究生入学统一考试政治】2004年考研政治真题.doc 【全国硕士研究生入学统一考试政治】2003年考研政治真题.doc 【全国硕士研究生入学统一考试政治】2019年考研政治真题.docx 【全国硕士研究生入学统一考试政治】2009年考研政治真题.docx 【全国硕士研究生入学统一考试政治】2001年政治考研真题(文科)及参考答案.doc 【全国硕士研究生入学统一考试政治】2021年考研政治真题.doc 【全国硕士研究生入学统一考试政治】2014年考研政治真题.docx 【全国硕士研究生入学统一考试政治】2018年考研政治真题.docx 【全国硕士研究生入学统一考试政治】2008年考研政治真题.doc 【全国硕士研究生入学统一考试政治】2011年考研政治真题.docx
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.