嵌入式Linux驱动开发(1)基本过程及和单片机开发的区别

在Linux下的驱动开发和单片机开发有很大的区别,程序调用过程的区别如下:

单片机:应用程序 ==>设备驱动

Linux:应用程序==>设备驱动==>Llinux核心==>控制器驱动(总线驱动)

产生以上区别的主要原因是:

1、单片机:每个厂商的每颗芯片都有相应的库可供开发者调用,当一个新的外设需要开发驱动,开发者只需把外设厂商提供的设备驱动修改读写相关函数即可与单片机匹配通信。

2、Linux:Linux是一个操作系统,它得面对各种主控芯片、各种外设芯片,为增强Linux的兼容性,Linux核心对上层应用和底层驱动都提供了统一的接口 ,一般的嵌入式Linux驱动开发主要写的还是应用程序和设备驱动部分的开发。控制器驱动(总线驱动)部分是由主控芯片产商提供。和单片机设备驱动开发的区别在于单片机直接对应外设驱动,Linux设备驱动调用Linux核心提供的接口,Linux核心再调用相应的控制器驱动(总线驱动)。

Linux应用程序:在Linux下万物皆文件。应用程序与外设通信都是调用的文件读写程序。

Linux设备驱动:编写Linux设备驱动要按照linux制定的规则来做,①编写打开、关闭、读、写文件的调用的函数。②调用Linux核心提供的接口

在Linux设备驱动编写好之后,将设备驱动编译为模块(.ko结尾),再将模块变为Linux的设备,此时应用程序就可以调用"文件"(设备驱动)了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凌乱的小老弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值