定时器是什么
什么时间做什么事,是微控制器处理的基本原则,时间分为绝对时间和相对时间,一般做单片机开发都是使用相对时间,就是上一句执行完成后的多长时间执行下一句,而负责管理和统计时长的内部结构就叫做定时/计数器。
02
定时器的应用
当一个程序执行过程中,经常会用到一定量时间的延时,例如超声波传感器,需要一个触发电平开始工作,而这个电平需要持续一段时间,否则判为误触,这时候就需要延时,精确的延时需要用到硬件延时,就会用到定时/计数器。
03
定时器的工作参数
工作模式:主时钟为12Mhz,对主时钟进行12分频,使得12Mhz的频率降到1Mhz每次计数时长为1μs,这是定时器的时间基。
模式0:计数器由长度为13位的二进制寄存器组成,最大计数时长为8912μs,向上计数溢出中断。
模式1:计数器由长度为16位的二进制寄存器组成,最大计数时长为65535μs,向上计数溢出中断。
模式2:计数器由长度为8位的二进制寄存器组成,最大计数时长为256μs,向上计数溢出中断,有自动重装载机制。
模式3:计数器由长度为8位的二进制寄存器组成,最大计数时长为256μs,向上计数溢出中断,将计数器分成两个计数器扩充资源。
04
相关函数的编写
void Tx-init() //x代表定时器序号由自己需要配置。
{undefined
TMOD=0X--; //模式配置
THx=0X--;
TLx=0X--; //预置数配置
EA=1; //中断总开关
ETx=1; //定时器中断使能
TRx=1; //启动定时器
}
Void name() interrupt 中断号 using n
{undefined
中断服务;
}
Name可自定义,但是新手建议使用中断名进行命名,防止记混中断号造成编写错误,中断号分别为:INT0-0 T0-1 INT1-2 T1-3,using n 是指定工作寄存器区域用的,省略及默认分配,新手可省略。
05
定时器相关寄存器的介绍
TMOD (89H)
从低位开始
BIT0-1(低两位)为T0模式选择00方式零01方式一以此类推。
BIT2-c/t T0的定时器/计数器方式选择,主要是选择输入计数源是内部时钟还是外部引脚输入的信号。
BIT3 T0的GATE位,控制计数是仅由TRx控制还是和INTx有关,换句话说是否多一个外部开关。
BIT4-7 和BIT0-3一样不过控制是T1的。
TMOD
THx和TLx
为计数的自加8位寄存器,初始化时可进行提前预置数,控制计数次数,在模式二中高位存储着自动装载的值,低位进行计数,记满后高8位的值赋给低8位,方式三时T0分为两个计数器,低8位由TR0控制可设置GATE,高8位由TR1控制,没有GATE。
—— E N D ——
上一篇:C51单片机学习思维导图
下一篇:51教程(3)-I/O控制代码分析
推荐阅读最新更新时间:2024-11-09 13:32
推荐帖子
- STM32的功耗可以在哪个手册里看到呢?
- RTSTM32的功耗可以在哪个手册里看到呢?在对应的芯片的数据手册中可以查得到。芯片手册里面肯定是会有的
- chokee stm32/stm8
- 如果大家在提交方案中遇到问题,请随时与我联系~~~
- 昨天有朋友反映,有个别情况提交方案不成功,如果遇到类似论坛使用中的问题,请通过站内短消息或者QQ:1206973913与我联系。如果大家在提交方案中遇到问题,请随时与我联系~~~
- soso 模拟电子
- IAR Workbench4.11B注册机
- 呵呵,使用MSP430的朋友们注意了,IAR的最新版4.11B有了注册机了。可以摆脱一月使用的限制了,放心的使用吧!!!!!IARWorkbench4.11B注册机是不是真的啊?looklooklook还有点不好找!
- yuxitianya 单片机
- 【RISC-V MCU CH32V103测评】 ---前进的维子---RTC
- 【RISC-VMCUCH32V103测评】---前进的维子---RTC前进的维子2021年2月1日前言:本文是维子在EEWORLD上对ch32v103测评的第九篇文章。本文主要讲解手册中RTC的基础知识。并走读例程代码。首先RTC归根到底也是定时器的一种。系统滴答定时器、看门狗定时器、RTC都是定时器。是定时器就有输入的时钟源。有输入就有比较和输
- wintonson 国产芯片交流
- PCB 布线设计
- 这是关于PCB布线设计的参考资料,有无地平面时电流回路的设计策略,以及对双面板元件布局的建议。https://download.eeworld.com.cn/download/seekerz/551752PCB布线设计谢谢谢谢谢谢非常感谢谢谢
- 快羊加鞭 下载中心专版
- 测评汇总:《动手学深度学习(PyTorch版)》,配套视频、源码等
- 活动详情:【《动手学深度学习(PyTorch版)》,配套视频、源码等】更新至2024-11-06测评报告汇总:@xinmeng_wit《动手学深度学习(PyTorch版)》6、现代卷积神经网络《动手学深度学习(PyTorch版)》5、卷积神经网络《动手学深度学习(PyTorch版)》4、深度学习计算《动手学深度学习(PyTorch版)》3、多层感知机《动手学深度学习(PyTorch版)》2、线性神经网络《动手学深度学习(PyTorch版)》1、预备知识
- EEWORLD社区 测评中心专版
设计资源 培训 开发板 精华推荐
- SU-03T-spk-mini
- SC18IS604-EVB: SPI转I2C桥接评估板 new
- DC426B,使用 LT5511EFE 950MHz 输出高信号电平上变频混频器的演示板
- 使用 Infineon Technologies AG 的 OMR7815NH 的参考设计
- LT8630IFE 低 EMI 高降压比 1.8V/5A 转换器的典型应用电路
- MAP9001,使用 MAP9001 无闪烁高压交流 LED 驱动器的典型应用电路(符合能源之星)
- LTM4604A 的典型应用 - 具有跟踪功能的低电压、4A DC/DC 模块稳压器
- esp8266简易测试
- RDR-355 - 6W 非可调光、非隔离降压 LED 驱动器,用于 GU10 灯泡
- 【立创开发板】骆小白专属梁山派游戏机