🧩 GPIO驱动开发 & 中断实战 30章 · 从入门到项目

🎯 动手做驱动
01 GPIO基础概念
GPIO是什么 工作原理 电气特性
02 硬件原理图分析
阅读GPIO原理图 引脚功能配置
03 Linux GPIO子系统框架
GPIO子系统架构 GPIO chip & desc
04 GPIO驱动模型
platform driver + GPIO 设备树GPIO描述
05 GPIO操作API
gpio_request gpio_direction_output gpio_set_value
06 GPIO作为输入
gpio_direction_input gpio_get_value 轮询模式
07 GPIO作为输出
控制LED 控制蜂鸣器 控制继电器
08 GPIO中断基础
中断概念 电平触发 边沿触发
09 Linux中断子系统
中断号 中断描述符 中断控制器
10 中断注册API
request_irq devm_request_irq free_irq
11 中断处理函数
上半部 top half 下半部 bottom half
12 中断下半部实现
tasklet workqueue threaded IRQ
13 GPIO中断实战 · 电平触发
按键中断驱动 电平触发开发
14 GPIO中断实战 · 边沿触发
按键中断驱动 边沿触发开发
15 中断共享
多设备共享中断线 实现与注意
16 中断嵌套与优先级
中断优先级设置 中断嵌套处理
17 中断上下文
原子上下文 可睡眠上下文 自旋锁
18 GPIO中断+定时器
去抖处理 长按短按检测
19 设备树中断描述
interrupt-parent interrupts属性
20 中断控制器驱动
GPIO作为中断控制器 实现细节
21 GPIO与DTS实战
编写完整GPIO节点 设备树实例
22 GPIO驱动调试
printk / dev_dbg GPIO模拟工具
23 中断调试
/proc/interrupts /proc/stat ftrace
24 GPIO与用户空间
sysfs接口 libgpiod库
25 GPIO与字符设备
GPIO字符设备驱动 实现示例
26 GPIO与DMA
GPIO触发DMA传输 实现要点
27 GPIO与PWM
模拟PWM输出 GPIO实现
28 GPIO与I2C/SPI
GPIO模拟I2C GPIO模拟SPI
29 GPIO低功耗管理
suspend/resume wakeup interrupt
30 综合实战:智能家居面板
基于GPIO中断 控制面板驱动