[51单片机] MCP2515的问题

[复制链接]
2037|7
 楼主| JY-DX-JY 发表于 2015-1-17 10:17 | 显示全部楼层 |阅读模式
我用CAN芯片MCP2515来搞CAN通信。
用51的程序移植到DSP5509上,不成功。
现在读写寄存器都对,发送数据时卡住了。
/*****************************CAN发送**********************/
void CAN_send(unsigned char dat[])
{
mcp2515_setRegisterS(MCP_TXB0CTRL+6,dat,5);      //发送数据
mcp2515_setRegister(MCP_TXB0CTRL+5,5);          //设置发送的为5个字节
mcp2515_write_can_id(MCP_TXB0SIDH,0,0x00);       //写入ID
mcp2515_ModifyRegister(MCP_TXB0CTRL,0x0B,0x0B);  //报文发送请求位,最高的报文发送优先级
do                //MCU 将此位置1 以请求报文发送-报文发送后该位自动清零
{
  res = mcp2515_ReadRegister(MCP_TXB0CTRL);
  res = res & 0x08;
}while(res);                                    //等待报文发送完毕
}
卡在//等待报文发送完毕
这个地方。请高手指教,如何解决?谢谢!
 楼主| JY-DX-JY 发表于 2015-1-17 11:45 | 显示全部楼层
高手支招啊!
 楼主| JY-DX-JY 发表于 2015-1-17 14:34 | 显示全部楼层
没人知道吗?
 楼主| JY-DX-JY 发表于 2015-1-17 17:14 | 显示全部楼层
解决啦。
dianyuan 发表于 2015-1-20 09:03 | 显示全部楼层
解决了提供下原因说明
 楼主| JY-DX-JY 发表于 2015-1-20 10:24 | 显示全部楼层
和接收的连起来就好啦!
钉子锤子 发表于 2019-8-21 11:12 | 显示全部楼层
该控制器支持无线控制吗,使用wife或者蓝牙
airwill 发表于 2019-8-25 09:09 | 显示全部楼层
我怀疑是编译器问题,  数据长度的问题可能性最大
此外是控制时序问题, 编译器的优化可能打乱了时序,  处理器速度太快导致来不及响应收发数据
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:晴天响霹雳,平地一声雷。

245

主题

3351

帖子

30

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