CAN总线的中断服务函数.pdf

void CAN1_ISR_Handler (void)interrupt CAN1_VECTOR { u8isr; u8store; u8arTemp; arTemp CANAR; /*先进行现场保存,避免主循环里写完CANAR 后产生中断,在中断里修改了CANAR 内容 */ store AUXR2; //在通过AUXR2进行现场保存 AUXR2 ~0x08; //选择CAN1模块 isr CanReadReg(ISR); CANAR ISR; CANDR isr; //写1清除标志位 if((isr 0x04) 0x04) //TI { // CANAR ISR; // CANDR | 0x04; //CLR FLAG B_Can1Send 0; } if((isr 0x08) 0x08) //RI { // CANAR ISR; // CANDR | 0x08; //CLR FL

文档评论(0)

1亿VIP精品文档

相关文档