xiaobu1990 2014-11-06 15:49 采纳率: 0%
浏览 1747

spi驱动实时性如何实现

linux内核中的spi驱动一般都不考虑实时性,都是将message挂到spi控制器的queue上,然后调用
queue_work或者采用类似方法。

现在有个问题:现在有一款spi接口的芯片,希望对该芯片的spi写操作发下去之后能立即写入该芯片中,而不是需要经过某种调度方法之后才生效,与此同时,要保证其他spi接口芯片能正常工作。

那么就可以从2个方面考虑,修改sdk中spi驱动,或者放弃sdk中spi实现方法,重新做一套接口。

目前我想到的修改sdk的方法就是在将message添加到spi控制器queue的时候判断该消息优先级,如果高,则插入queue链表最前面,因为每次spi控制器从queue上取消息都是取第一个位置上的来处理,处理后就删掉,这样执行该message的等待时间就只有前一条消息的执行时间,理论上说这个时间最多也就是将fifo填满的时间,是us级的。

不知道各位还有没有什么比较好的方法,还请指教!

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 不同尺寸货物如何寻找合适的包装箱型谱
    • ¥15 求解 yolo算法问题
    • ¥15 虚拟机打包apk出现错误
    • ¥15 用visual studi code完成html页面
    • ¥15 聚类分析或者python进行数据分析
    • ¥15 三菱伺服电机按启动按钮有使能但不动作
    • ¥15 js,页面2返回页面1时定位进入的设备
    • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
    • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
    • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