|
测试了回环模式,可以正常工作,在Tx上可以看到波形。换成正常模式,DEBUG的时候可以看见等待数据发送完成的while循环跳出来了,说明数据发送成功了,但是can_Tx引脚没有波形?这是为什么啊,有大佬知道吗? TxMailbox=CAN_Transmit(CAN1,&TXmessage);//发送,返回的是当前邮箱号 while(CAN_TransmitStatus(CAN1,TxMailbox) !=CANTXOK);//等待发送完成 |
数据不一定是发送成功了。可以看一下发送错误计数器。正常是CAN开始发送数据的时候,需要收发器给反馈ACK。如果没有ACK的情况后面的波形是发不出来的。因此,需要在CAN总线上连接一个接收器来给CAN组成网络,CANH和CANL要加一个120欧姆的电阻,CAN是差分信号进行通讯的。自测模式下,是CAN自己处理了CAN网络,因此发送和接收都是正常的。
CAN总线有没有连接转换芯片?外部是否有CAN工具接入到CAN总线接收数据。我这里没有同类型的板子帮忙测试。只能从日常使用的一些理论情况进行分析。
CAN总线有没有连接转换芯片?外部是否有CAN工具接入到CAN总线接收数据。我这里没有同类型的板子帮忙测 ...
[md]板子上用的SN65HVD232收发器,回环模式下CAN_Tx有输出,但是和收发器连接的总线上没有信号 我也有点怀疑收发器有问题,但是这会影响单片机的引脚电平吗 在正常模式下发送数据单片机的CAN_Tx引脚没有输出 但是程序监控里面又显示数据发出去了。。。
数据不一定是发送成功了。可以看一下发送错误计数器。正常是CAN开始发送数据的时候,需要收发器给反馈A ...
[md]感谢大佬 如果真是你说的那样必须要收发器正常才能发数据 那我可能找到问题了 明天试试