当前位置: 首页 > news >正文

16.1Linux自带的LED灯驱动实验(知识)_csdn

前面我们都是自己编写 LED 灯驱动,其实像 LED 灯这样非常基础的设备驱动, Linux 内核已经集成了。 Linux 内核的 LED 灯驱动采用 platform 框架,因此我们只需要按照要求在设备树文件中添加相应的 LED 节点即可,本章我们就来学习如何使用 Linux 内核自带的 LED 驱动来驱动正点原子的 STM32MP1 开发板上的 LED0 和 LED1 这两个 LED 灯

1、Linux 内核自带 LED 驱动使能

Pasted image 20250405184904.png
Pasted image 20250405184934.png
Pasted image 20250405184947.png
Pasted image 20250405190639.png
Pasted image 20250405185004.png
Pasted image 20250405190929.png
这里是用新编译出来的uImage镜像文件来启动开发板,正点原子错了。
我们一直是利用ulmage编写。二者没有很大的区别,ulmage比zImage只是多了头文件!

2、Linux 内核自带 LED 驱动简介

2.1、LED 灯驱动框架分析

Pasted image 20250405191901.png
Pasted image 20250405192225.png
Pasted image 20250405192244.png
Pasted image 20250405192303.png
Pasted image 20250405192321.png

2.2、 module_platform_driver 函数简析

Pasted image 20250405192608.png
可以看到结构中包含platform注册和注销两个定义了,说明只要执行module_platform_driver就完成了注册和注销!
Pasted image 20250405192907.png
Pasted image 20250405192935.png
Pasted image 20250405193032.png
这就是一整套驱动的注册和注销!变的更方便了!

2.3、gpio_led_probe 函数简析

Pasted image 20250405193222.png
Pasted image 20250405193251.png
Pasted image 20250405194346.png
Pasted image 20250405194401.png
Pasted image 20250405194418.png
Pasted image 20250405194429.png
Pasted image 20250405194444.png
Pasted image 20250405194457.png

3、设备树节点编写

Pasted image 20250405194805.png
Pasted image 20250405195330.png
Pasted image 20250405195345.png
Pasted image 20250405195356.png
Pasted image 20250405195526.png
Pasted image 20250405195545.png

相关文章:

  • [3.2] 深入了解recv参数列表里的status
  • 信息系统项目管理中各个知识领域的概要描述及其管理流程
  • 【网络安全】 防火墙技术
  • 卢瑟福实验室2025.4.5
  • java流程控制05:Switch选择结构
  • Python开发GUI 框架TKinter、PyQt、PySide、wxPython、Kivy、PyGTK
  • Day 7
  • 采掘队绩效考核制度与生产管理
  • Angular 2 模板语法详解
  • Ubuntu(CentOS、Rockylinux等)快速进入深度学习pytorch环境
  • 【Redis】背景知识
  • 信息系统项目管理师-第十章-项目进度管理
  • 2-Visual Studio 2022 NET开发Windows桌面软件并连接SQL Server数据库
  • 【前端】【tailwind】「由浅入深」 的方式,从基础概念到高级应用,逐步解析 Tailwind CSS 的分层系统,并设置自己的原子类和组件类
  • 谷歌亮剑:Canvas免费开放,TPU火上浇油!AI大战再掀波澜
  • 讯飞语音合成(流式版)语音专业版高质量的分析
  • vscode和cursor对ubuntu22.04的remote ssh和X-Windows的无密码登录
  • 【深度学习】通过colab将本地的数据集上传到drive
  • Linux_4
  • HTML5 Web Workers 学习笔记