微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 嵌入式学习笔记10——51单片机之中断定时器中断

嵌入式学习笔记10——51单片机之中断定时器中断

时间:11-20 来源:互联网 点击:
1. CPU时序的有关知识

(1)振荡周期:为单片机提供定时信号的振荡源的周期(晶振周期或外加振荡周期)。

(2)状态周期:2个振荡周期为1个状态周期,用S表示。振荡周期又称S周期或时钟周期。

(3)机器周期:1个机器周期含6个状态周期,12个振荡周期(使用计时器时,每隔一个机器周期计时器加1)。

(4)指令周期:完成1条指令所占用的全部时间,它以机器周期为单位。

2. 学习定时器前须明白:

(1)51单片机有2组定时器/计数器(52单片机有三组),可定时或计数。

(2)定时器/计数器和单片机的CPU是相互独立的,定时器/计数器工作的过程是自动完成的,不需要CPU的参与。

(3)51单片机中的定时器/计数器是根据机器内部的时钟或者外部的脉冲信号对寄存器(即TH0、TL0和TH1、TL1)中的数据加1。

3. TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标识。


GATE:门控位,用于控制定时器的启动是否受外部中断源信号的影响。GATE=0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作。 GATE=1时,用软件置TR0或TR1为1,同时外部中断引脚INT0/1也为高电平时,才能启动定时/计数器工作。

C/T:C/T=0为定时模式;C/T=1为计数模式。

M1M0:工作方式设置位,共四种工作方式。

00——13位定时/计数器

01——16位定时/计数器

10——8位自动重装定时/计数器

11—— T0分成两个独立的8位定时/计数器;T1此方式停止计数。


TF0、TF1:T0、T1溢出时,由硬件自动将TF0、TF1置1,CPU响应中断后TF0、TF1由硬件自动清0;也可用软件将TF0、TF1置1或清0,效果同硬件一样。

4. 使用定时器,该做哪些工作?

(1)对TMOD赋值,以确定T0和T1的工作方式,TMOD各位如上面的图片所示;

(2)计算初值,并将其写入TH0、TL0或TH1、TL1;

(3)开EA,开放定时器中断(IE寄存器如下图)。

(4)使TR0或TR1置位,启动定时/计数器定时或计数(在 TCON寄存器中)。

(5)写中断服务程序,注意对应的中断号。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top