gcc avr中断编译被忽略
程序如下void instal_timer1(void)//初始timer1
{
TCCR1A=0xa2; //8位相位修正PWM 8000000/(64*2*256)=244.14hz
TCCR1B=0x03; //clk/
TCNT1= 0x00;//计数器初始值为零 从此到ffff为止为一次中断
OCR1A=50; //初值
OCR1B=50; //初值
SREG=0x80;//定义它为0x80 中断才可以工作
}
中断部分
#pragma interruput_handler TIM1_OVF: 6
void TIM1_OVF(void)
{
cli();
c=0;
c++;
if(c==40)//中断频率
{
c=0;
shaomiao();
}
sei();
}
第一次编译提示warning../car.c:160: warning: ignoring #pragma interruput_handler TIM1_OVF
第二次编译就没有warning了····· 这是ICC的写法。WINAVR看开始菜单里的手册写。
页:
[1]