#include
#define uchar unsigned char
#define uint unsigned int
#pragma interrupt_handler timer1:15/*定时器溢出中断向量标号*/
uchar t=0;
void timer1()
{
TCNT1H=(65536-50000)/256;
TCNT1L=(65536-50000)%256;
t++;
if(t==20)
{
t=0;
PORTA=~PORTA;
PORTA|=0xfe;
}
}
void IO_init()
{
DDRA=0xff;
PORTA=0xff;
}
void T1_init()
{
TCNT1H=(65536-50000)/256;//50ms溢出中断
TCNT1L=(65536-50000)%256;
TCCR1B=0x02;//8分频,8MHz晶振,1us
TIMSK=0x04;
SREG=0x80;
}
main()
{
IO_init();
T1_init();
while(1)
{
;
}
}
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』