#define LED1 PA0
unsigned char compare,count;
void Timer0_Init(void)
{
//1ms
//TMRH = 0X30;
TMR0 = 160; //向上計數 8M 2T 4分頻
T0MD = C_PS0_TMR0 | C_PS0_Div2; //
INTE = C_INT_TMR0;
}
void isr(void) __interrupt(0)
{
if(INTFbits.T0IF)
{
count++;
count %= 100;
if(count<compare)
{
LED1=1;
}
else
{
LED1=0;
}
INTF= (unsigned char)~(C_INT_TMR0); // Clear T0IF flag bit
}
}
void main()
{
while(1)
{
for(int i =0;i<100;i++)
{
compare=i;
}
for(int i=100;i>=0;i--)
{
compare=i;
}
}
}
|