打印

请教定时器不准

[复制链接]
2182|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
myhmz|  楼主 | 2007-8-3 08:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用定时器中断,方式2,中断5000次,到1秒,采用11.059MHZ
,为什么和电脑上的时间不准。。慢了。。程序如下:

.....

 void main(void) 
{                 
  unsigned char key; 
  TMOD=0x2;              
  ET0=1;  
  EA=1;   

......


                           
              switch(key) 
                {           
                  case 0x18:  
                    TH0=0x47;  
                    TL0=0x47; 
                    TR0=1;       
                    break;      
    ............               

void t0(void) interrupt 1 using 0 
{            
  tcnt++; 
  if(tcnt==5000) 
    {  
      tcnt=0; 
      second++; 
      if(second==60) 
        {   second=0;
           min++;
           
           if(min==60)
            {  min=0 ;
               hou++;
               if(hou==24)
                 { hou=0;}
                 }
                        
                 }          
      dispbuf[6]=hou/10; 
      dispbuf[5]=hou%10; 
       dispbuf[4]=min/10; 
      dispbuf[3]=min%10;
       dispbuf[2]=second/10; 
      dispbuf[1]=second%10;

    } 
     }

相关帖子

沙发
ayb_ice| | 2007-8-3 10:28 | 只看该作者

压缩中断程序。。。

使用特权

评论回复
板凳
myhmz|  楼主 | 2007-8-3 10:51 | 只看该作者

请高手指点

请高手指点迷津。。谢谢

使用特权

评论回复
地板
ayb_ice| | 2007-8-3 15:19 | 只看该作者

随便说说

每秒中断5000次,周期是500US,标准51只能执行500条单周期指令,加之如果有其它中断,可能定时器溢出多次,但只能执行一次中断,导致不准,中断只做必须的事,必须简练,中断不能太频繁,取10~100MS比较合适,当然也有可能是软件本身的问题...

使用特权

评论回复
5
myhmz|  楼主 | 2007-8-3 15:25 | 只看该作者

我用的是自动装载

我用的是自动装载,如果用方式1,中断中装载,中断次数可以少些,,是不是这个意思

使用特权

评论回复
6
mannerfh| | 2007-8-3 17:10 | 只看该作者

补偿

    对中断的初值进行补偿,补偿的值与中断函数里程序执行的时间有关!

使用特权

评论回复
7
jxb163| | 2007-8-3 19:12 | 只看该作者

TH0=0x47;

改下这里哦

使用特权

评论回复
8
brt11| | 2007-8-3 20:02 | 只看该作者

bgggtt

gdyrujky

使用特权

评论回复
9
brt11| | 2007-8-3 20:06 | 只看该作者

瞎说

这个时间是可以算出来的
我觉得是你中断程序长
使用重装载方式会好

使用特权

评论回复
10
myhmz|  楼主 | 2007-8-6 09:03 | 只看该作者

还是有些不明白

还是有些不明白

使用特权

评论回复
11
ayb_ice| | 2007-8-6 09:15 | 只看该作者

定时器是硬件动作,不可能不准...

所以都是软件问题,或时钟源问题...

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

41

帖子

0

粉丝