外贸网站建设怎么制作,高质量的合肥网站建设,成都网站建设 冠辰,建设银行四川分行网站定时器的介绍
定时器#xff1a;51单片机的定时器属于单片机的内部资源#xff0c;其电路的设计连接和运转均在单片机内部完成。根据单片机内部的时钟或者外部的脉冲信号对寄存器中的数据加1#xff0c;定时器实质就是加1计数器。因为又可以定时又可以计数#xff0c;又称…定时器的介绍
定时器51单片机的定时器属于单片机的内部资源其电路的设计连接和运转均在单片机内部完成。根据单片机内部的时钟或者外部的脉冲信号对寄存器中的数据加1定时器实质就是加1计数器。因为又可以定时又可以计数又称之为定时/计数器。
作用在写程序时经常会用到延时代码比如用循环来实现延时即让CPU不断进行记数。但CPU在记数执行延时的时候做不了其他的事情且这种延时是不精确的。因此需要一个工具来帮助CPU进行记数而这个工具便是定时器。
例如你想在十分钟后做某事如果身边没有任何工具你就要自己数600秒而在你数数时无法分心做其他事。但如果身边有个闹钟就能定一个10分钟的闹钟而在这10分钟内你可以做别的事情。
需要注意的是定时器大部分使用情况要搭配中断系统。
与定时器相关的寄存器TH1、TL1、TH0、TL0、TMOD、TCON。
与中断相关的寄存器IE、IP。 定时与计数
定时功能通过内部或外接的晶振即SYSclk对内部寄存器中的值进行递增计数当计数到预设值时定时器会产生一个中断请求信号通知CPU进行相应处理。相当于闹钟响了提醒你该做事情了即定时作用
计数功能主要通过外部引脚T0 Pin/T1 Pin来实现只有当外部事件发生时才会产生一个脉冲信号触发内部寄存器进行加1操作。它不像定时功能一样以固定的频率递增计数 定时器资源
以STC89C52为例其定时器个数为3个T0、T1、T2T0、T1与传统的51单片机兼容T2是此型号单片机增加的资源。 注意定时器的资源和单片机的型号关联在一起不同型号可能含有不同的定时器个数和操作方式。但一般来说T0、T1的操作是所有51单片机共有的。 CPU时序
指令周期CPU每取出一条指令并执行这条指令都要完成一系列的操作这一系列操作所需要的时间称为指令周期。
机器周期CPU周期在计算机中为了便于管理常把一条指令的执行过程划分为若干个阶段如取指、译码、执行等每一阶段完成一个基本操作。完成一个基本操作所需要的时间称为机器周期。
时钟周期时钟周期T又称为振荡周期由单片机片内振荡电路OSC产生常定义为时钟脉冲频率的倒数是时序中最小的时间单位。例如若某单片机时钟频率为1MHz则它的时钟周期T应为1μs。
三种周期的关系指令周期由若干通常1~4个机器周期组成而机器周期又包含若干通常为12个时钟周期。
状态周期每个状态周期为时钟周期的两倍。
例如当外接晶振为12MHz时51单片机相关周期的具体值为振荡周期1/12us状态周期1/6us机器周期1us指令周期1~4us 定时器工作模式
对于STC89C52的T1和T0均有四种工作模式
模式013位定时器/计数器模式116位定时器/计时器模式28位自动重装模式模式3两个8位计数器 其中模式1最为常用故只介绍模式1。模式1的内部连接如下所示可分为三个部分 SYSclk系统时钟即晶振频率通常为12MHz或11.0592MHz。
进位规则模式1下T0的定时器配置为16位定时/计数器由TL0和TH0的8位共16位构成。当TL0的8位溢出时向TH0的8位进位 TH0技术溢出时向TCON中的溢出标志为TF0进位TF0由0变1。
计数速率STC89C52系列的单片机的定时器有两种计数速率分频一种是12T模式每12个时钟加1与传统8051单片机相同另一种是6T模式每6个时钟加1速度是传统8051单片机的两倍。 计数器由时钟提供提供脉冲信号经过分频器12分频或6分频每来一次脉冲则计数器加1当计数到达65535时下一个脉冲会溢出触发中断即告诉CPU闹钟响了该干事情了。
工作方式寄存器TMOD
TMOD用于设置定时/计数器的工作方式低四位用于T0高四位用于T1具体如下
位01234567字节地址89HM0M1C/TGATEM0M1C/TGATE
C/T为定时/计数选择位寄存器TMOD中的一位用来控制选择开关当C/T为1时连接T0 Pin为计数器功能当C/T为0时连接SYSclk系统时钟为定时器功能。
GATE为门控位当GATE为0时经过非门为1进入或门因为或门为有1出1因此此时可忽略INT0再进入与门当TR0为1时才能出1这样contorl开关才能连通当GATE为1时INT0必须为1TR0为1时开关才能连通。 M0/M1为四种工作模式设置位
M0M1工作模式说明0 0模式013位定时/计数器0 1模式116位定时/计数器1 0模式28位自动重装1 1模式3两个8位计数器 工作方式寄存器TCON
TCON的高四位用于定时/计数器的启动和中断申请低四位用于外部中断。此处只介绍高四位。
位01234567字节地址88HTR0TF0TR1TF1 TF1T1溢出中断请求标志T1计数溢出时由硬件自动使TF11。CPU响应中断后硬件自动使TF10。TF1也可以由软件置1或0
TR1T1运行的控制位。当TR11时T1开始工作当TR10时T1停止工作。TR1由软件控制故软件可控制定时/计数器的启动与停止。
TF0、TR0针对于T0作用与上述的TF1、TR1一样。 中断系统
中断系统是为了使CPU具有对外界紧急事件的实时能力而设置的。
中断当CPU正在处理某件事的时候外界发生了紧急事件请求要求CPU暂停当前的工作转而去处理这个紧急事件处理完后再回到原来被中断的地方继续原来的工作。实现这种功能的部件称为中断系统。 中断源请示CPU中断的请求源称为中断源。中断系统一般允许多个中断源当几个中断源同时向CPU请求中断时要进行优先级排序优先处理最紧急的中断请求源。CPU总是先响应优先级别高的中断请求。
中断嵌套当CPU正在处理一个中断源请求时发生了另一个优先级高的中断源请求。CPU暂停对原来的中断源的服务程序转而去处理优先级更高的中断请求源处理完后再回到原低级中断服务程序最后回到主程序。此过程为中断嵌套。这样的中断系统为多级中断系统没有中断嵌套的系统为单级中断系统。