首页 > 其他分享 >89C52RC定时器(自用复习笔记)

89C52RC定时器(自用复习笔记)

时间:2024-03-13 18:59:03浏览次数:20  
标签:定时器 优先级 复习 中断 89C52RC 系统 模式 计数

一、定时器作用

(1)用于计时系统,可实现软件计时,或者使用程序每隔一固定时间完成一项操作。

(2)替代长时间的Delay,提高CPU的运行效率和处理速度。

(3)...操作系统任务切换,多任务执行。

二、定时器资源

定时器个数:3个(T0、T1、T2),T0,T1与传统51单片机兼容。

三、定时器工作原理

定时器在单片机内部像小时钟一样,根据输出的时钟信号,每隔一秒,计数单元的数值就增加一,当技术单元数值增加到“设定的时间”时(一般加到最大值溢出中断),计数单元向中断系统发起中断申请,产生“响铃提醒”,使程序跳转到中断服务函数程序。

3.1定时器工作模式

89C52RC的T0和T1均有四种工作模式:

模式0:13位定时器/计数器(几乎不用)

模式1:16位定时器/计数器(常用)

模式2:8位自动重装模式(少用)

模式3:两个8位计数器(几乎不用)

在此只看模式1,红框部分是时钟,蓝色框是计数单元。

3.2定时器工作原理

1)SYsclk:系统时钟,晶振周期,在89C52RC上是的晶振是12MHZ。

        进行分频,有12和6,此时用12的分频后为1MHZ,一周期就是1us。

        C/t选择开关=0时定时器,=1时就是计数器。

2)由左边的时钟通过分频后给予的脉冲使计数单位加1然后TL0和TL0一共16位,可以计数到65535,到65535后溢出产生一个型号TF0/1然后申请进入中断系统。

四、中断系统

1)中断系统是为使CPU具有外界紧急事件的实时处理能力而设置的。处理完以后再回到原来被中断的地方,继续原来的工作。cpu允许有多个中断源,当几个中断源同时向cpu请求中断,要求服务时,优先处理最紧急的中断请求源,规定每一个中断源有一个优先级别,cpu总响应优先级别最高的中断请求。(谁权力大等级高,先为谁办事)

2)中断(优先级低)时又来个中断(优先级高),先去处理优先级高的后,再回来低中断中继续处理。

中断源个数:8个(外部中断0,定时器0中断,外部中断1,定时器中断,串口中断,外部中断2,外部中断3)

中断优先级个数:4个

中断号:如图

五、定时器和中断系统

定时器和中断系统连接,此处使用的中断系统原理图是传统51的因为有向下兼容的原因,所以都是可以用的。

六、通过控制定时器的相关寄存器

寄存器是连接软硬件的媒介,通过对寄存器的配置操控硬件,根据数据手册!

标签:定时器,优先级,复习,中断,89C52RC,系统,模式,计数
From: https://blog.csdn.net/Mr_Lenghan/article/details/136572141

相关文章

  • 一个月内通过软考高级系统架构设计师,如何复习?进度安排、备考资料买哪些?附22条备考经验
    前言        楼主2022年下半年参加计算机软考,高级系统架构师的考试;复习时间:2个月(在职复习,真正有效时间<1个月);以下是楼主分数情况:综合知识45分;案例分析56分;论文58分。论文和案例均高分通过。    本文分享楼主复习高级系统架构师的考试的经验,备考建议,分享复......
  • 数学分析复习:数列和级数收敛
    数学分析复习:数列和级数收敛1.实数列收敛的定义2.实数项级数收敛的定义3.单调有界实数列必收敛4.Bolzano-Weierstrass定理5.Cauchy列5.1Cauchy列的性质5.2实数列的Cauchy收敛准则5.3实数项级数的Cauchy收敛准则6.Euler常数e的构造7.判断实数列和实数项级数收......
  • JS ATM练习案例(复习循环知识)
    需求:用户可以选择存钱、取钱、查看余额和退出功能。分析:1循环时反复出现提示框,所以提示框写到循环里面。2.退出的条件是4,所以是4就会结束循环3.提前准备一个金额预存储4取钱为减法操作,存钱为加法操作,查看为直接显示数额。5输入不同的值,可以用switch来执行不同操作。<!D......
  • 力扣148排序链表--复习归并和快速排序
    递归的归并排序归并排序主要流程是拆分--排序--合并--排序--合并//拆分voidmergeSort(vector<int>&nums,intstart,intend){ if(start>=end)return; intmid=start+(end-start)/2; mergeSort(nums,start,mid); mergeSort(nums,mid+1,end); //最后一层排......
  • 亚稳态知识复习
    亚稳态的概念和基本知识亚稳态是指触发器无法在某个规定时间段内达到一个可确认的姿态。当一个触发器进入亚稳态时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正确的电平上。在这个期间,触发器输出一些中间级电平,或者可能处于振荡状态,并且这种无用的输......
  • 定时器
    Timerimportjava.util.Timer;importjava.util.TimerTask;/***@authorPickle*@versionV1.0*@date2024/3/1215:06*/publicclassTimerDemo{publicstaticvoidmain(String[]args){//Timer本身也是一个线程finalTimertimer=new......
  • C#3种常见的定时器(多线程)
    总结以下三种方法,实现c#每隔一段时间执行代码:方法一:调用线程执行方法,在方法中实现死循环,每个循环Sleep设定时间;调用线程执行方法,在方法中实现死循环,每个循环Sleep设定时间Threadthread=newThread(newThreadStart(obj.Method1));thread.Start();方法二:使用System.Timers......
  • STM32标准库通用定时器输出比较
    STM32标准库通用定时器输出比较1.初始化voidTIM2_Init(){ RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE);//使能TIM2时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//使能GPIOA时钟 GPIO_InitTypeDefGPIO_InitSt......
  • STM32标准库通用定时器输入捕获
    STM32标准库定时器输入捕获1.输入捕获介绍输入捕获为STM32定时器的一个功能,可以用来测量输入信号的频率和占空比。具体原理:当输入信号经过比较捕获通道时,STM32会依据通道的极性设置决定是否触发捕获中断TIM_IT_CCx。此时定时器会将当前计数值TIMx->CNT的值保存在TIMx->CCRx中,通......
  • 同个线程里,如果线程正在忙过程中,定时器时间到了会被延迟触发吗?
    同个线程里,如果线程正在忙过程中,定时器时间到了会被延迟触发吗?在同一线程中,如果线程正在忙过程中,定时器的触发事件会被延迟,直到线程空闲下来才会被触发。这是因为在QT中,线程和定时器的处理都是通过事件循环来完成的。当线程处于忙碌状态时,事件循环将会被阻塞,直到线程执行完当前的......