[STM32F1] SPI通信不稳定

[复制链接]
2942|7
 楼主| weizhiqiang 发表于 2015-1-9 09:52 | 显示全部楼层 |阅读模式
    我的两个stm32f103使用SPI相互通信,一个初始化为主机,一个初始化为从机,然后主机给从机发送数据。同时上电可以正常发送,但是问题是我重启主机,从机数据就错误了,主机发送的波形正确,这时重启主机数据就对了,我这里说到的数据错误是说在中断中第一次接收到的数据,打断点看的 没有任何处理,请问有没有见过这种问题,急啊
airwill 发表于 2015-1-9 11:23 | 显示全部楼层
如果没有处理好 NSS 信号, 那么这样操作必定会导致错误.
 楼主| weizhiqiang 发表于 2015-1-9 13:52 | 显示全部楼层
airwill 发表于 2015-1-9 11:23
如果没有处理好 NSS 信号, 那么这样操作必定会导致错误.

那请问下我初始化的是软件处理NSS,可以吗?我需要怎么做?
kalyking_chi 发表于 2015-1-9 14:47 | 显示全部楼层
1,从站的NSS肯定交由从站做;主站的NSS外部接一个上拉电阻,以防在没有主站控制下悬空触发有效标志。
2,对于SPI的debug,我不知道是不是真是STM有问题,反正我用Jlink来debug的时候,是无**常对SPI的寄存器以及中断和数据进行正常查看,估计有的是只写或者读一次也有影响的寄存器的问题。
airwill 发表于 2015-1-9 15:45 | 显示全部楼层
1. 从站的 NSS 严格受主机的NSS 控制, 数据收发完成后, NSS 必须立即释放到高电平.
2. 你的理解是正确的. 但除了只写或者读一次也有影响的寄存器外, 其他的肯定没有问题.

评分

参与人数 1威望 +1 收起 理由
weizhiqiang + 1 给力

查看全部评分

 楼主| weizhiqiang 发表于 2015-1-9 16:08 | 显示全部楼层
airwill 发表于 2015-1-9 15:45
1. 从站的 NSS 严格受主机的NSS 控制, 数据收发完成后, NSS 必须立即释放到高电平.
2. 你的理解是正确的.  ...

恩 我把内SSI位拉高再拉低就好了  。。太给力了
icecut 发表于 2015-1-9 21:03 | 显示全部楼层
zh113214 发表于 2015-1-10 23:17 | 显示全部楼层
kalyking_chi 发表于 2015-1-9 14:47
1,从站的NSS肯定交由从站做;主站的NSS外部接一个上拉电阻,以防在没有主站控制下悬空触发有效标志。
2, ...

厉害!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

4

帖子

0

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