0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux驱动到底能不能在应用层开发驱动

Wildesbeast 来源:今日头条 作者:s无邪 2019-12-29 10:34 次阅读

中午跟比较要好的同事一块吃饭,同事刚从单片机开发Linux开发没多久,目前负责给客户开发一个USB 设备驱动。他跟我抱怨,由于获取不到客户内核代码,因此每次客户那边内核代码发生了改变,自己的驱动程序也要跟着重新编译,太麻烦了。因此,我建议同事把驱动写到APP里面。同事大惊,Linux能在应用层开发驱动?

答案是肯定的。在Linux系统中,对于总线类驱动(usb,i2c,spi等),驱动框架都分为俩部分。一是总线控制器驱动,它负责使能总线传输数据的能力。二是设备驱动,它负责使能挂在总线上的设备。

以usb设备为例,usb host controller驱动使得Linux可以在自己及挂在自己身上的usb 设备(如usb转串口设备、usb摄像头等)之间传输数据。但是usb设备种类有千千万。驱动这些设备,都需要通过usb总线发送特定的数据给到usb设备。比如,我要初始化usb 串口设备,我应该发什么数据设置它的波特率呢?

相信大家已经明白了,总线控制器驱动及总线设备驱动的关系了,其实就是程序分层的思想。总线控制器驱动有了之后,程序员就可以调用她的接口,将自己要发送的数据发送到总线上的设备,这就是设备驱动了。那具体在内核空间调用还是在应用空间调用都是OK的。

笔者在实际工作过程中,有过在应用空间开发i2c设备驱动,安卓APP开发usb 设备驱动(usb转串口)程序的经验。
责任编辑 LK

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15228

    浏览量

    171203
  • usb
    usb
    +关注

    关注

    59

    文章

    7434

    浏览量

    258183
  • Linux
    +关注

    关注

    87

    文章

    10990

    浏览量

    206736
收藏 人收藏

    评论

    相关推荐

    labview 能不能在win ce 6.0 系统是运行

    本人是刚接触Labvier我想知道labview能不能在WIN CE6.0系统上运行,谢谢
    发表于 02-24 10:57

    能不能给发个ov9650的驱动

    能不能给发个ov9650的驱动
    发表于 08-18 16:19

    stm32能不能linux系统

    `  stm32到底能不能linux系统?`
    发表于 08-28 17:54

    uln2003放大芯片能不能驱动电机?

    uln2003放大芯片能不能驱动电机?
    发表于 10-28 07:56

    学习嵌入式Linux应用层开发

    1 应用层驱动要想学习嵌入式Linux应用层开发,首先要区分好
    发表于 11-02 10:20

    嵌入式Linux驱动开发

    想讲好嵌入式Linux驱动开发并不容易,各位业界大神最基础的字符驱动到中断并发再到驱动框架、应用层
    发表于 11-04 09:02

    电池能不能修复?

    电池能不能修复? 电池修复作为一个新生事物,许多人对它不了解,也有许多人对它一知半解。那么电池到底能不能修复呢?
    发表于 11-23 10:40 987次阅读

    到底能不能实现无代码开发

    很多人觉得无代码开发不过就是一个噱头,仅仅通过配置来实现复杂的业务需求是不可能的,认为无代码不过是开发个比较简单的小应用,无法搭建出真正的管理系统。无代码开发到底能不能胜任复杂的
    的头像 发表于 02-12 14:58 5014次阅读
    <b class='flag-5'>到底</b><b class='flag-5'>能不能</b>实现无代码<b class='flag-5'>开发</b>

    新能源的车到底能不能买_新能源汽车的利与弊

     那么新能源汽车到底能不能买?内行人说出实情,后悔没有早知道
    的头像 发表于 07-30 09:59 3755次阅读

    谐波治理到底能不能节电

    谐波治理到底能不能节电?”这是我们做电能质量行业经常会被问到的一个问题。随着国家对节能减排项目的大力支持,有不少商业人士一拥而上加入到节能行业,想要分得节能市场的一杯羹。那么,通过谐波治理到底
    发表于 04-23 15:50 2803次阅读

    嵌入式Linux驱动开发从基础到框架

    想讲好嵌入式Linux驱动开发并不容易,各位业界大神最基础的字符驱动到中断并发再到驱动框架、应用层
    发表于 11-01 16:58 13次下载
    嵌入式<b class='flag-5'>Linux</b><b class='flag-5'>驱动</b><b class='flag-5'>开发</b>从基础到框架

    指针能不能作为循环变量?

    指针能不能作为循环变量?
    的头像 发表于 02-16 18:11 701次阅读

    物联网流量卡到底能不能用?

    物联网流量卡到底能不能用?
    的头像 发表于 08-28 09:40 3483次阅读
    物联网流量卡<b class='flag-5'>到底</b><b class='flag-5'>能不能</b>用?

    STM32的HAL和LL库到底能不能混合使用呢?

    STM32的HAL和LL库到底能不能混合使用呢? STM32的HAL(Hardware Abstraction Layer)和LL(Low Level)库是ST公司为快速开发STM32芯片的软件
    的头像 发表于 10-26 17:42 976次阅读

    直流电源到底能不能驱动交流灯泡发光?

    我在网上经常看到有网友在问直流电源到底能不能驱动交流灯泡发光?事实胜于雄辩,这次专门准备了一盒干电池,来实际演示一下,看看能不能发光。
    的头像 发表于 11-13 15:07 1267次阅读
    直流电源<b class='flag-5'>到底</b><b class='flag-5'>能不能</b><b class='flag-5'>驱动</b>交流灯泡发光?