02-接收函数.c
来自「CAN现场总线.rar」· C语言 代码 · 共 34 行
C
34 行
#include "reg52.h"
#include "sja1000.h"
unsigned char RXD_Buffer[13];
void CAN_RXD(void)
{
unsigned char temp;
temp = IR;
if( temp & 0x01) //判断是否接收中断
{
RXD_Buffer[0]=RBSR0; //读取RXFIFO
RXD_Buffer[1]=RBSR1;
RXD_Buffer[2]=RBSR2;
RXD_Buffer[3]=RBSR3;
RXD_Buffer[4]=RBSR4;
RXD_Buffer[5]=RBSR5;
RXD_Buffer[6]=RBSR6;
RXD_Buffer[7]=RBSR7;
RXD_Buffer[8]=RBSR8;
RXD_Buffer[9]=RBSR9;
RXD_Buffer[10]=RBSR10;
RXD_Buffer[11]=RBSR11;
RXD_Buffer[12]=RBSR12;
CMR = 0X04; //释放RXFIFO中的空间
temp = ALC; //释放仲裁随时捕捉寄存器
temp = ECC; //释放错误代码捕捉寄存器
}
IER = 0x01;// .0=1--接收中断使能;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?