你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

两个stm32进行spi通信的一些问题

[复制链接]
赵怡彬 提问时间:2016-12-27 21:24 /
上一个贴用while不停地循环没有效果,于是这次换了个方式,可以显示了,只是什么会出现数据丢失的情况,明明我发了10个只收到了3个。图一和图二时主机的主函数和配置。图三和图四时从机的主函数和配置。不知道是我usart的原因还是spi配置的原因还是我main里发送和接受方式的原因。理论上应该是不usart的原因因为我单独测试串口是没问题的。还有我rcc使能是在rcc配置里的,没有写出来。求大神帮忙看看
1.png 2.png 3.png 4.png 5.png

收藏 2 评论6 发布时间:2016-12-27 21:24

举报

6个回答
赵怡彬 回答时间:2016-12-27 21:38:33
已经解决了。从机接收main里改成:
        for(i=0;i<10;i++)
        {
                while(SPI_I2S_GetFlagStatus(SPI1,SPI_I2S_FLAG_RXNE)==RESET);
                Buffer[i]= SPI_I2S_ReceiveData(SPI1);
        }       
        for(j=0;j<10;j++)
        {
                while(USART_GetFlagStatus( USART1,  USART_FLAG_TC)==RESET);
                USART_SendData(USART1,Buffer[j]);
        }
这样就行了。我把工程放在一个新帖里大家也可以一起学习一下。
andypanfan 回答时间:2016-12-28 08:52:47
:lol:lol:lol:lol
leo121_3006061 回答时间:2016-12-28 12:09:07
黑皮男 回答时间:2016-12-28 12:50:33
确实,串口发送会暂用比较长的时间
jackten 回答时间:2016-12-28 15:44:25
过来学习学习                  
五哥1 回答时间:2016-12-28 19:16:32
谢谢分享

所属标签

相似问题

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版