读书笔记

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了读书笔记相关的知识,希望对你有一定的参考价值。

一、编写LED驱动

1、创建LED驱动的设备文件

第一步:使用cdev_init函数初始化cdev

第二步:指定设备号

设备号指定方法:1.直接在代码中指定;2.动态分配。

第三步:使用cdev_add函数将字符设备添加到内核中的字符设备数组中

第四步:使用class_create宏创建struct class

第五步:使用device_create函数创建设备文件

2、卸载LED驱动的设备文件

void device_destroy(struct class *class, dev_t devt)

void class_destroy(struct class *cls)

void unregister_chrdev_region(dev_t from, unsigned count)

3、设置寄存器与初始化LED驱动

通过设置不同寄存器的值,可恶意设置led引脚的状态、打开或禁止上拉电路以及控制led的亮和灭。

4、控制LED

可以通过 1:字符串控制led;(file_oprations.write函数) 2 :I/O命令控制led(file_oprations.icoctl函数)

5、LED驱动的模块参数

使用module_param宏指定模块参数

6、LED驱动的完整代码

二、测试LED驱动

1、编写测试I/O控制命令的通用程序

2、使用NDK测试LED驱动

3、使用Java测试LED驱动

三、LED驱动的移植

四、小结

一个完整的Linux驱动主要由内部处理和与硬件交互两部分组成。其中内部处理主要是指Linux驱动的装载、卸载、与设备文件相关的运动处理以及业务逻辑等。

以上是关于读书笔记的主要内容,如果未能解决你的问题,请参考以下文章

第七章LED将为我闪烁:控制发光二级管 读书笔记

第七章读书笔记

第七章读书笔记

Android深度探索(卷1)HAL与驱动开发 第七章 LED将为我闪烁:控制发光二极管 读书笔记

第八章 读书笔记

读书笔记第七章