本文将演示DSP28335的CAN通讯,并用示波器验证CAN总线、CAN模块的RX、TX管脚的电压波形。话不多说,直接上代码
Uint32 TestMbox1 = 0;//用来接收mailbox里面的值
Uint32 TestMbox2 = 0;
Uint32 TestMbox3 = 0;
Uint32 TestMbox4 = 0;
Uint32 TestMbox5 = 0;
Uint32 TestMbox6 = 0;
Uint32 received1[20];
Uint32 received2[20];
Uint32 cnt=0;
Uint32 i1=0;
Uint32 j1=0;
interrupt void ECAN1Receiver(void)
{
if(ECanbRegs.CANRMP.bit.RMP25==1){
Mailbox1 = &ECanbMboxes.MBOX0 + 25; //CANB读数据
TestMbox1 = Mailbox1->MDL.all; // = 0x (n is the MBX number)
TestMbox2 = Mailbox1->MDH.all; // = 0x (a constant)
received1[i1]=TestMbox1;
received1[i1+1]=TestMbox2;
i1=i1+2;
TestMbox3 = Mailbox1->MSGID.all;// = 0x (n is the MBX number)
ECanbRegs.CANRMP.bit.RMP25=1;
}
if(ECanbRegs.CANRMP.bit.RMP26==1){
Mailbox2 = &