打印
[STM32F1]

STM32f103RBt6 的 CAN通信问题 请教大家

[复制链接]
2044|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
现在做一个小板子,上面使用CAN作为通信方式,购买了STM32最小系统,外围电路自己开发。
首先描述出现的的问题以及示波器测试的现象。
问题:同一块最小系统,同样的通讯程序,在其他板子上使用CAN分析仪测试,正常收发;但是在下面那块板子上就不能收发。
现象:我首先用示波器测试了PA11和PA12之间的波形,在正常的板子上和下面那块不正常的板子上波形不一样,差别很大,正常情况是有规律的间断的,峰峰值3.3V左右,不正常的情况是连续的波形,而且峰峰值明显大,约在5V,可供电电压才3.3V。
           随后用示波器测试了总线H和L之间的波形,正常的情况有规律,峰峰值约在3V,不正常的时候,没有波形!!!
首先请看下面的原理图,不知道有什么问题。现在有一个问题就是关于原理图中6N137左侧供电的疑惑点,U1的VDD使用的3.3V和STM32使用的3.3V不是同一个电源,只是共地了,这个会不会有影响呢?
希望各位帮帮我。


545454545.jpg (312.8 KB )

原理图

原理图

565656.jpg (383.19 KB )

565656.jpg
沙发
sicau123|  楼主 | 2015-9-15 16:56 | 只看该作者
大神们帮帮忙,哪里没有表达清楚请提出来,我再详细解释。

使用特权

评论回复
板凳
SLHSu37| | 2015-9-15 16:59 | 只看该作者
这么大一底板··浪费了·····
画一起好不好

使用特权

评论回复
地板
sicau123|  楼主 | 2015-9-15 17:03 | 只看该作者
SLHSu37 发表于 2015-9-15 16:59
这么大一底板··浪费了·····
画一起好不好

谢谢提醒。您接触过CAN通信没有呢?

使用特权

评论回复
5
airwill| | 2015-9-15 18:35 | 只看该作者
原理图看了下, 应该没有啥问题, 我看是虚焊了吧.
特别关注 U1 的又半边, U1-6 到 U2-1 以及 U2 的供电情况.

使用特权

评论回复
6
sicau123|  楼主 | 2015-9-16 09:21 | 只看该作者
airwill 发表于 2015-9-15 18:35
原理图看了下, 应该没有啥问题, 我看是虚焊了吧.
特别关注 U1 的又半边, U1-6 到 U2-1 以及 U2 的供电情况 ...

我又测试了下是否虚焊,用万用表测了三次,没问题。又上电测试了下供电情况,也正常。现在出现个问题,就是我直接测PA11(RX)和PA12(TX)之间的波形,峰峰值竟然能到6点几伏,怎么会这样呢。会不会和我的供电有关呢,原理图中6N137 U1的VDD和U3上拉电阻R7使用的3.3V和STM32使用的3.3V不是同一个电源,只是共地了,这个会不会有影响呢?

使用特权

评论回复
7
jiaxinhui| | 2015-9-16 09:50 | 只看该作者
4-20mA模拟量采集(基于STM32 CAN 总线)https://bbs.21ic.com/icview-823024-1-1.html

使用特权

评论回复
8
sicau123|  楼主 | 2015-9-16 11:14 | 只看该作者
最新进展,我把上面所说的供电换了下,光耦左侧3.3V的供电全部和STM32为同一个电源,但结果没有任何变化,求指教。

使用特权

评论回复
9
make8419247| | 2015-9-16 12:25 | 只看该作者
问题应该是U3,你的U3供电的光耦应该和单片机的电源为同一个电源才行,应该是VCC3.3,结果你和82C250的电源为一个电源了,改改应该就好了!

使用特权

评论回复
10
make8419247| | 2015-9-16 12:35 | 只看该作者
如果光耦的地和STM32共地的话,我刚才在楼上说的就不是这个问题了!还有就是R1是不是太大了,你的波特率多少啊?

