有关STM32通过硬件SPI实现16为数据传输的问题

2019-07-20 07:48发布

请教大家一个问题,如何实现SPI的16位数据输出,我看封装的函数中他们的移位寄存器是8位的,而16位的如何传输,求解答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
20条回答
xiaoff
2019-07-21 17:19
屋脊雀 发表于 2018-5-18 10:18
函数内部转换了吗?不转换的话16位数据是不是只有低8位发送出去?或者是说u16是分两次发送出去?

  你对这个函数理解的不太对。uint16_t        DeTxBuffer[1] 是指DeTxBuffer所存储的数据是16bit,而非DeTxBuffer的地址是16bit,在单片机中一般使用8bit 的地址。
  所以函数所需要的是地址,而不是数据;即使你的数据不是8位的也不是16位的,只要地址传递正确,依然可以收发数据。
  另外,收发数据理应根据数据的大小来发送数据,最好不要将16位的拆分成8位的数据。

一周热门 更多>