| 
 | 
 
定时器PCLK = 50MHz, 经分频后得62.5KHz, 按理就是62500次计数则为一秒,但在开发板上的led灯的亮灭速度明显更快,约为0.5秒的速度。求高人指点,下面是部分程序 
注:MDIV = 92, PDIV = 4, SDIV = 1 
 
void timer0_init() 
{ 
 rGPBCON &= ~(3<< 0); 
 rGPBCON |= (2<<0); 
  
 rTCFG0 &= ~(0xff); 
 rTCFG0 |= 99; 
 rTCFG1 &= ~(0XF); 
 rTCFG1 |= 0x02; 
  
 rTCNTB0 |= 62500; 
  
 //rTCMPB0 = rTCNTB0/2; 
 //rTCNTO0 
 rTCON |= (1<<1); //开启手动更新位 
 rTCON = 0X09; 
} 
 
int Main() 
{ 
 unsigned int i; 
 int flag = 0; 
 led_init(); 
 for(i = 0; i < 100; i++); 
 timer0_init(); 
 while(1) 
 { 
  if(rSRCPND & (1<<10)) 
  { 
   flag = !flag; 
   rSRCPND |= (1<<10); 
  } 
  if(1 == flag) 
  { 
   led_on(); 
  } 
  else 
  { 
   led_off(); 
  } 
     
  
     
 } 
 return 0; 
} 
 |   
 
 
 
 |