使用特权

评论回复
11
make8419247| | 2015-9-16 12:38 | 只看该作者
还有就是,其实这类隔离还不如用磁耦,又好画板,体积也小!

使用特权

评论回复
12
sicau123|  楼主 | 2015-9-16 14:48 | 只看该作者
make8419247 发表于 2015-9-16 12:35
如果光耦的地和STM32共地的话,我刚才在楼上说的就不是这个问题了!还有就是R1是不是太大了,你的波特率多 ...

波特率是100K的。现在的情况更加奇葩了。我给你说说,同一块最小系统,同样的程序,同样的收发器、电阻、光耦,同样的原理图,就是PCB布线和布局不一样,一个正常,现在调试的这个就死活不行,TX和RX两管脚之间的波形就不一样,真是郁闷。我准备再仔细看看PCB的区别,:(

使用特权

评论回复
13
make8419247| | 2015-9-16 15:12 | 只看该作者
你换一个82C250试试

使用特权

评论回复
14
sicau123|  楼主 | 2015-9-17 10:33 | 只看该作者
make8419247 发表于 2015-9-16 15:12
你换一个82C250试试

我换过了。还是一样的结果

使用特权

评论回复
15
sicau123|  楼主 | 2015-9-17 10:48 | 只看该作者
最新进展,我用示波器记录下了能正常工作的板子和现在调试的不能正常工作板子的一些管脚处的波形。
下面的图是正常工作情况下STM32F103RBt6的PA11和PA12管脚之间的波形(未连接CAN调试仪),以及连接好调试仪之后CAN总线之间的波形。

我又在现在调试的不能正常工作的板子上做了波形记录,PA11和PA12管脚之间的波形(未连接CAN调试仪)和上图是相同的,但是连接好CAN调试仪器之后,测不到CAN总线之间有波形。。。

使用特权

评论回复
16
sicau123|  楼主 | 2015-9-17 10:58 | 只看该作者

RE: STM32f103RBt6 的 CAN通信问题 请教大家

最新进展,准备把CAN总线观点隔离的部分去掉,直接用STM32的CAN管脚和82C250连接试试,看什么结果。
请教大家看看上面的原理图,能不能这样接。我想尽快试一下。

使用特权

评论回复
17
dingsujie| | 2015-9-17 12:36 | 只看该作者
sicau123 发表于 2015-9-17 10:58
最新进展,准备把CAN总线观点隔离的部分去掉,直接用STM32的CAN管脚和82C250连接试试,看什么结果。
请教大 ...

2脚接地,8脚可以串联一个电阻接地也可以直接接地,D1,D2建议换成TVS。走线注意差分走线

使用特权

评论回复
18
598330983| | 2015-9-17 13:05 | 只看该作者
VCC也接一起试试看。

使用特权

评论回复
19
sicau123|  楼主 | 2015-9-17 17:47 | 只看该作者
最新进展,按照上面的计划进行了调试,换了TVS,发现PA12和PA11处的波形,82C250输入输出的波形和正常的板子测出的波形大致相同,但是,请看下图,对号表示信号正常,叉号表示无波形。
信号在终端电阻R5两端竟然消失了。
R3和R6前端信号还存在,后端(与终端电阻R5连接处)就不见了。。。
把终端电阻拆了之后,在CAN调试仪上设置了两个终端电阻,弥补板子上确实的终端电阻,但是仍然接收不到数据。
我把PCB发出来,大家帮忙看看问题出在哪里。紫色的线就是相关的布线,R3,R5,D1之间绕来绕去,请对照原理图看。麻烦了。


使用特权

评论回复
20
sicau123|  楼主 | 2015-9-18 11:20 | 只看该作者
最新进展,问题解决了。问题出在R3和R6的阻值上,原理图上是5.1欧姆,实际中我使用的是5.1K,导致信号无法传递。谢谢各位的帮助。

使用特权

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

本版积分规则

3

主题

18

帖子

0

粉丝