打印
[STM32]

stm32f103 如何清除SPI->DR的数据

[复制链接]
2953|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jiaojian|  楼主 | 2018-4-16 14:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
stm32 SPI双机器通讯 如何清除SPI-DR 寄存器的值呢 因为发现如果SCK受到干扰后 则数据都是错的。即使SPI主站 间隔一段时间发送,从站我写了很多句譬如SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Tx, DISABLE);然后再SPI_I2S_DMACmd(SPI2, SPI_I2S_DMAReq_Tx, ENABLE); 。主站多一段时间发的数据 从站由于之前收到的SCK受到干扰 比如少接收2bit 则一直会错位接收到 乱码。不清除从站的SPI-DR解决不了。谢谢

相关帖子

沙发
airwill| | 2018-4-17 07:49 | 只看该作者
这倒是个比较有价值的问题, 往往手册不大给出这个问题的解决办法
CS 能否终止上帧接收的呢,  否则要用初始化的办法了吧
持续关注

使用特权

评论回复
板凳
jimsboy| | 2018-4-18 15:07 | 只看该作者
这个我感觉还是从硬件保证比较有效。
SPI不是那种板间通信信号。在硬件设计合理的条件下,SCK不会丢的。

使用特权

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

本版积分规则

65

主题

196

帖子

0

粉丝