这个定时器到底是几秒呀


TMOD = 0X2;
TH0 = 245;
TL0 = 0;

注意tmod

我也来说两句 查看全部回复

最新回复

  • budhy (2008-7-17 00:52:20)

    QUOTE:

    原帖由 tssing 于 2008-7-17 00:43 发表
    TMOD = 0X2;
    TH0 = 245;
    TL0 = 0;

    注意tmod
    要是 MCS51 的工作频率是 12 MHz:这个定时值是 (256-245)= 11 微妙 (uS)
  • guidanghu520 (2008-7-17 09:05:32)

    TMOD是单片机定时器方式控制寄存器
    这8位控制着单片机中的两个定时器/计数器,如下
    GATE C/T M1 M0 GATE C/T M1 M0
    前四位是控制定时器1;后四位是控制定时器0
    现在我就说下定时器1吧,也就是高四位:
    M1 M0:有四种组合,是指工作方式
    C/T:通过设置可以控制它是作定时器用,还是作计数器用
    GATE:门控位。
    要是 MCS51 的工作频率是 6 MHz:这个定时值是 (256-245)= 22微妙 (uS)
  • ybzjllj (2008-7-17 09:15:24)

    错了哦!!!!!!!!!!!!!!!!!

    人家是TH0=245;

    初值为:  245*256+0=62720
    定时值是:65536-62720=2816机器周期/秒

    如果时钟是12M,就是2.816ms溢出一次.
  • budhy (2008-7-17 09:22:51)

    QUOTE:

    原帖由 ybzjllj 于 2008-7-17 09:15 发表
    错了哦!!!!!!!!!!!!!!!!!

    人家是TH0=245;

    初值为:  245*256+0=62720
    定时值是:65536-62720=2816机器周期/秒

    如果时钟是12M,就是2.816ms溢出一次.
    楼主早已说过,注意 TMOD = 2!
    TMOD=2 时,T0 的定时值的只靠 TH0  值!不是 256*TH0 + TL0
  • ybzjllj (2008-7-17 09:35:06)

    对不起我看错了.我以为是方式1

    [ 本帖最后由 ybzjllj 于 2008-7-17 09:36 编辑 ]
  • tssing (2008-7-18 08:37:22)

    很好,,谢谢很好,,谢谢很好,,谢谢很好,,谢谢很好,,谢谢很好,,谢谢很好,,谢谢很好,,谢谢