将几个spi外设绑到一个SPI bus上时每个设备注册时都初始化一下,因为波特率或者其他设置不统一会产生错误。例如将触摸和外部flash用同一个SPI2时,两者采用不同的CS,会产生错误吧。
查看更多
SPI框架正是来解决这些问题的。
用的就是spi框架还有信号量只针对了单个外设没有对总线有请求信号量的设置应该在bus初始化时分配一个bus信号量,共用bus时必须先申请信号量
rt_err_t rt_spi_take_bus(struct rt_spi_device *device);
如果有bug,请进行更具体的描述或给出测试代码。
spi device中的:mutex解决多个CS复用冲突问题;owner&configure 解决多个CS对速率和时序要求不同的问题。
框架确实好用,还不是一般的好用。不过就是不知道怎么去做。
你写的touch驱动并没有用到spi框架这就会引起冲突
欢迎发表与嵌入式相关的技术分享、开发技巧、工具介绍、技术设想、职业心得、行业评论等对他人有启发,排版优雅的文章
回到 顶部
发布 问题
分享 好友
手机 浏览
投诉 建议
回到 底部