对预分频器不解(附带程序)!

2020-02-09 09:18发布

用PIC10F200单片机进行计时时,发现预分频器1:256时的定时比1:1的定时还短,很疑惑:

#include<pic.h>
unsigned int g_ACC=0; // ACC是累加器Accumulator缩写
unsigned char g_MS10CNT=0; // 记录累计10毫秒的次数
unsigned int g_Minute=0,g_Second=0;
unsigned int tt=0;
void main(void)
{
          unsigned char i;
        TRIS = 0x00;     //GP2,GP0,GP1设置为输出
        GPIO = 0xff;     //IO口输出为低电平
        OSCCAL = 0x00;   //校准值
        OPTION = 0x80;   //预分频器给定时器,1:1???????(如果OPTION = 0x87; 预分频期为1:256,GP0反而变化快了)
      TMR0=0; // Timer0计数值寄存器清零  
  while(1)
  {
    if(TMR0==255) // 说明定时时间到了
    {
      GP0=!GP0;
    }//if(TMR0==255)
  }//while
}//main
0条回答

一周热门 更多>