打印

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

[复制链接]
636|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

粉丝