2019-03-25 19:53发布
引用 3 楼 nktailor 的回复: ////////////////////////////////////////////////////////////////////////// // Interrupt routine for project // ////////////////////////////////////////////////////////////////////////// static UCHAR isrSaveFSR; static void interrupt isr(void) { //-0-> isr PROTECT //-1-> watch dog isrSaveFSR = FSR; if(RCIF){ ... RC…
最多设置5个标签!
中断向量表在哪里? 有.gld文件吗, 哪个文件调用你上面的函数?
另外, 确认中断已产生了? 中断配置正确吗? (包括中断优先级, 中断使能等).
如果是电平出发, 中断触发后中断电平怎么处理的? 中断里面清除中断标记了吗?
//////////////////////////////////////////////////////////////////////////
// Interrupt routine for project //
//////////////////////////////////////////////////////////////////////////
static UCHAR isrSaveFSR;
static void interrupt isr(void)
{
//-0-> isr PROTECT //-1-> watch dog
isrSaveFSR = FSR;
if(RCIF){
...
RCIF=0;
}
if(TMR1IF){ //Per 1 millisecond
Tmr1Resetting();
__isrRctmrCounting();
...
(RC0)?(RC0=0):(RC0=1); //check your interrupte function
TMR1IF = 0;
}/**/
...
FSR = isrSaveFSR;
}
In your main()
Add below code:
TMR1IE=1; PEIE=1; GIE=1;
I am using Hitech C
如果打开中断使能,一运行就发现死在中断里了,
16系列的单片机只有一个中断源
运行的时候根本就没有进入static void interrupt isr(void) ;
我仔细查看了一下中断使能,设置是正确的
一周热门 更多>