[STM32F1] CAN会不会影响SPI发送数据?

[复制链接]
 楼主| baoshu2006 发表于 2015-10-19 15:05 | 显示全部楼层 |阅读模式
我用SPI发送数据,控制六块级联595,不接CAN的时候,单独接电源,能正常显示数据,但是只要一接CAN,显示的数据就不完整了?大家有没有碰到这样的情况?
jhc8711 发表于 2015-10-19 16:33 | 显示全部楼层
can接受发送打断?影响你spi控制595的时序吧
 楼主| baoshu2006 发表于 2015-10-19 17:13 | 显示全部楼层
jhc8711 发表于 2015-10-19 16:33
can接受发送打断?影响你spi控制595的时序吧

如何判断是不是can接收发送打断了spi的时序呢?spi的发送,是用的IO口模拟spi时序发送的。
mmuuss586 发表于 2015-10-19 20:06 | 显示全部楼层
用示波器看看波形呗;
稳稳の幸福 发表于 2015-10-19 21:36 | 显示全部楼层
接了CAN后,在硬件上是不是有什么影响,这个应该不是软件的问题吧
捉虫天师 发表于 2015-10-19 21:42 | 显示全部楼层
接上后,是不是有什么电磁干扰了?
捉虫天师 发表于 2015-10-19 21:43 | 显示全部楼层
或者影响了SPI的时钟序列。听描述的应该是时序出了一些问题。
airwill 发表于 2015-10-19 23:16 | 显示全部楼层
只要引脚不冲突, 应该是不会影响的。
估计是软件处理不好,can中断消耗了不少时间,影响了 SPI 的连续传输了。
看看,怎么样用好 SPI 的内部缓冲器吧
 楼主| baoshu2006 发表于 2015-10-20 08:24 | 显示全部楼层
稳稳の幸福 发表于 2015-10-19 21:36
接了CAN后,在硬件上是不是有什么影响,这个应该不是软件的问题吧

硬件上有什么影响呢,比如?
 楼主| baoshu2006 发表于 2015-10-20 08:27 | 显示全部楼层
捉虫天师 发表于 2015-10-19 21:42
接上后,是不是有什么电磁干扰了?

怎样看有没有电磁干扰,接上can,数据不完整,但是只要再拔掉can接线,再插上,就完整了,只要断电后,再上电就不完整了,这时候要想完整显示,只能拔掉can接线,再重新插上就ok了
 楼主| baoshu2006 发表于 2015-10-20 08:29 | 显示全部楼层
捉虫天师 发表于 2015-10-19 21:43
或者影响了SPI的时钟序列。听描述的应该是时序出了一些问题。

我也是觉得spi的时序被打断了,只能发送前面的字节,后面的不能发送过去,但是是什么原因呢?
元方义城 发表于 2015-10-20 09:26 | 显示全部楼层
理论上是不影响的,不过任何数据发送都是要时间的,如果你其中有中断且比较频繁。那么发送时序可能就打断了。
hyhmh 发表于 2015-10-20 10:08 | 显示全部楼层
595 的时序只有上限(频率大到一定程度时,响应不了),而没有下限。当然,在维持电平阶段,若控制595的IO引脚出现不确定的电平时,时序就会乱。

看一下,CAN代码使用的RAM、特殊功能寄存器 是否与595用的有什么冲突?
稳稳の幸福 发表于 2015-10-22 20:14 | 显示全部楼层
只要引脚不冲突, 应该是不会影响的。
捉虫天师 发表于 2015-10-22 20:52 | 显示全部楼层
用逻辑分析仪,看看波形
捉虫天师 发表于 2015-10-22 20:54 | 显示全部楼层
关于硬件软件的,都是挺麻烦的,一个地方错误,就可能。
Thor9 发表于 2015-10-23 23:03 | 显示全部楼层
设个标志,分段单步运行下,观察一下程序变化
bsz84 发表于 2015-10-24 08:14 | 显示全部楼层
把SPI时钟调慢,试试看会不会被告打断。
可可球 发表于 2015-10-24 16:47 | 显示全部楼层
can中断消耗了不少时间,影响了 SPI 的连续传输了

这种情况一般怎么处理呢
gejigeji521 发表于 2015-10-24 21:30 来自手机 | 显示全部楼层
避免两者同时出现就行了,每个接口都要等待空闲时间才行
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

17

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部