新手上路
- 积分
- 43
- 金钱
- 43
- 注册时间
- 2016-8-26
- 在线时间
- 9 小时
|

楼主 |
发表于 2017-8-3 14:00:38
|
显示全部楼层
原程序在F103上有一个发送1字节函数:
void SPI1_Send_Byte(unsigned char dat)
{
while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET){}
SPI_I2S_SendData(SPI1, TxData);
}
现改为像原子哥的读写形式就能ping通了,如下所示:但在F103上就可以正常运行,为什么在F407就不可以呢?这点还是不明白:
u16 SPI1_Send_Byte(unsigned char dat)
{
while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_TXE) == RESET){}
SPI_I2S_SendData(SPI1, TxData);
while (SPI_I2S_GetFlagStatus(SPI1, SPI_I2S_FLAG_RXNE) == RESET){;}
return SPI_I2S_ReceiveData(SPI1);
}
|
|