SPI

关于spi接口的几个问题

发布于 2020-02-11 20:41:16
1、rt_err_t rt_spi_send_then_send
这个函数用于发送两个message结构体,发完一个后,控制cs仍为低,在发送第二个
那么为何不把两个message合并成一个在发送,这两个message 发送中间也没有控制间隔时间的参数,这个函数的应用内场景是咋样的,没想明白
2、rt_spi_transfer
这个函数应该是发送和接收同时进行的全双工函数,那么这里的length参数就只有一个,就是说发送和接收长度必须保持一致才可以,这又会用在什么场景内。


查看更多

关注者
0
被浏览
294
3 个回答
freedom195
freedom195 2020-02-11
rt_err_t rt_spi_send_then_send 没合并可能是考虑合并需要申请内存 ,但是rt_spi_message结构体中的next 这个指针也没有用起来,使用这个应该可以优化这个问题
freedom195
freedom195 2020-02-11
freedom195 发表于 2020-2-11 20:49
rt_err_t rt_spi_send_then_send 没合并可能是考虑合并需要申请内存 ,但是rt_spi_message结构体中的next ...


rt_spi_send_then_send 这个函数是先发命令,在写数据
aozima
aozima 2020-02-11
拒绝白嫖,拒绝键盘侠!
    本帖最后由 aozima 于 2020-2-11 21:35 编辑


1. 你理解得对,时序上看只有一个send,但用于先发命令再跟数据的场合,不用挪动数据并申请内存。很实用。
2. SPI就是全双工,单向传输时,另一侧的数据也是存在的,只是被忽略了。这是SPI最基本的传输,所有的API都是基于这个。

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友