FLASH例程中,读数据为什么要先发送一个Dummy_Byte

[复制链接]
884|1
 楼主| 考哥 发表于 2019-11-17 17:52 | 显示全部楼层 |阅读模式
程序如下,为什么读取接收到的数据之前,要先发送Dummy_Byte??
u8 SPI_FLASH_ReadByte(void)
{
  return (SPI_FLASH_SendByte(Dummy_Byte));
}

u8 SPI_FLASH_SendByte(u8 byte)
{
  while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_TXE) == RESET);
  SPI_I2S_SendData(SPI2, byte);
  while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_RXNE) == RESET);
  return SPI_I2S_ReceiveData(SPI2);
}
Diyer123 发表于 2020-5-15 19:20 | 显示全部楼层
SPI是收发同步传输的。
想要接收,就要发送数据(以产生时钟信号)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

461

主题

477

帖子

0

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