Mini2440之linux驱动移植-LED字符设备驱动

2022/2/11 7:12:35

本文主要是介绍Mini2440之linux驱动移植-LED字符设备驱动,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

我们在linux驱动基础概念这一节中粗略介绍了linux驱动的概念,以及应用程序是如何调用驱动程序的。

这一节我们将一点亮LED为例来介绍字符设备驱动的编写。

一、LED硬件

1.1 硬件接线

查看Mini2440原理图、S3C2440数据手册,了解如何点亮LED。在Mini2440裸机开发之点亮LED中我们已经介绍了Mini2440 LED1~LED4的接线方式,以及寄存器的设置,这里简单说一一下,就不具体介绍了:

  • LED1~LED4对应引脚GPB5~GPB8,以点亮LED1为例;
  • 配置控制寄存器GPBCON(0x56000010)的bit[11:10]=01,使GPB5引脚为输出模式;
  • 配置数据寄存器GPBDAT(0x56000014)的bit5=0,使GPB5引脚输出低电平;

二、字符设备驱动框架

2.1 编写led_open、led_read函数

在内核中找到相近的驱动程序,以它为模板进行开发,设计所要实现的操作,比如 open、close、read、write 等函数;

2.2 注册LED驱动程序

 实现驱动程序的初始化:比如向内核注册这个驱动程序,这样应用程序传入文件名时,内核才能找到相应的驱动程序;

2.3 编译驱动到内核

2.4 测试驱动程序

参考文章

[1]二、Linux驱动之简单编写字符设备

[2]07-S3C2440驱动学习(一)嵌入式linux字符设备驱动-LED字符设备驱动 



这篇关于Mini2440之linux驱动移植-LED字符设备驱动的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程