DSP2812的can发送问题

2019-08-07 20:01发布

  现在我的CAN模块已经实现中断接收,但是发送老是出现问题。有时候成功,有时候发送不成功(接收者是周立功can仿真器,配合电脑使用),或者发送100次(之间有32ms时间差),只成功前4,5次,程序卡在第二行,观察显示ECanaRegs.CANTA.all=0
               ECanaRegs.CANTRS.all = 0x00000001;
                   while(ECanaRegs.CANTA.all == 0);
                   ECanaRegs.CANTA.all = 0x00000001;
我的波特率设置BRP=49,TSEG2 =7; TSEG1 = 14;
其他的波特率也试过(比如49,6,15;  79 ,2,10;  79,4 ,8等),也是有时候好用,有时候无效。
请帮忙看看,我已经调试了好几天了,应该不存在其他低级错误。
这是主程序:(Runcount变量125us加1)
for(;;)
         {
              If(runcount & 0x000000ff) ==5)
                   {
ECanaRegs.CANTRS.all = 0x00000001;
                   while(ECanaRegs.CANTA.all == 0);         //卡在这里
                   ECanaRegs.CANTA.all = 0x00000001;
Runcount++;      
                   }
                  
         }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
meishizhaoshi
1楼-- · 2019-08-07 21:16
求助各位了
zhangmangui
2楼-- · 2019-08-08 03:05
确认一下时钟是否使能正常

一周热门 更多>