我用2808和2812做CAN通讯实验,通讯连上了。
我用定时器每秒发送一次,可是我改变邮箱的值,试图改变发送的值,可是收到的值不变。
interrupt void cpu_timer0_isr(void) //每秒中断一次 发送邮箱0数据作为心跳
{
ECanaRegs.CANTRS.bit.TRS3 = 1; //邮箱3发送数据
PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
if(flag==0)
{
flag=1;
GpioDataRegs.GPADAT.bit.GPIO0=1;
}
else
{
flag=0;
GpioDataRegs.GPADAT.bit.GPIO0=0;
}
TestMbox2++;
EALLOW;
ECanaMboxes.MBOX3.MDL.all = TestMbox1;
ECanaMboxes.MBOX3.MDH.all = TestMbox2;
EDIS;
}
TestMbox2++;
这里值加一。但收到的值不变。请高手指教,谢谢! |