文档介绍:定时与计数技术及应用
定时/计数器—— 8253
本章内容
了解定时/计数技术的应用情况
掌握8253的连接与编程
学习目的
熟习8253的工作方式
定时与计数
定时计数技术在计算机中具有极为重要的作用。微机控制系统中,常要按一定的采样周期对处理对象进行采样或定时检测某些参数等,用计数器对外部事件计数,即记录外设提供的脉冲个数。在实时操作系统和多任务操作系统中,可以利用定时器产生的定时中断进行进程调度。
定时器和计数器都由数字电路中的计数电路构成。前者记录高精度晶振脉冲信号,因此可以输出准确的时间间隔,称为定时器,而当记录外设提供的具有一定随机性的脉冲信号时,它主要反映脉冲的个数,称为计数器。
定时的方法有3种:软件定时、不可编程的硬件定时和可编程的定时。
1. 软件定时
根据CPU执行每条指令需要一定的时间,重复执行一些指令就会占用一段固定的时间,通过适当地选取指令和循环次数便很容易实现定时功能,这种方法不需要增加硬件,可通过编程来控制和改变定时时间,灵活方便,节省费用。缺点是CPU重复执行的这段程序的本身并没有什么具体目的,仅为延时,从而降低了CPU利用率。
这种方法采用数字电路中的分频器将系统时钟进行适当的分频产生需要的定时信号;也可以采用单稳电路或简易定时电路(如常用的555定时器)由外接RC电路控制定时时间。但是,这种定时电路在硬件接好后,定时范围不易由程序来改变和控制,使用不甚方便,而且定时精度也不高。
在微机系统中,常采用软件、硬件相结合的方法,用可编程定时计数器芯片构成一个方便灵活的定时计数电路。这种电路不仅定时值和定时范围可用程序确定和改变,而且具有多种工作方式,可以输出多种控制信号,它由微处理器的时钟信号提供时间基准,故计时也精确稳定。如Intel 8253。
Intel 8253可编程定时器/计数器
一、8253的基本功能和内部结构
(1)3个独立的16位计数器,最大计数范围为0~65535;
(2)每个计数器均可以按二进制或二—十进制计数;
(3)计数器速率可达2MHz;
(4)可编程6种不同的工作方式;
(5)所有输入和输出都与TTL兼容。
8253具有较好的通用性和使用灵活性,几乎适合于任何一种微处理器组成的系统。
1. 8253 PIT的基本功能
2. 8253的内部结构
,由数据总线缓冲器、控制寄存器、读/写控制逻辑和计数器等部分组成。
8253的内部结构示意图
(1)数据总线缓冲器
该缓冲器为8位双向三态的缓冲器,可直接挂在数据总线上。CPU通过8位数据总线D0~D7传送如下信息:
①向控制寄存器写入控制字。
②向某计数器写入计数初值。
③CPU通过缓冲器读取计数器的当前计数值