|
发表于 2015-4-24 19:58:44
|
显示全部楼层
我当然确定。CAN总线仲裁的原理就是TX在发送数据的时候RX会同时监听,如果监听到数据和TX的数据不一样,说明CAN_H,CAN_L总线上面有冲突电平。所以直接将RX接到TX脚上面,TX在发送的时候RX会接收到TX的数据,C2000内部的CAN控制器就会认为是正常发送出去了。
很多新手刚接触CAN,调试代码的时候因为CAN的这种机制,会对新手调试造成困难。因为往往需要至少两台设备才能正常发送。但是新手往往一台设备还没调通,所以两台一起调就会感觉困难。难以判断到底是哪方面的问题。
其实发送方代码是正确的,只是没有接收方。看不到发送的电平,会误以为发送方问题。其实只要短路TX,RX,然后将逻辑分析仪连接到TX或RX任意一脚就可以看到波形了。
我在调试代码的时候经常就是先确定发送方到底是否真正发出了波形。然后再调试接受端。
CAN收发器都可以不用。直接短路单片机的RX和TX就可以了。
另外感觉用逻辑分析仪看CAN波形,调试,感觉比调试什么其他IIC波形都爽。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|