T2定时器应用
来源:互联网 发布:淘宝店铺信誉怎么看 编辑:程序博客网 时间:2024/05/17 02:25
定时器T2有三种工作模式,其中MODE 2为波特率发生器。
1、Mode 2:波特率发生器
串口方式1和3的波特率计算如下:
波特率bps=振荡器频率freq/[32*(65536-(RCAP2H, RCAP2L))]
则:RCAP2=65536-(freq/32/bps)
如果freq=11.0592MHZ,bps=9600,则:RCAP2 = 65500
RCAP2H = 255;RCAP2L = 220
此时的程序设置如下:
uint a, bps = 96; // 9600 bps
SCON |= 0x50; // 0101 0000 串口方式1,允许接收
a=3456/bps; a=~a;
RCAP2H = a/256; RCAP2L = a; T2MOD=0x00;
// T2CON = 0 0 1 1 0 1 0 0 = 0x34
// TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2
T2CON=0x34; // TF2=0;EXF2=0;RCLK=1;TCLK=1;EXEN2=0;TR2=1;C/T2=0;CP/RL2=0
EA = 1; ES = 1; TI = 1;
2、Mode 0:自动装载16位定时器
// 10000周期定时
#define MSB_reload_value 216 /* msb reload value exemple */
#define LSB_reload_value 240 /* lsb reload value exemple */
T2MOD |= 0x01; T2EX=1;
TH2=MSB_reload_value; // Init msb_value
TL2=LSB_reload_value; // Init lsb_value
RCAP2H=MSB_reload_value; // reload msb_value
RCAP2L=LSB_reload_value; // reload lsb_value
EA=1; // interupt enable
ET2=1; // enable timer2 interrupt
// T2CON = 0 0 0 0 0 1 0 0 = 0x04
// TF2 EXF2 RCLK TCLK EXEN2 TR2 C/T2 CP/RL2
T2CON = 0x04;
- T2定时器应用
- 8052单片机中定时器T2的应用
- T2定时器
- 51单片机定时器T2初始化设置
- 使用内部T2定时器制作时钟
- 外部中断与定时器中断——T2定时器
- 定时器应用
- t2
- t2
- t2
- T2
- t2
- T2
- VC-定时器应用
- 定时器的应用:俄罗斯方块
- J2EE应用:定时器
- 定时器quartz的应用
- 计数器定时器的应用
- SqlServer 和 Oracle 常用数学函数比较
- 如何快速有效地记忆日语单词
- 玩转RAW格——基础篇
- 关于winpcap的一些认识
- Object DataBase--db4o之旅(2)
- T2定时器应用
- 玩转RAW格式——基础篇(二)
- JSP调用Servlet显示图片
- MATLAB的数据显示格式
- JS中找到鼠标点击的坐标
- ACL 模型
- MATLAB的常用的三角函数 计算函数
- PCI设备操作--枚举
- SQL Server中删除重复数据的几个方法