Linux驱动开发(一.linux驱动简介)

Linux的软件开发大家貌似都比较陌生,貌似大家平常也不会用什么操作复杂的Linux系统。但是你们用不用,和我啥关系?我最近要做Linux的驱动开发,就讲一下Linux的驱动吧。

Linux的驱动和STM32MCU的library库挺像的都是直接操作芯片上的硬件资源,直接控制寄存器来驱动外设。不同的就是STM32的Library库支持的仅仅是意法半导体那几款片子,家族性比较高,寄存器的地址上区别也不大,但是Linux需要支持的芯片非常多,因此在驱动层Linux就需要有对芯片更高的兼容性。为了满足兼容性和易用性Linux驱动层就有了很多的规则,也就是我们要说的Linux驱动类,Linux驱动分为三大类,字符设备驱动,块驱动,网络驱动。块驱动一般都是用于存储器的驱动,一般情况下用的比较少。网络设备驱动一般用于驱动网卡,一般用的也不是很频繁。用的最多的还是Linux的字符设备驱动,小到一个GPIO的led驱动,大到摄像头等等,可以说几乎所有常见的驱动都是字符设备驱动,但是Linux内核从诞生至今已经变化了很多版本,字符设备的驱动也在变化,刚开始有了设备驱动模型,后来又增添了总线设备模型,为了应对开发板众多引发的硬件描述文件拖沓重复的问题,又引用了PowerPC的设备树.....

在本系列中我会先从字符设备写起,再到plantfrom总线设备驱动,再到网络设备驱动,...,反正就是我学到了那里,我就写到哪里。

Linux内核一直都在变化,所以啥时候也不能停止学习的脚步啊!

推荐的学习文档和资源:

1.朱老师物联网大讲堂:Linux开发所有的课程

2.正点原子的Linux开源图书和视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

嵌入式吴彦祖

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

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

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

打赏作者

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

抵扣说明:

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

余额充值