英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流

标题: //定时器TIMER0试验,为什么看不见闪烁??? [打印本页]

作者: winnie    时间: 2009-4-18 13:38
标题: //定时器TIMER0试验,为什么看不见闪烁???
//定时器TIMER0试验,F877端口接有发光二极管,低电平有效,为什么看不见闪烁???
//定时器TIMER0试验
//F877端口接有发光二极管,低电平有效,为什么看不见闪烁???
//640Khz晶振
#include<pic.h>
#include<pic1687x.h>
unsigned char count,c1,c2;
void interrupt isr(void)
{
if(T0IF&&T0IE)
{count++;
T0IF=0;

if(count==238)
  {
  count=0;
  c1++;
  if(c1==252)
   {
   c1=0;
   c2++;
   if(c2==245)
    {
    RD0=!RD0;
    }
   }
  }
T0IE=1;
TMR0=1;
}
}
   
main()
{
T0CS=0;//选内部时钟
T0IF=0;
T0IE=1;
OPTION=0x07;//分频比为 1:256
TMR0=1;
GIE=1;
TRISD=0Xfe;
RD1=1;
while(1)
{
;
}
}
作者: winnie    时间: 2009-4-18 13:38
如果用4MHz时钟:

256(TMR0溢出)*256(预分频)*238(COUNT)*252(C1)*245(C2)=

962993848320uS

中断函数内的T0IF=1没必要。




欢迎光临 英锐恩单片机论坛,Microchip单片机,模拟器件,接口电路,麦肯单片机,单片机应用交流 (http://enroobbs.com/) Powered by Discuz! X3.2