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

    文章

    16152

    浏览量

    177254
  • usb
    usb
    +关注

    关注

    60

    文章

    7887

    浏览量

    263839
  • Linux
    +关注

    关注

    87

    文章

    11216

    浏览量

    208808
收藏 人收藏

    评论

    相关推荐

    stm32能不能linux系统

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

    学习嵌入式Linux应用层开发

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

    嵌入式Linux驱动开发

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

    电池能不能修复?

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

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

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

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

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

    谐波治理到底能不能节电

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

    linux spi应用层驱动以及回环测试代码

    linux spi应用层驱动以及回环测试代码
    发表于 10-22 15:47 2次下载

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

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

    嵌入式Linux应用层开发教程(一)基本概念

    1 应用层驱动要想学习嵌入式Linux应用层开发,首先要区分好
    发表于 11-01 17:59 14次下载
    嵌入式<b class='flag-5'>Linux</b><b class='flag-5'>应用层</b><b class='flag-5'>开发</b>教程(一)基本概念

    嵌入式Linux驱动 GPIO操作 包括驱动应用层程序对驱动进行测试

    文章目录代码驱动代码应用层代码 测试驱动Makefile这里记录的是嵌入式linux驱动对gp
    发表于 11-02 14:36 10次下载
    嵌入式<b class='flag-5'>Linux</b><b class='flag-5'>驱动</b> GPIO操作 包括<b class='flag-5'>驱动</b>和<b class='flag-5'>应用层</b>程序对<b class='flag-5'>驱动</b>进行测试

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

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

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

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

    Linux中LED驱动应用层控制

    今天,我们就站在巨人的肩膀上,利用内核开发者已经写好的驱动来实现我们想要的功能。 应用层控制 除了可以在shell中通过 echo 、 cat 的方式控制Led,我们也可以在写一个应用层
    的头像 发表于 09-27 11:09 503次阅读

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

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