第八章 定时器计数器接口
第八章 8253定时计数器(例程)
![第八章 8253定时计数器(例程)](https://img.taocdn.com/s3/m/cd12ba5704a1b0717ed5ddad.png)
➢ 在计数过程中,如GATE变为低电平,这时只是暂停计数 ,等待GATE信号变为高电平后,计数器继续“减1”计数
例题,向8253的A1A=0 11B的地址写入0011 0000B,则表示 计数器0设置成方式0,并且采用16位时常数,假设时常数为 1500,则计数器0的初始化程序段如下:
通过计数通道的端口地址可以访问通道中的CR、OL,当对通 道进行写操作时,实际上表示将计数初值(即时常数)写入CR; 当对通道进行读操作时,表示将从OL中读取计数值。
8253的控制字
定时/计数器8253一共有6种工作方式,由控制字 寄存器的内容来设定。方式控制字如下所示:
D7 D6 D5 D4 D3 D2 D1 D0 SC1 SC0 RL1 RL0 M2 M1 M0 BCD
电源(+5V) 地
连接去向 CPU
译码电路 CPU CPU CPU 外部
外部 外部
/ /
8253的原理结构及工作原理
每个计数通道主要包含四个部件: 计数寄存器CR(Conut Register, 16位)、 计数工作单元CE(Counting Element, 16位)、 输出锁存器OL(Output Latch, 16位)、 控制字寄存器(Control Word Register, 8位)。
计数过程中写入新的时常数,它只能在下一次分频脉冲后起作用
方式2的特点:
➢在置方式2的控制字后,OUT端变为高电平;
➢在置入时常数后,下一个CLK脉冲期间,将时常数从CR读 入CE,并开始“减1”计数;
➢当CE计数到01时,在OUT端输出一个负脉冲,并重新读入 时常数进行计数;
第8章计数器8253
![第8章计数器8253](https://img.taocdn.com/s3/m/6d8894e481c758f5f61f6769.png)
OUT DX, AL;写入工作方式控制字
MOV AL, 46H;计数值的低字节
MOV DX, 04C0H;设置8253计数器0地址
OUT DX, AL;写入计数值的低字节
MOV AL, 10110100B;二进制,方式2,写入16位数,计数器2
MOV DX, 04C6H;控制口地址
OUT DX, AL
(1) 输出锁存器锁存或停止计数以保存当前计数值 读出当前的计数值有两种方法: ① 把当前计数值输出的锁存器锁存 ② 通过GATE门控信号发一低电平信号,使计数 执行单元不作减1操作,计数过程停止。
9
(2) 从输出锁存器读数
注意:读8位和读16位的问题
若是读16位的数据,需分两次读出。
先读低字节,再读高字节,即执行两次输入指令。
moval30h控制字送almovdx126h控制口地址送dxoutdxal向控制口写入控制字moval88h低8位计数值是88hmovdx120h通道0端口地址送dxoutdxal向通道0写入计数初值的低8位moval66h高8位计数值为66houtdxal向通道0写入计数初值的高8位21例假设8253的计数器0工作在方式5按二进制计数计数初值为46h
方式2、方式3中,可用电平触发,也可上升沿触发。
13
1. 方式0——计数结束产生中断
该方式下,门控信号决定计数的停止或继续,装入 初值决定计数过程重新开始。计数过程波形图为:
14
2. 方式1——可重复触发的单稳态触发器 该方式是在门控信号的作用下才开始计数
15
3. 方式2——分频器 该方式下用门控信号达到同步计数的目的
16
4. 方式3——方波发生器 工作过程同方式2,只是输出的脉宽不同。
单片机定时器与计数器的应用与接口设计
![单片机定时器与计数器的应用与接口设计](https://img.taocdn.com/s3/m/b9ebe03b30b765ce0508763231126edb6e1a766d.png)
单片机定时器与计数器的应用与接口设计摘要:单片机中的定时器和计数器是非常重要且常用的功能模块,用于实现精确的时间控制和事件计数。
本文将介绍单片机定时器和计数器的基本原理和应用,并深入探讨它们的接口设计。
1. 引言单片机是一种集成了处理器、存储器和各种外设接口的微型计算机。
在嵌入式系统中,单片机常常需要处理各种时间相关的任务,如定时触发特定操作、测量时间间隔和计算事件次数等。
定时器和计数器作为单片机的重要外设,能够提供精确的时间控制和事件计数功能。
2. 定时器的基本原理和应用定时器是一种能够生成精确时间延迟的设备,常用于控制各种时间相关的任务。
在单片机中,定时器通常由一个计数器和一个时钟源组成。
当计数器的值达到设定的阈值时,会产生一个中断信号或触发一个特定的操作。
定时器常用于以下应用场景:2.1 延时操作:通过设置定时器的阈值和时钟源,可以实现精确的延时操作,如LED灯的闪烁控制、蜂鸣器的鸣叫持续时间控制等。
2.2 定时中断:定时器可以周期性地产生中断信号,用于实现时间感知的任务,如定时采集传感器数据、定时更新显示等。
2.3 PWM生成:定时器可以用于生成脉冲宽度调制(PWM)信号,用于控制驱动器或产生模拟信号,如电机控制、音频发生器等。
3. 单片机常用的定时器模块不同型号的单片机提供了各种类型和不同功能的定时器模块。
以常见的AVR单片机为例,其常用的定时器模块包括定时/计数器0、定时/计数器1和定时/计数器2等。
这些定时器模块具有不同的位数、工作模式和功能特性,开发人员可以根据具体需求选择合适的定时器模块。
4. 定时器的接口设计单片机定时器的接口设计包括时钟源设置、计数器模式设置、阈值设置和中断配置等。
不同的定时器模块具有不同的寄存器和位域,开发人员需要通过设置这些寄存器和位域来实现定时器的功能。
4.1 时钟源设置:定时器的时钟源可以选择外部晶体振荡器、外部时钟源或与系统时钟源相关的分频器。
开发人员需要根据具体需求选择合适的时钟源,并将相应的位域设置为合适的值。
D8.1并行接口芯片8255A
![D8.1并行接口芯片8255A](https://img.taocdn.com/s3/m/55acd83c3968011ca30091a9.png)
5. A口外设数据线PA7~PA0(双向) B口外设数据线PB7~PB0(双向) C口外设数据线PC7~PC0(双向)
8.1.3 8255A的工作方式
1. 方式0——基本输入输出方式 特点:适用于PA口、PB口和PC口作输入/输出端口, 2. 方式1——选通输入/输出方式(应答式输入/输出) 特点:适用于PA口和PB口作输入/输出端口,PC口 主要作为联络线;
( 其他)
××××× 芯片禁止,数据线高阻
(说明:由于A4A3A2未用,8255A共有32个地 址,即060H~07FH,其中060H~063H为基本 地址,其余为影像地址)
2. 读写控制信号RD,WR 3. 复位信号RESET——当RESET=1(有效)时, 8255A复位,内部寄存器被清除,三个端口自动置 为输入方式; 4. 数据线D7~D0——双向、三态,用于8255A与 CPU之间的数据传送;
PC7
8.1.5 8255A应用举例 例1. 用8255A作为打印机的接口,工作于方式0, CPU用查询方式将BUFF缓冲区中的100个字符送打 印机打印。
D7~D0 判断是否忙 AB CPU
DB
译 码
PA7~PA0 8255A 驱动 CS初始化 PC6 PC2 A1 A0
打印机 STB BUSY
D7 ~ D0
DB
用于 输出 用于 输入
A口
输出设备 OBFA ACKA 输入设备 IBFA STBA
AB CPU
译 码
8255A CS PC7 PC6 A1 PC5 A0 PC4 PC3 INTRA
8.l.4 8255A的控制字(必须记住!) 1. 方式选择控制字—用于决定8255A三个端口的工作方式
PC6/PC2——响应信号ACKA/ACKB,低电平 有效;外设在OBF=0(缓冲器满)的条件下,用 ACK=0表示将数据取走,同时由8255内部逻辑 使OBF=1(示空),在中断允许(INTE=1) 时,使INTR=1产生中断请求。 PC3/PC0——中断请求信号输出INTRA/INTRB
计数器与定时器教学课件PPT
![计数器与定时器教学课件PPT](https://img.taocdn.com/s3/m/09340052e97101f69e3143323968011ca300f796.png)
CLK 2 GATE 2 OUT 2
引脚
D7~D0:8位、双向、三态数据线,直接和系统 数据总线相连。读/写16位数据则分两次进行。
CS:片选信号,低电平有效。 RD,WR:读信号,写信号,低电平时有效。 A1,A0:8253端口选择线。00~10分别选择计
《微机原理与接口》教学课件
方式5 硬件触发选通信号
-WR
写入 写入 方式5 4
写入 3
CLK
GATE
OUT
4321 0
3 2 13 2 10
▪ GATE:触发作用
触发
重触发:装计数值
《微机原理与接口》教学课件
6、方式5: 硬件触发选通信号
在这种方式下,设置了控制字后,输出为 高。在设置了计数值后,计数器并不立即 开始计数,而是由门控脉冲的上升沿触发 启动。当计数到0时,输出变低,经过一 个CLK脉冲,输出恢复为高,停止计数。 要等到下次门控脉冲的触发才能再计数
OUT端随着工作方式的不同和当前计数状态的 不同,一定有电平输出变化,而且输出变化均 发生在CLK的下降沿。OUT的输出波形在写控 制字之前为未定态,在写了控制字之后到计数 之前为计数初态,再之后有计数态、暂停态、 结束态等。
对于给定的工作方式,门控信号GATE的触发条 件是有具体规定的,或电平触发,或边沿触发, 或两者均可
《微机原理与接口》教学课件
各种工作方式的输出波形
方式 0 方式 1 方式 2 方式 3 方式 4 方式 5
0
N0
N
1 0/N
N0 10
N N/2 0/N N/2 0
N N 01
01 N 01
《微机原理与接口》教学课件
定时计数器与串行通讯口
![定时计数器与串行通讯口](https://img.taocdn.com/s3/m/7bcdd50d76c66137ee061945.png)
TR0/TR1:Timer0/1运行控制位 运行控制位: TR0/TR1:Timer0/1运行控制位: TR0/TR1 =0 时,Timer0/1停止计数 Timer0/1停止计数 Timer0/1启动计数 TR0/TR1 =1 时,Timer0/1启动计数
定时器结构与工作方式 工作方式1 16位的定时 工作方式1:——16位的定时/计数器 16位的定时/
振荡器 ÷12 C/T=0 TLx THx (8位) (8位) 位 位 控制 =1 开关接通 TFx 申请 中断
Tx端 Tx端 TRx位 TRx位 GATE位 GATE位 INTx端 INTx端
≥1
由分析得知:T0选择方式1 初值=3CB0H 由分析得知:T0选择方式1,初值=3CB0H 选择方式
定时器方式 寄存器TMOD 寄存器TMOD
GATE C / T M1 M0 GATE C / T M1 M0
X
X
X
X
0
0
0
1
初始化:MOV 初始化: TMOD,#01H ;选 T0 方式 1 TMOD, TH0, ;赋初值高 赋初值高8 MOV TH0, #3CH ;赋初值高8位 TL0, #0B0H ;赋初值低 赋初值低8 MOV TL0, #0B0H ;赋初值低8位 T0定时 SETB TR0 ;启动 T0定时 若需要定时器0产生中断还应当写如下语句 还应当写如下语句: 若需要定时器0产生中断还应当写如下语句: SETB EA ;开总中断允许 T0中断允许 SETB ET0 ;开T0中断允许 以及相应的中断服务程序 中断服务程序。 以及相应的中断服务程序。 P.115,门控用法举例。 例3:书P.115,门控用法举例。
可编程定时器计数器8253及其应用
![可编程定时器计数器8253及其应用](https://img.taocdn.com/s3/m/fafed7e02cc58bd63186bdb8.png)
第八章可编程定时器/计数器8253及其应用【回顾】可编程芯片的概念,端口的概念。
【本讲重点】定时与计数的基本概念及其意义,定时/计数器芯片Intel8253的性能概述,内、外部结构及其与CPU的连接。
8.1 定时与计数1.定时与计数在微机系统或智能化仪器仪表的工作过程中,经常需要使系统处于定时工作状态,或者对外部过程进行计数。
定时或计数的工作实质均体现为对脉冲信号的计数,如果计数的对象是标准的内部时钟信号,由于其周期恒定,故计数值就恒定地对应于一定的时间,这一过程即为定时,如果计数的对象是与外部过程相对应的脉冲信号(周期可以不相等),则此时即为计数。
2.定时与计数的实现方法(1) 硬件法专门设计一套电路用以实现定时与计数,特点是需要花费一定硬设备,而且当电路制成之后,定时值及计数范围不能改变。
(2) 软件法利用一段延时子程序来实现定时操作,特点,无需太多的硬设备,控制比较方便,但在定时期间,CPU不能从事其它工作,降低了机器的利用率。
(3) 软、硬件结合法即设计一种专门的具有可编程特性的芯片,来控制定时和计数的操作,而这些芯片,具有中断控制能力,定时、计数到时能产生中断请求信号,因而定时期间不影响CPU的正常工作。
8.2 定时/计数器芯片Intel8253Intel8253是8086微机系统常用的定时/计数器芯片,它具有定时与计数两大功能。
一、8253的一般性能概述1.每个8253芯片有3个独立的16位计数器通道;2.每个计数器通道都可以按照二进制或二—十进制(BCD码)计数;3.每个计数器的计数速率可以高达2MHz;4.每个通道有6种工作方式,可以由程序设定和改变;5.所有的输入、输出电平都与TTL兼容。
二、8253内部结构8253的内部结构如图8-1所示,它主要包括以下几个主要部分:图8-1 8253的内部结构1.数据总线缓冲器实现8253与CPU数据总线连接的8位双向三态缓冲器,用以传送CPU向8253的控制信息、数据信息以及CPU从8253读取的状态信息,包括某时刻的实时计数值。
微机原理-8253
![微机原理-8253](https://img.taocdn.com/s3/m/64b8b9e69b89680203d82526.png)
8253工作方式特点: 8253工作方式特点: 工作方式特点
方式0 在写入控制字后,输出端即变低,计数结束后, 方式0,在写入控制字后,输出端即变低,计数结束后,输 出端由低变高,常用该输出信号作为中断源。 出端由低变高,常用该输出信号作为中断源。 方式1 用来产生单脉冲。 方式1,用来产生单脉冲。 方式2 用来产生序列负脉冲,每个负脉冲的宽度与CLK脉冲 方式2,用来产生序列负脉冲,每个负脉冲的宽度与CLK脉冲 CLK 的周期相同。 的周期相同。 方式3 用来产生连续的方波。方式2和方式3 方式3,用来产生连续的方波。方式2和方式3都实现对时钟 脉冲进行n分频。 脉冲进行n分频。 方式4和方式5 波形相同,都在计数器回0 方式4和方式5的波形相同,都在计数器回0后,从OUT端输出 OUT端输出 一个负脉冲,其宽度等于一个时钟周期。 一个负脉冲,其宽度等于一个时钟周期。 方式0 方式0、1和4,计数初值装进计数器后,仅一次有效。方式2,3 计数初值装进计数器后,仅一次有效。方式2 在减1计数到0值后,8253会自动将计数值重装进计数器 会自动将计数值重装进计数器。 和5,在减1计数到0值后,8253会自动将计数值重装进计数器。
可编程定时器/计数器8253
8253可编程定时器 计数器的主要性能: 可编程定时器/计数器的主要性能 可编程定时器 计数器的主要性能: 个独立的16位计数器 有3个独立的 位计数器 个独立的 工作方式可编程控制 计数脉冲频率0~2MHz 计数脉冲频率 可以按二进制或BCD码计数 可以按二进制或BCD码计数 使用单一+5V电源 电源 使用单一
方式2:频率发生器(n分频器)
CLK
WR
GATE OUT
n=4
4
3 2
1 0 4 3
微机原理ch8
![微机原理ch8](https://img.taocdn.com/s3/m/a7dcfc36a32d7375a41780f8.png)
及其应用可编程计数器//定时器8253及其应用第八章可编程计数器主要内容§8-1 引言§8-2 8253的工作原理§8-2 8253的应用举例引言1 引言§8-1引言在微型计算机系统中,常需要用到定时功能。
例如:(1)按一定的时间间隔对动态RAM进行刷新;(2)扬声器的发声;(3)在计算机实时控制和处理系统中,按一定的采样周期对处理对象进行采样,或定时检测某些参数;(4)对外部事件进行计数。
这些情况下都需要用到定时信号,实现定时功能主要有三种方法:1、软件定时最简单的定时方法,完全由软件编程来控制改变定时时间,方便且节省费用;但CPU的利用率低,不通用。
2、不可编程的硬件定时使用不可编程器件设计数字电路实现计数或定时,但必须视要求改变电路参数,可以在一定的范围内改变定时时间。
在硬件已连接好的情况下,定时时间和范围就不能由程序来控制和改变,定时精度不高。
如:555及74LS190。
3、可编程的硬件定时可编程定时器/计数器电路利用硬件电路和中断方法控制定时,定时时间和范围完全由软件来确定和改变,并由微处理器的时钟信号提供时间基准,计时精确稳定。
与CPU并行工作,不占用CPU时间,应用比较广泛,如8253,8254。
§8-2 8253的工作原理一、8253的性能指标Intel 8253就是一种计数器/定时器芯片,被称为可编程间隔定时器(Programmable Interval Timer,PIT)。
性能指标如下:(1)NMOS,24脚双列直插式封装,+5V电源;(2)包含3个独立的16位计数器,最高计数频率高达2MHz;(3)所有的计数方式,操作方式都通过编程控制。
引脚图如下:二、8253内部结构和功能对照内部结构图,介绍8253内部的各组成部分的功能。
1、数据总线缓冲器是8253与系统数据总线的接口,由8位双向三态缓冲器构成,实现数据的输入和输出,通过编程确定8253的工作方式和时间常数。
单片机的定时计数器与串行接口
![单片机的定时计数器与串行接口](https://img.taocdn.com/s3/m/1429f041767f5acfa1c7cd4a.png)
TCON寄存器 中定时器控制 仅用了其中高四位,其意义如 下: ★TF1:T1溢出中断请求标志。 TF1=1,T1有溢出中断请求。 TF1=0,T1无溢出中断请求。 ★TR1:T1运行控制位。 TR1=1,启动T1工作。 TR1=0,停止T1工作。
单片机的定时/计数器与串行接口
★TF0:T0溢出中断请求标志。
TF0=1,T0有溢出中断请求。 TF0=0,T0无溢出中断请求。 ★TR0:T0运行控制位。 TR0=1,启动T0工作。 TR0=0,停止T0工作。
单片机的定时/计数器与串行接口
定时计数器的内部逻辑电路结构
C/T
C/T
>1
&
单片机的定时/计数器与串行接口
单片机的定时/计数器与串行接口
分析 利用T1完成100ms的定时,当P1口线输出“1” 时,发光二极管亮,每隔100ms”1”左移一次,采用 定时方式1,先计算计数初值: MC= =2μs
100ms/2μs =50000=C350H
(C350H)补 =10000H-C350H=3CB0H
单片机的定时/计数器与串行接口
单片机的定时/计数器与串行接口
3. 方式2 当TMOD中M1M0=10时,定时器工作在方式2。 方式2是8位的可自动重装载的定时计数方式。 ★16位的计数器被拆成两个8位,其中TL0用作8位计数器, TH0用以保持计数初值。当TL0计数溢出,置位TF0,TH0中的初 值自动装入TL0,继续计数,循环重复计数。 ★用于计数工作方式时,最大计数值为:
LTE学习总结—定时器计数器
![LTE学习总结—定时器计数器](https://img.taocdn.com/s3/m/c96de84c3b3567ec102d8a32.png)
LTE定时器计数器定时器在协议中介绍常用定时器介绍1、T300和N300(RRC连接建立定时器)启动:UE在发送RRCConnectionRequest时启动此定时器。
关闭:定时器超时前,收到RRCConnectionSetup或者RRCConnectionReject后关闭此定时器。
定时器超时后,若RRCConnectionRequest消息的重发次数小于常量N300,则重发RRCConnectionRequest,否则进入空闲模式。
取值范围:T300:MS100_T300(100毫秒), MS200_T300(200毫秒), MS300_T300(300毫秒), MS400_T300(400毫秒), MS600_T300(600毫秒), MS1000_T300(1000毫秒), MS1500_T300(1500毫秒),MS2000_T300(2000毫秒)N300范围为0-7建议值:T300:MS200_T300(200毫秒)N300建议3设置建议:T300的设置应结合UE,EUTRAN处理时延以及传播时延考虑,T300设置越大,UE等待时间越长,N300设置越大,RRC连接建立可能性越高,同时用于RRC连接建立的时间也可能越长,有可能出现某个UE反复尝试接入和发送连接建立请求,而对其他用户造成较强的干扰情况。
2、T301和N301(RRC连接重建定时器)启动:UE在发送RRCConnectionReestabilshmentRequest时启动该定时器。
关闭:如果UE收到RRCConnectionReestablishment或者RRCConnectionReestablishmentReject或者被选择小区变成不适合小区,则停止该定时器。
取值范围:T301:MS100_T300(100毫秒), MS200_T300(200毫秒), MS300_T300(300毫秒), MS400_T300(400毫秒), MS600_T300(600毫秒), MS1000_T300(1000毫秒), MS1500_T300(1500毫秒),MS2000_T300(2000毫秒)N301范围为0-7建议值:T301:MS200_T300(200毫秒)N301建议3设置建议:取值过大,则会导致RRC重新连接的时间过长,影响用户感知;取值过小则会影响接入成功率。
5微机接口计数定时器PPT课件
![5微机接口计数定时器PPT课件](https://img.taocdn.com/s3/m/d090950b69dc5022abea0020.png)
占缺用采点采C用P增:用U5加5可的5了芯编时C片程间P和通CUP的阻用U时容的利间器定用开件时率销构/高计,成,数定C定器P时时电U电执时路路行间产。延由生时软定时件时间设。越置这长定种,时方这时法种间不等 长待,优开使点销用:越电灵大路活,简。降单尤低,其改了是R,CC定P值时U可的准改效确变率,定,定时浪时时费时间C间P。不U的受资主源机。频并率且影,响软,
• 定时与计数的关系
定时的本质就是计数,只不过这里的“数”的
单位是时间单位。如果把计时单位累加起来,就可
获得一段时间。因此, 定时的本质就是计数。
©北京工业大学计算机学院®
3
实现定时的方法
微机接口
软件定时
硬件定时
(1)软件定时
(2)利硬用件C定P时U内部定时机构,运用软件编程,循环执行一段程 序而产生硬的件等定待时延常时采。用可编程和不可编程的硬件电路来实 优现点定:不时需。增加硬设备,简单只需编制相应的延时程序以备调用。
©北京工业大学计算机学院®
4
8-1 8253/8254的工作原理
微机接口
定时和计数的本质是相同的,它们都是对一个 输入脉冲进行计数,定时器由数字电路中的计数电 路构成,通过记录高精度晶振脉冲信号的个数,输出 准确的时间间隔。例如, 输 入脉冲的频率为2MHz, 则:计数 2× 1 0 6 ---- 定时1秒。
2、读/写控制逻辑
发送或接收数据 往计数器设置计数器初值 从计数器读取数值 写控制寄存器
产生控制整个器件工作的控制信号
CS:片选
RD:CPU正在读计数器的值
WR:CPU正在写计数器初值或写入控制字
A1、A0:用来对3个计数器和控制器进行寻址,若8253
的端口基地址为40H,计数器0,1,2和控制寄存器端口
第八章 STM32定时器
![第八章 STM32定时器](https://img.taocdn.com/s3/m/485bef3ea36925c52cc58bd63186bceb18e8ed76.png)
RCC_APB1PeriphClockCmd (RCC_APB1Periph_TIM2 ,ENABLE) ; }
8.7 TIM2应用实例概述
2.GPIO的配置
设系统时钟为72MHz ,则定时时间T: T= (TIM_Period+1)* (TIM_Pre scaler+1)/TI MxCLK= (35999+1)* (1999+1)/72MHz= 1s
8.6 通用定时器TIMx寄存器
STM32通用定时器的TIMx寄存器较多 ,有 18个 ,使用较复杂。
8.7 TIM2应用实例概述
3.NVIC的配置
设置初始化中断向量
void NVIC_Config (void)
{
/*设置优先分级组,选择中断通道*/
NVIC_In itTypeDef NVIC_In itStructure ;
NVIC_PriorityGroupConfig (NVIC_PriorityGrou p_0) ;
6) TIM_TimeBase In it ():TIMx初始化 7) TIM_ClearFlag (): 清除溢出中断标志; 8) TIM_ITConfig ():开启定时器中断 ,和NVIC作
用相当于双保险 ;便于以后开启和关闭定时器。
9) TIM_Cmd(): 允许定时器工作。
8.7 TIM2应用实例概述
具体选择哪个时钟可通过TIMx_SMCR寄 存器的相关位来设置 。CK_INT时钟是从APB1 倍频得到的 。从图中可看出 , 定时器的时钟 不是直接来自APB1或APB2 ,而是来自于输入 为APB1或APB2的一个倍频器。
微机原理--定时计数控制接口 ppt课件
![微机原理--定时计数控制接口 ppt课件](https://img.taocdn.com/s3/m/a0b42c9c76c66137ee0619df.png)
计数初值一次有效
当gate为0暂停记数
方式5 硬件触发选通信号
方式5 4
3
WR
CLK
GATE
OUT
43210
定时时间
触发信号是由gate引入才开始记数
3 2 13 2 10
定时时间
各种工作方式的输出波形
方式 0 方式 1 方式 2 方式 3 方式 4 方式 5
0
N0
N
1 0/N
N0 10
N N/2 0/N N/2 0
方式0 计数结束中断
WR CLK GATE
OUT
① ② ③④ ⑤ ⑥ 方式0 n=4
4321 0
计数初值一次有效
④ ①设定工作方式②门控信号高电平③设定计数初值计数值送入计数器⑤计数过程⑥计数结束
方式1 可编程单稳脉冲发生器
WR CLK GATE
OUT
①
②④ ⑤ ⑥
方式1 4
③ 4321 0
计数初值一次有效
43210
43210
43210
43210
记数n为偶数时输出重复周期为n的方波 N为奇数时输出一个(n+1)/(n-1)近似方波
当gate为0暂停记数
方式4 软件触发选通信号
方式4 4
3
WR
CLK
GATE
OUT
4321 0
3 2 3 2 10
软件装入n如果gate为高立即开始记数,只一次有效。要重新记数必须重新装入n
11.3.3 8253的编程
8253加电后的工作方式不确定 8253必须初始化编程,才能正常工作 写入控制字
写入计数初值 读取计数值
D7 D6 D5 D4 D3 D2 D1 D0
第八章 定时器计数器接口
![第八章 定时器计数器接口](https://img.taocdn.com/s3/m/1926721914791711cc791746.png)
8.2 8253/8254可编程定时器/计数器
8.2.4 8253的工作方式(续)
WR CLK
GATE OUT
CW
n=4
4
3
2
1
0
计数值写入计数器 方式5:计数,上升沿触发(硬触发)
8.2 8253/8254可编程定时器/计数器
8.2.4 8253的工作方式(续)
mode 0 Gate=“0”
停止计数
CW
n=4
4
3
2
1 0/4 3
2
1 0/4
3
2
1
OUT
2+2或3+2
方式3:定时,电平触发,上升沿也触发
8.2 8253/8254可编程定时器/计数器
8.2.4 8253的工作方式(续)
WR CLK
CW N n=4 N N 4 3 2 1 0
GATE
OUT
计数值写入计数器
方式4:计数,电平触发(软触发)
MAIN: MOV DX,OFFSET INT1C; 中断程序入口 MOV AX,251CH; INT 21H ;设置中断向量表 MOV DX,OFFSET MAIN;驻留程序的长度 INT 27H ;
8.2 8253/8254可编程定时器/计数器
8253在IBM PC系列机中的应用(8253时钟中断的使用)
*CMOS参数(2)
PCI slot IRQ:Auto/Manual(注意不要冲突) PCI IDE IRQ:Auto/Manual(注意不要冲突) PCI IDE Trigger Type:PCI 总线中断控制信号的设置, Edge /Level,若接口无特殊要求则设置为Level。 Resources Controlled By:设置系统资源(IRQ,DMA)的 分配方式, Auto/ Manual。 PCI IDE IRQ Map To: 若主板上插有非PCI总线的IDE卡 时设为ISA。 Primary IDE INTR#: A / Secondary IDE INTR#: B : 设置IDE接口的中断优先级,A优于B。 IRQ xx Used By ISA:设置某个IRQ (3~15)给ISA总线使用。 DMA x Used By ISA:设置某个DMA (1,3,5等)给ISA总线使用。 PCI Latency Timer:PCI总线的响应时间 (32,64,128等)。与主板有关。
51单片机接口(定时器)8
![51单片机接口(定时器)8](https://img.taocdn.com/s3/m/0aa13475a26925c52cc5bf22.png)
PT0M0: MOV TL0,#0CH ;T0置初值低位 MOV TH0,#0F0H ;T0初值高位 SETB TR0 ;启动T0 SETB ET0 ;允许T0中断 SETB EA ;CPU 开放中断 RET ;中断服务程序 IT0P: MOV TL0,#0CH ;T0置初值低位 MOV TH0,#0F0H ;T0初值高位 CPL P1.0 ;P1.0取反 RETI
TFi
中断申请
高位 + 模式2时:低位作8位计数器,高位作重装载 寄存器(看红色框图)
GATE
中断引脚 INTi
定时器T0的模式3结构
F0/12
C/T=0 引脚 T0 TR0 GATE 中断引脚 INT0
TL0
C/T=1
TF0
中断申请
+
模式3时:T0高8位也做计数器,但要借用T1 的控制位TR1和标志位TF1以及中断资源。 此时的T1只能工作于模式2或者休息。 TH0 TR1 TF1 中断申请
51定时器框图
i=0,1 指: T0,T1和 INT0,INT1
T0,T1的模式寄存器TMOD
MSB GATE C/T M1 M0 GATE C/T M1 LSB MO
定时器T1模式
定时器T0模式
当使用INTi测量脉宽时置1,否则置0 置1时选择Counter,时钟由引脚输入。 置0时选择Timer,时钟选用fosc/12 M1M0 两位二进制数表示选择定时器模式为 模式0~3 高4位管理定时器T1,低4位管理定时器T0 GATE C/ T
定时模式,模式2的预置值计算
方式2: 8位定计数器的最大计数值=28 =256 假设计数器工作在计数器方式2,要求计数 100个脉冲的计数初值的计算如下。设计数初 始值位x,则: 28 - x = 100 x = 156 因此THx=TLx=0x9CH。 以下就定时器的工作方式0举例说明定时器的 应用方法
单片机原理及应用-定时器计数器与串行通信口
![单片机原理及应用-定时器计数器与串行通信口](https://img.taocdn.com/s3/m/f42a88a2284ac850ad0242f5.png)
定时器/计数器-定时器/计数器的工作方式
2. 方式1—16位方式 其定时时间为:t=(216-T0初值)×机器周期
振荡器 T0 TR0
GATE INT0 1
1/12
C/T=0 C/T=1 & TL0 TH0 TF0 8位 8位
16位计数器
≥1
定时器/计数器-定时器/计数器的工作方式
3. 方式2—8位自动装入时间常数方式 其定时时间为:t=(28-T0初值)×机器周期
振荡器
T0 TR0 GATE INT0 1
1/12
C/T=0 TL0 C/T=1 & TH0 TF0
≥1
定时器/计数器-定时器/计数器的工作方式
4. 方式3—2个8位方式 仅T0可以工作在方式3—此时T0分成2个独立的计数 器—TL0和TH0 ,前者用原来T0的控制信号(TR0、 TF0),后者用原来T1的控制信号(TR1、TF1)。
定时器/计数器-控制与状态寄存器
2.控制寄存器TCON
D7 D6 D5 D4 D3 D2 D1 D0 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 中断请求标志
启动定时/计数器 触发方式选择
0 停止,1 启动 0 低电平1 下降沿
定时器/计数器-控制与状态寄存器
TF1位:定时器1溢出标志位。 当定时/计数器1溢出时,由硬件置1。使用查询方 式时,此位做状态位供查询,查询有效后需由软件清 零;使用中断方式时,此位做中断申请标志位,进入 中断服务后被硬件自动清零。 TR1位:定时器1运行位。 该位靠软件置位或清零,置位时,定时/计数器接 通工作,清零时,停止工作。 TF0位:定时器0溢出标志位,其功能和操作情况同TF1。 TR0位:定时器0运行控制位,其功能和操作类同于TR1。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
5
4
停止计数3
2 1
0
OUT
计数值写入计数器 方式0:计数,电平触发(软触发)
8.2 8253/8254可编程定时器/计数器
8.2.4 8253的工作方式(续)
WR
CLK GATE OUT
5 4 3 5 4 3 2 1 0 CW n=5
重新计数 方式1:计数,上升沿触发(硬触发)
8.2 8253/8254可编程定时器/计数器
1)子程序名:SOUND; 2)子程序功能: 启动8253计数器2产生指定频率的声音并持 续指定的时间
3)入口条件: DX=产生方波的频率;
AX=持续(延时)的时间(ms); 4)出口条件: 无; 5)受影响的寄存器:AX,DX,F。 SOUND PROC PUSH CX PUSH SI ;保存CX、SI寄存器
第八章 定时器/计数器接口
2011/10
东北大学计算机系统研究所
第八章
8.1 什么是定时和计数 8.2 8253/8254可编程定时/计数器 8.3 MC146818 CMOS RAM/实时时钟钟 习题
8.1 什么是定时和计数
• 定时:CPU通过接口电路产生时间符合要 求的信号的过程称为定时。该接口电路称
*CMOS参数(2)
PCI slot IRQ:Auto/Manual(注意不要冲突) PCI IDE IRQ:Auto/Manual(注意不要冲突) PCI IDE Trigger Type:PCI 总线中断控制信号的设置, Edge /Level,若接口无特殊要求则设置为Level。 Resources Controlled By:设置系统资源(IRQ,DMA)的 分配方式, Auto/ Manual。 PCI IDE IRQ Map To: 若主板上插有非PCI总线的IDE卡 时设为ISA。 Primary IDE INTR#: A / Secondary IDE INTR#: B : 设置IDE接口的中断优先级,A优于B。 IRQ xx Used By ISA:设置某个IRQ (3~15)给ISA总线使用。 DMA x Used By ISA:设置某个DMA (1,3,5等)给ISA总线使用。 PCI Latency Timer:PCI总线的响应时间 (32,64,128等)。与主板有关。
通道2:方式3,CLK=1.19MHz,GATE接8255A PB0, OUT接扬声器的驱动器输入端,即产生不同频率的方波, 发出不同的声音。
8.2 8253/8254可编程定时器/计数器
8.2.5 8253在IBM PC系列机中的应用(8253时钟中断的使用)
8253通道0每55ms产生一次类型为8的中断,在INT 8中断服务程序中, 修改系统时间,从而维护系统的日历和时钟。 为利用INT 8中断,在其中断程序中有一条指令:INT 1CH。因此它与 INT 8同步,而且不必在结束时执行EOI命令,因为在INT 1CH中执行 了。用户可以利用INT 1CH编写自己的定时程序。例:编写一个驻留程 序,每隔1s在屏幕的右上角显示一个数字,在0~9之间变化。
WR
CS CH2
8.2 8253/8254可编程定时器/计数器
8.2.2 8253的内部结构
8253
控制寄存器 计数初值寄存器 CLK0 GATE0 计数器 当前计数值寄存器 OUT0
通道1
通道2
计数初值=参 考时钟频率 输出频率
8.2 8253/8254可编程定时器/计数器
8.2.3 8253的控制字
8.3 MC146818 CMOS RAM/实时时钟
MC146818的特点 • 采用CMOS工艺,功耗小,可用电池供电。 • MC146818中数据的存取 • 利用INT 1AH:只能存取时钟信息。例 如,将时间设置为12:45,不使用夏时 制: mov ah,03h; mov cl,45h; mov ch, 12h; mov dh,0; mov dl,0; int 1ah; • 利用汇编语言:如在DEBUG下,O 70 10/O 71 10即可删除CMOS的口令。
8.2 8253/8254可编程定时器/计数器
*8253的应用练习-多个通道级联,任意脉宽 +5V
OUT0 30ms OUT1 3ms
….. 3ms方波
GATE0 1KHz CLK0 OUT0 GATE1 CLK1 OUT1 GATE2 CLK2 OUT2 3ms
任意脉宽负脉冲
第八章
8.1 概 述 8.2 8253/8254可编程定时/计数器 8.3 MC146818 CMOS RAM/实时时钟钟 习题
MAIN: MOV DX,OFFSET INT1C; 中断程序入口 MOV AX,251CH; INT 21H ;设置中断向量表 MOV DX,OFFSET MAIN;驻留程序的长度 INT 27H ;
8.2 8253/8254可编程定时器/计数器
8253在IBM PC系列机中的应用(8253时钟中断的使用)
Gate=“ ”
Gate=“1”
进行计数
1
计数不受影响
开始计数,一个 时钟周期后输出 低电平
计数不受影响
2 3 4 5
停止计数,输出高电平 停止计数,输出高电平 停止计数
开始计数,重设初始值 进行计数 开始计数 进行计数 进行计数
计数不受影响
开始计数
8.2 8253/8254可编程定时器/计数器
*8253的初始化
8.2 8253/8254可编程定时器/计数器
8.2.5 8253在IBM PC系列机中的应用 (在PC/XT中为8253,在PC/AT中为8254 )
通道0:方式3,CLK=1.19MHz,GATE=“1”,OUT接IRQ0, 计数初值为0(65536),即每隔55ms一个中断请求信号,中断 程序据此维护系统的日历时钟。 通道1:方式2,CLK=1.19MHz,GATE=“1”,OUT接 DREQ0,计数初值为18,即每隔15vs一个DMA请求信号,使 DMA周期性地进行DRAM刷新。
为定时器。
• 计数: CPU通过接口电路对外部事件的数
量进行统计的过程称为计数。该接口电路
称为计数器。
8.1 什么是定时和计数
三种定时方法
• 软件定时:
MOV CX,XXXXH lp: NOP ……. NOP LOOP lp
或调用定时子程序,如INT指令、其它高 级语言中的子程序。 • 硬件定时:采用TTL或CMOS集成电路, 如NE555、计数器等,或晶振、阻容电路 等。 • 可编程定时器:如8253/8254,CTC等。
8.2.4 8253的工作方式(续) WR CLK
CW n=3
GATE OUT
N
N
N
3 2
1 0/3 2
1 0/3 2
1 0/3 2
1
分频器 计数值写入计数器 方式2:定时,电平触发,上升沿也触发
8.2 8253/8254可编程定时器/计数器
8.2.4 8253的工作方式(续)
WR CLK GATE
1MHz 4ms
8.2 8253/8254 +5V
10ms
OUT0 4ms Q OUT2 6ms GATE0 CLK0 OUT0 1KHz GATE1 4ms CLK1 OUT1 GATE2 CLK2 OUT2
10ms
Q S Q R
CW
n=4
4
3
2
1 0/4 3
2
1 0/4
3
2
1
OUT
2+2或3+2
方式3:定时,电平触发,上升沿也触发
8.2 8253/8254可编程定时器/计数器
8.2.4 8253的工作方式(续)
WR CLK
CW N n=4 N N 4 3 2 1 0
GATE
OUT
计数值写入计数器
方式4:计数,电平触发(软触发)
8253通道0每55ms产生一次类型为8的中断,在INT 8中断 服务程序中,修改系统时间,从而维护系统的日历和时钟。
为利用INT 8中断,在其中断程序中有一条指令:INT 1CH。 因此它与INT 8同步,而且不必在结束时执行EOI命令,因 为在INT 1CH中执行了。用户可以利用INT 1CH编写自己 的定时程序。例:编写一个驻留程序,每隔1s在屏幕的右上 角显示一个数字,在0~9之间变化。
第八章
8.1 概 述 8.2 8253/8254可编程定时/计数器 8.3 MC146818 CMOS RAM/实时时钟钟 习题
8.2 8253/8254可编程定时器/计数器
8.2.1 8253的引脚信号
8253
D0~D7 CH0 A0 A1 RD CH1
CLK0 GATE0 OUT0 CLK1 GATE1 OUT1 CLK2 GATE2 OUT2
8.3 MC146818 CMOS RAM/实时时钟
8.3.1 MC146818的功能
• 64B的静态存储器,前14个字节用于保存秒、 分、小时、星期、日、月、年,及一些状 态、控制寄存器。还保存硬件配置参数。 (通过程序或BIOS修改其内容) • 定时功能,可任意设定时间间隔 为30.517us~1天的中断申请。
利用通道2控制扬 声器发声。选择工 作方式3,声音频 率为4kHz(存放在 DX中)。端口地址 为40H~43H。
MOV SI, DX MOV AL, 10110110B OUT 43H, AL MOV DX, 0012H MOV AX, 34DCH DIV SI OUT 42H, AL MOV AL,AH OUT 42H, AL
PUSH AX
MOV SI,DX ;频率送SI
8.2 8253/8254可编程定时器/计数器
8253在IBM PC系列机中的应用(8253时钟中断的使用)