[STM32F1]

can总线调试问题

[复制链接]
1428|4
手机看帖
扫描二维码
随时随地手机跟帖
FAQ|  楼主 | 2014-10-7 21:40 | 显示全部楼层 |阅读模式
调试过程中我主要通过逻辑分析仪来观测,要想观测到CAN总线波形好像有些条件。


我让STM32工作在不间断发送数据帧状态。

1,回环(LoopBack)模式下有无收发器芯片均可以在TX脚上看到帧波形。
2,正常(Normal)模式下,必须焊接上收发器芯片才可以在TX脚上观测到帧波形,如果没有收发器芯片则看不到波形。



以上所提到的波形均是指STM32 CAN_TX脚波形。并非CAN_H和CAN_L之间的差分波形。



请问为什么在        正常(Normal)模式下,必须焊接上收发器芯片才可以在TX脚上观测到帧波形?
FAQ|  楼主 | 2014-10-7 22:05 | 显示全部楼层
本帖最后由 FAQ 于 2014-10-7 22:12 编辑

进一步测试了下,发现,正常(Normal)模式下,将TX和RX脚短接。即可在TX脚上看到TX波形。也就是说即使是发送数据(并非接受数据)时,STM32也会通过自身的RX接收脚读取监控发送的波形。只有读到的数据和发送的数据一致时才认为发送成功。

以上是我个人实际测试得到的结论,另外看一些其他资料好像也有提到过这个情况。不知道我的理解对不对。



另外发现一个问题,逻辑分析仪的供电电源地好像必须和STM32的地共地才能观测到CAN_TX的波形。
而且CAN_H,CAN_L两根线上的波形逻辑分析仪不能正常观测到。这个我认为是逻辑分析仪的参考地和CAN的参考地不一致以及逻辑分析仪对于高低电平的识别有差别导致。不知道我的理解对不对。明天我上示波器看下验证下就知道了。

使用特权

评论回复
icecut| | 2014-10-7 22:17 | 显示全部楼层
1.正常模式不接phy属于山寨测试。自己坑自己的事情。没必要解释。
2.共地是测量仪器的基本要求。高端设备使用查分探头可以不用共地。

使用特权

评论回复
FAQ|  楼主 | 2014-10-8 13:17 | 显示全部楼层
icecut 发表于 2014-10-7 22:17
1.正常模式不接phy属于山寨测试。自己坑自己的事情。没必要解释。
2.共地是测量仪器的基本要求。高端设备使 ...

1,这个叫我看来不叫自己坑自己,这个是一种测试手段。今天我实测过了,没有PHY,直接把CAN_TX ,CAN_RX短接就可以看到波形了(如果不短接,RX收不到TX的数据就认为发送失败了,就不会再发送了)。

通过这个就可以排除是不是PHY的问题了。比如有时候PHY出现了问题,这个就可以排除下了。



2,
另外发现一个问题,逻辑分析仪的供电电源地好像必须和STM32的地共地才能观测到CAN_TX的波形。
而且CAN_H,CAN_L两根线上的波形逻辑分析仪不能正常观测到。这个我认为是逻辑分析仪的参考地和CAN的参考地不一致以及逻辑分析仪对于高低电平的识别有差别导致。不知道我的理解对不对。明天我上示波器看下验证下就知道了。


今天我用示波器实际测试了下。示波器是可以正常观测到波形的。证实了我的想法。

使用特权

评论回复
icecut| | 2014-10-9 11:43 | 显示全部楼层
FAQ 发表于 2014-10-8 13:17
1,这个叫我看来不叫自己坑自己,这个是一种测试手段。今天我实测过了,没有PHY,直接把CAN_TX ,CAN_RX短 ...

第一条如果你理解can协议的冲突避免算法,就知道这个问题不用问。
第二条,电源行业都是悬空地测量。但是的确非常不规范。严格不推荐。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

FAQ

227

主题

2029

帖子

9

粉丝