winnie 发表于 2009-3-31 13:43:22

看看这个程序

#include   <pic.h>

main()
{
T0CS=0;       //设置定时器
T0IF=0;
T0IE=1;
TMR0H=0x00;
TMR0L=0xa6;
//ei();
T0CON=0x00;
TRISB=0XCC;      
while(1)         
   {
      
do{;} while(!TOIF);   //等定时器溢出

PORTB=~PORTB;   //取反
}
}

用16F84A,目的是等定时器溢出就取反,让RB口的LED闪烁.
可我这样做编译通不过.主要是不知如何用C来设定定时器

winnie 发表于 2009-3-31 13:43:32

unsigned char count;

main()
{
T0CS=0;       //设置定时器
T0IF=0;
T0IE=1;
OPTION=7;//定时器0分频256
TMR0=0;
TRISB=0XCC;      
while(1)         
   {

if(T0IF)假如TMR0溢出

{

TOIF=0;一定要清掉中断标志

count++;

}
   if(count>=8)

{
    count=0;
   PORTB=~PORTB;   //取反大概每半秒闪一下(当4MHz时)

}

}
}
页: [1]
查看完整版本: 看看这个程序