|
请教下比较诡异的问题, 提示 公共段intvec中地址0x3c处的字节有多个定义。它在“定时器”模块和“应用程序”模块中定义。
但是在程序中我明明就只定义了一个中断向量
以前使用 ATmega128A 是没有出现这个问题的,
现在单片机使用 ATmega1281 , 程序移植自 ATmega128A
程序中断向量定义
#pragma vector = TIMER1_OVF_vect //10ms 溢出中断使能,用于按键扫描,蜂鸣器
__interrupt void TIMER1_OVF_vectInterrupt(void)
{
TCNT1H = 0xFD; //定时10ms;256分频 16MHZ 0xFD8F
TCNT1L = 0x8F;
if(InitFlag)
{
BEEP_Poll();
REMOTE_RxOutTime();
bsp_KeyScan();
}
}
// 貌似问题主要就出现在下面的这个中断向量定义,如果把这个 TIMER2_OVF_vect 改成 TIMER4_OVF_vect 或者 TIMER5_OVF_vect 都是没有问题, 我只是不明白为何使用 TIMER2_OVF_vect 不行, 程序中也明明只有 一个 TIMER2_OVF_vect 中断向量定义
// 也还是会出现这个问题 ????????????????????????????
#pragma vector = TIMER2_OVF_vect // 100us 溢出中断使能, 用于调节LCD背光亮度,模拟PWM
__interrupt void TIMER2_OVF_vectInterrupt(void)
{
TCNT2 = 0xE7;
if(InitFlag)
{
.................
}
}
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
阿莫论坛才是最爱国的,关心国家的经济、社会的发展、担心国家被别国牵连卷入战争、知道珍惜来之不易的和平发展,知道师夷之长,关注世界的先进文化与技术,也探讨中国文化的博大精深,也懂得警惕民粹主义的祸国殃民等等等等,无不是爱国忧民的表现。(坛友:tianxian)
|