This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
TMS570LS1227 采用TI官网的发送测试程序。程序运行后发送一直不成功。
调用canTransmit(canBASE_t *node, uint32 messageBox, const uint8 * data)函数,success 标志一直为0U
发送程序一直进入未发送消息判断
if ((node->TXRQx[regIndex] & bitIndex) != 0U)
{
success = 0U;
}
请问这是什么原因?,DCAN配置文件如附件。
Xing 你好,
请问你是用的环回模式还是正常发送模式?
1. 如果你使用的环回模式,建议看一下spnu5151b TRM的27.17.6节,如果要进入环回模式,你必须将DCAN TEST寄存器的bit 4(LBack)置1.
2. 如果使用的正常轮询发送模式,检查一下你的硬件连接是否正确,要确保你的接收节点跟TMS570LS1227连接正确,可以使用CAN接口卡进行调试。CAN以时间片形式发送报文,程序是通过轮询TxRqst位判断当前数据是否发送完成,进而发送后面的报文。另外,参考TRM的27.17.19和27.17.24节,检查一下你的IF Mask Registers设置是否正确。如果你用的轮询方式,建议先单步调试一下,看卡在哪一步,再分析具体问题。