两个stm32进行spi通信的一些问题
上一个贴用while不停地循环没有效果,于是这次换了个方式,可以显示了,只是什么会出现数据丢失的情况,明明我发了10个只收到了3个。图一和图二时主机的主函数和配置。图三和图四时从机的主函数和配置。不知道是我usart的原因还是spi配置的原因还是我main里发送和接受方式的原因。理论上应该是不usart的原因因为我单独测试串口是没问题的。还有我rcc使能是在rcc配置里的,没有写出来。求大神帮忙看看已经解决了。从机接收main里改成:
for(i=0;i<10;i++)
{
while(SPI_I2S_GetFlagStatus(SPI1,SPI_I2S_FLAG_RXNE)==RESET);
Buffer= SPI_I2S_ReceiveData(SPI1);
}
for(j=0;j<10;j++)
{
while(USART_GetFlagStatus( USART1,USART_FLAG_TC)==RESET);
USART_SendData(USART1,Buffer);
}
这样就行了。我把工程放在一个新帖里大家也可以一起学习一下。 :lol:lol:lol:lol:lol:lol:lol:lol:lol:lol:lol:lol:lol:lol :lol:lol:lol:lol 确实,串口发送会暂用比较长的时间 过来学习学习 谢谢分享
页:
[1]