• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

为什么SPI读的时候要先发送一个空字节?

小白爱32 2019-05-06 浏览量:2041

为什么SPI读的时候要先发送一个空字节?如题,代码如下:

​每次读的时候,要发这样的空字节?SPI_FLASH_SendByte()这个函数也是先发送后接收的

TIM图片20190506211101.png

12314.png

0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • SPI是全双工同步串行口,收发通信同时进行,发一个字节同时也是收一个字节,收发完成后,才可以从寄存器读取数据。
    • 发布于 2019-05-07
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:2
  • 这个是由于从机的SPI不输出时钟,要靠主机的SPI中的CLK信号来同步,所以发一个空的,来输出CLK信号的
    • 发布于2019-05-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 因为从设备往主设备发数据需要依赖主设备的时钟,主设备要产生时钟,最好的方法就是发一个无意义的字节过去,这个字节可以是0xff或者0x00这种
    • 发布于2019-05-16
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

为什么SPI读的时候要先发送一个空字节?