[DSP编程] CAN通讯的问题

[复制链接]
1856|6
 楼主| wangch_sh 发表于 2013-11-21 16:59 | 显示全部楼层 |阅读模式
我用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++;
这里值加一。但收到的值不变。请高手指教,谢谢!
 楼主| wangch_sh 发表于 2013-11-21 18:01 | 显示全部楼层
解决了。。。。。。。。
zhangmangui 发表于 2013-11-21 23:54 | 显示全部楼层
wangch_sh 发表于 2013-11-21 18:01
解决了。。。。。。。。

求详细解释  分享   谢谢啦
 楼主| wangch_sh 发表于 2013-11-22 08:19 | 显示全部楼层
ECanaRegs.CANMC.bit.MBNR=3;
                        ECanaRegs.CANMC.bit.CDR=1;
       
                        ECanaMboxes.MBOX3.MDH.all = TestMbox2;
                        ECanaRegs.CANMC.bit.CDR=0;
需要设置CDR

评分

参与人数 1威望 +4 收起 理由
zhangmangui + 4 赞一个!

查看全部评分

耶稣欠筹了 发表于 2014-2-8 17:40 | 显示全部楼层
楼主,能分享一下通信程序吗?我一直调不同CAN通信!邮箱:592876981@qq.com
zhangmangui 发表于 2014-2-9 22:54 | 显示全部楼层
耶稣欠筹了 发表于 2014-2-8 17:40
楼主,能分享一下通信程序吗?我一直调不同CAN通信!邮箱:

@wangch_sh   帮忙解决一下
 楼主| wangch_sh 发表于 2014-2-10 08:20 | 显示全部楼层
他加我好友了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:为江山踏坏了乌骓马,为社稷拉断了宝雕弓。

318

主题

2817

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部