[AVR单片机] ATMEGA88时钟问题,不知道为什么被8分频了。

[复制链接]
1937|9
 楼主| jrh200310 发表于 2014-9-19 16:31 | 显示全部楼层 |阅读模式
选择的时候钟源不分频,但实际使用时发现频只有原来的8分之1。不知道是哪里有问题。寄存器的配置我是看了好多遍了。没发现有问题,用16M的时钟得到1S的时间。理论上算法是:选择1024分频 得16000000/1024=
15625   但实际测出的值还要再除于8,不知道为什么。

 楼主| jrh200310 发表于 2014-9-19 16:45 | 显示全部楼层
void initt0()
{
  TCCR0B=0X03;
  TIMSK0=0X01;
}


#pragma interrupt_handler int0_isr:17
unsigned char t_temp=0;
void int0_isr()
{
   TCNT0=0X05;
   t_temp++;
   led_g(1);
   if(t_temp==125)//
  {
    t_temp=0;
        sys_miao++;
          if(sys_miao>59)
           {
             sys_miao=0;
                 sys_fen++;
                 if(sys_fen>59)
                   {
                     sys_fen=0;
                     sys_shi++;
                   }   
           }
  }

}
 楼主| jrh200310 发表于 2014-9-19 16:53 | 显示全部楼层
上面两个是关于得到1S的函数,T0  64分频  用的是16M的外部晶振。我用16M的时钟64分频发现怎么算都不准,后来发现用2M的时钟64分钟频就是对的。不明白啊,我外部晶振明明在工作,示波器也是15.997M。可是用就是系统把时钟8分频,而我不短简是在哪里分频的。求大虾帮看看。
qin552011373 发表于 2014-9-19 18:25 | 显示全部楼层
熔丝位配置截图看看?
 楼主| jrh200310 发表于 2014-9-19 21:57 | 显示全部楼层
上编程器界面和熔丝位配置图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
 楼主| jrh200310 发表于 2014-9-20 10:01 | 显示全部楼层
有谁提供一下ATMEGA48,88T0定时器列程参考一下?
 楼主| jrh200310 发表于 2014-9-22 21:03 | 显示全部楼层
这么快沉了。我换了ATMEGA8后是正常的。真是奇怪了。
tarzar 发表于 2014-9-24 13:43 | 显示全部楼层
熔丝CKDIV8不要打钩,就可以了。
箫天 发表于 2014-9-25 15:34 | 显示全部楼层
你这不是选择了8分频吗?
 楼主| jrh200310 发表于 2014-9-28 15:16 | 显示全部楼层
谢谢各位,没注意到.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

25

主题

131

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部