这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 51的定时器

共1条 1/1 1 跳转至

51的定时器

助工
2014-11-13 19:34:53     打赏

51有2个定时器,T0 T1,向上计数的。
TMOD 的低四位是T0部分,高四位是T1部分
TCON 是控制寄存器,主要控制 TFx 溢出标志,TRX 启动标志,


(三)TIMER0
12MHZ,1us一个机器周期。模式0为13位计数,也就是 2^13 = 8124,所以自由运行的一个周期应该为 
8.124MS,实际测得 8.2MS。


    CLR     TR0
    MOV     TMOD,#0
    SETB    TR0
LOOP:
    JNB     TF0,LOOP
    CLR     TF0
    
    CPL     P1.0
    JMP     LOOP


模式1:
    MOV     TMOD,#1 
其他不变,变为16位定时器,计算的溢出时间为 2^16 = 65535,也就是 65.535ms ,实测为 65.6ms


模式2:
备份的8位定时器,THX 为备份,TLX为计数
MAIN:
    CALL    SYSTEM_INIT
    CLR     TR0
    MOV     TMOD,#2H
    MOV     TH0,#80H
    MOV     TL0,#80H
    SETB    TR0
LOOP:
    JNB     TF0,LOOP
    CLR     TF0
    
    CPL     P1.0
    JMP     LOOP
8位定时器的溢出时间为 256us,自动恢复为 80H 为一半,实际结果符合,为 128us


 


对于T1 只是改了个 T0 就好了


共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]