首先是定时器
定时器/计数器
定时器很重要,单片机的心脏
首先几个概念
时钟频率:fosc(晶振提供,51一般是12Mhz,11.0592Mhz这两种)
12分频:fosc/12(这里我设为fT)
机器周期:T=1/fT
定时器就配置两种,
第一是工作模式:定时器/计数器
第二是四种工作方式
然后是两个寄存器
TMOD&TCON
工作方式寄存器和控制寄存器
工作方式寄存器TMOD
(1)GATE——门控位
GATE=0时,仅由控制位TRX(X=0,1)来启动定时器/计数器运行。
GATE=1时,由TRX(X=0,1)和中断引脚(INT0和INT1)上的高电平共同来启动定时器/计数器运行。
(2)M0、M1——工作方式选择位
M0、M1共有四种编码,对应于4种工作方式。对应关系
M1 M0 工作方式
0 0 方式0,为13位定时器/计数器
0 1 方式1,为16位定时器/计数器
1 0 方式2,8位初值自动重新装入的8位定时器/计数器
1 1 方式3,仅适用于T0,分为两个8位计数器,T1停止计数
(3)C/T——计数器模式和定时器模式选择位
C/T=0,为定时器模式
C/T=1,为计数器模式,计数器对外部输入引脚T0(P3.4脚)或T1(P3.5脚)的外部脉冲(负跳变)计数。
定时器/计数器控制寄存器TCON
TCON的字节地址为88H,可进行位寻址,位地址为88H~8FH。
低四位和中断有关,高四位
(1)TF0,TF1——T0,T1计数溢出标志位
当计数器计数溢出时,该位置“1”。使用查询方式时,此位作为状态位供CPU查询,但应当注意在查询该位有效后应当以软件方法及时将该位清0.使用中断方式时,此位作为中断申请标志位,进入中断服务程序后由硬件自动清0.
(2)TR0,TR1——计数运行控制位
TR1位(或TR0位)=1,启动定时器/计数器工作的必要条件,还与GATE位有关。
TR1位(或TR0位)=0,关闭定时器/计数器工作。
关于几个工作方式的初值计算
第一个工作方式是一个13位的定时器
它的最大值是213=81922
13
=8192
初值计算就是
比如要定时1ms
1ms是时间,对应的就是单片机走多少步
首先计算出一步是多少时间,就是机器周期12/fosc
就可以算出一共是fosc/(12*1000)步
用定时器的最大值减去这个步数就是定时器初值
第二个工作方式同理
第三个是自动重装载,它高位和低位寄存器的值都是一样的
上一篇:C51通用串口收发数据C语言程序
下一篇:单片机控制步进电机,LCD1602显示
设计资源 培训 开发板 精华推荐
- 仪器模拟放大
- SY56017R,用于 GB 以太网交换机的时钟多路复用器的评估板
- LTC2635-LMX12 四通道、12 位数模转换器的典型应用
- 用于处理器电源管理的 1.150 至 1.179V、1.213 至 1.235V DC 至 DC 多输出电源
- LTC4309 的典型应用 - 具有停滞总线恢复功能的电平转换低偏移热插拔 2 线总线缓冲器
- NCP512SQ18T2G 80 mA、1.8 输出电压 CMOS 低压稳压器的典型应用
- LTC2945IUD 在 -48V 系统中进行电源监控的典型应用,该系统使用外部线性稳压器为光耦合器和 SCL/SDA 电阻上拉供电
- RGB 20键 数字小键盘
- MC33072ADR2G 单位增益缓冲器 TTL 驱动器的典型应用
- 实验原理图1-1811571106