首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
Linux驱动开发
xlp666hub
创建于2026-03-18
订阅专栏
Linux驱动学习之路
暂无订阅
共13篇文章
创建于2026-03-18
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Linux驱动:用MPU6050手把手带你入门I2C子系统(附完整源码)
1. 用 i2c-tools 操作 MPU6050 的寄存器 本章算是从最表层接触一下 i2c 吧,主要内容是讲讲 i2c-tools 这个工具的使用方法和 i2c 设备的一些特点,会掺杂一些我在终端
一篇文章彻底搞懂Linux驱动的并发控制与中断上下半部机制
1. 上下文的概念 在深入探究锁和中断之前,我们必须先了解 Linux 内核的两种核心执行流,这里先简单概括一下: 进程上下文: 代表着某个具体的进程在执行,有对应的 task_struct。进程上下
深度剖析 Linux Input 子系统(3):从零写一个 Input 驱动,最详细手把手(附完整代码)
0. 前言 前面两篇文章我们已经拆解了 Input 子系统的架构。本文我们将手写一个完整的 GPIO 按键驱动,完整走一遍 Input 设备从宣告功能到上报事件的流程,为了大家能清晰的看到按键按下和松
深度剖析Linux Input子系统(2):驱动开发流程与现代 Multi-touch 协议
1. Input 驱动开发流程 编写一个标准的 Input 驱动,通常要遵循下面的流程: 分配与初始化: 现代内核强烈建议使用 devm 接口,即 devm_input_allocate_device
深度剖析Linux Input子系统(1):宏观架构与核心原理
Linux 输入子系统的设计目标非常明确,就是 抽象化。它的实现让驱动工程师可以不用管用户空间怎么读,让应用软件工程师不用管硬件是连在 USB,I2C,还是 GPIO 上, 1. Input子系统的三
【Linux驱动实战】:标准的按键控制LED驱动写法
0. 前言 依稀记得当初在刚学单片机时,写按键逻辑都是简单的 if(key == 0) delay(20ms)。但在 Linux 内核中,这种写法不仅会拉低系统性能,更是对 CPU 资源的极大浪费,大
【Linux驱动实战】:以按键驱动入门中断子系统(附源码)
0. 前言 作为一名 Linux 驱动开发初学者,中断 是继续深入学习的必经之路。 在之前的学习中,我们可能都是比较习惯用 轮询 的方式检查硬件状态,或者在学习单片机时接触过中断。但是在追求高性能和低
从零点亮 RK3568 的 LED:设备树,平台总线,现代gpio子系统全解析(附完整代码)
0. 前言 如果你和我一样,学习过单片机,然后是从学习 open,read,write 的字符设备驱动开始接触到 Linux 内核,那么你对下面的场景应该不陌生: 为了点亮一个 LED,我们需要翻阅芯
【Linux驱动实战】:字符设备之ioctl与mutex全解析
0. 前言 上一篇我们讲了字符设备用户态与内核态的数据交互,这篇文章我们继续深入学习。 在学习 Linux 驱动开发过程中,大家对于 open,read,write 这些基础操作肯定是手拿把掐,但是一
【Linux驱动实战】:字符设备驱动之内核态与用户态数据交互
1. 本文目标 每次看《Linux 设备驱动程序》这种经典著作,看到各种复杂的底层架构,总是会忍不住怀疑人生,我就想从简单的驱动开始慢慢学,有必要搞的这么复杂吗? 后来我明白了,学习驱动最好的方法就是
【Linux驱动实战】:初识字符设备,内核自动创建设备节点的原理
1. 简单了解字符设备 这篇文章是我《Linux驱动开发》专栏的第三篇,也是字符设备驱动相关的第一篇,我觉得还是有必要先了解一下字符设备是个什么东西。 这一章我只是简单介绍一下字符设备,在完成本篇文章
【Linux驱动实战】:带参数的内核模块
1 核心代码解析 先上代码,文件名是param.c: 内核模块的一些知识点我在上一篇文章中已经讲了不少了,但是考虑到可能有新的读者朋友,有些点我可能简单地再提一下。 这段代码乍一看很简单,但是作为初学
【Linux驱动实战】:最简单的内核模块
1. 前置知识 Linux 驱动本质上就是运行在内核态的程序,而内核模块作为驱动开发的最小单元,它可以动态的加载到内核中,无需重新编译整个内核。 野火的官方手册上有这样一句话,总结性很强,我把它摘抄过