51单片机定时器1方式2怎么设置为什么TMOD=0x20(是怎么换算得) 定时器0方式2TMOD又是多少?

如题所述

1、首先第一步是定时器2是新增资源,也是51单片机定时器里面功能最强大的一个定时器。注意的是掌握好定时器2还是非常有必要的。

2、然后就是定时器2是一个16位定时器/计数器,注意的是通过设置特殊功能寄存器T2CON中的C/T2位可将其设置为定时器或是计数器。

3、接着就是通过设置T2CON中的工作模式选择位可将定时器2设置为三种工作模式,接着就是分别为捕获、自动重新装载和波特率发生器即可。

4、然后击亅F2:定时器2溢出标志位。这时候要注意用于请求中断(必须由软件清0)。

5、最后就是EXF2:定时器外部标志位。当外部信号使能时,接着就是发生外部负跳变时置位请求中断(必须由软件清0)。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-11
TMOD=0x20这样的语言并不是汇编语言,是C语言
0x20是16进制转换成8位2进制是 0010 0000

TMOD 中 M0 和M1位控制方式的选择,所以 M0=0,M1=1是选择方式2的。

如果是定时器0 方式2

TMOD=0x02 设置定时器0的 即0000 0010本回答被提问者采纳
第2个回答  2010-10-03
特殊功能寄存器TMOD是用于控制和确定定时器/计数器T0、T1的工作模式和工作方式。它的格式如下:

D7 D6 D5 D4 D3 D2 D1 D0
GATE C/T M1 M0 GATE C/T M1 M0 高4 位为定时器T1方式字段 低4 位

为T0方式字段

M0 M1 的 各种高低电平组合可以表示4 种工作方式。当M1=1,M0=0时表示工作方式2
而作为定时器使用时,D6和D2为0
这样,定时器1方式2就是0010 0000 即0x20
定时器0方式2就是0000 0010 即0x02
第3个回答  2010-10-03
TMOD是8位寄存器,高4位用于设置定时器1的模式,低4位用于设置定时器0的模式。
TMOD=0x20表示这是一个2位16进制数,(‘0x??’在C语言中表示16进制数),而1位16进制数可以表示为4位二进制数,即0x20的20表示8位二进制数,其中高位“2”表示的高4位二进制数为0010,即设置的定时器1为工作方式2。如果要设置定时器0为方式2则TMOD=0x02。
第4个回答  2010-10-03
1.0x20是16进制 等于 2进制的 0010000
2.相当于把timer1的TMOD register 赋值为0010000
3.我忘记了Timer0 TMODregister相关的位的定义了。
你可以加入该群一起讨论:122691987