C51用11.0592MHZ的晶振。采用定时器T1,方式2怎么定时0.5S和1S。
这个初值是怎么计算的。TH1,TL1都要怎么计算。
求详细过程。(汇编)
------最佳解决方案--------------------
可以有很多种方法,查询和中断都行,直接查询时间到这种应该比较难,就先设置20ms然后时间到对变量如flag加1等到flag值为50就是一秒了
------其他解决方案--------------------
1秒貌似定不出 定小点 多次就是1秒了
------其他解决方案--------------------
这个是回炉看书的问题
------其他解决方案--------------------
选择定时器的定时时间能将500毫秒整除,例如500毫秒是定时时间的K倍;
在定时器里,对每次定时器中断计数,次数到达K时,就是0.5秒.
------其他解决方案--------------------
周期1S
计数器N=定时器周期t/机器周期T
定时器周期t×中断次数n=设定的周期T0
我当时也是学了好半天才懂得,加油
------其他解决方案--------------------
定不了1秒
------其他解决方案--------------------
12MHz
------其他解决方案--------------------
;11.0592MHZ下,C51的T1方式1最多可以定时65536us,
;定时50ms即50000us,须计数65536-50000=15536=0x3CB0,
;这个值即为定时器初值
ORG 0000H
AJMP MAIN
MAIN: MOV R6, #2
MOV R7, #10
MOV TMOD, #10H
LOOP0: MOV TH1, #3CH ;定时50ms
MOV TL1, #B0H
SETB TR1
LOOP1: JBC TF1, DLY500MS
SJMP LOOP1
DLY500MS: DEC R7 ;延时0.5S
DJNZ R7, LOOP0
DLY1000MS: DEC R6 ;延时1S
DJNZ R6, DLY500MS
;分别调用DLY500MS和DLY1000MS即可
------其他解决方案--------------------
那个晶振一次才0.07秒左右呢!!!
------其他解决方案--------------------
555定时器的计算0.5s的方法
------其他解决方案--------------------
先定个1ms,再循环1000次就好了
------其他解决方案--------------------
直接下载工具软件,都给你算好了