Android深度开发第7章随笔
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android深度开发第7章随笔相关的知识,希望对你有一定的参考价值。
这一章就是通过Linux驱动发送数据控制LED小灯的开关。
在通过驱动控制LED灯的开始我们需要创建LED驱动的设备文件:
第一步:使用cdev-init函数初始化cdev
第二步:指定设备号
第三步:使用cdev-add函数将字符设备添加到内核中的字符设备数组中
第四步:使用class-create宏创建struct class
第五步:使用device creat函数创建设备文件
而在卸载LED驱动的设备文件是,需要依次调用device-destory、class-destory、和unregistor-chrder-region(dev__t from,.unsigned count)
我们在控制LED亮、灭之前必须会寄存器了如指掌:包括LED有两个引脚线、控制LED需要通过3个寄存器来完成、每个寄存器可以使用4个字符、使用GPMDAT寄存器的低4位来控制4个LED灯的亮灭。
LED驱动可以使用两种方法控制驱动:1、通过字符串控制LED
2、通过I/O命令控制LED
LED驱动测试方法不仅可以向LED设备文件发送字符串,还可以发送I/O控制命令。这些测试方法包括可执行程序测试,NDK测试和Java测试。
LED驱动是一个真正和硬件打交道的Linux驱动。我们需要更全面的了解Linux驱动的高级技术,深入学习Linux驱动技术,以便可以熟练的编写驱动代码。
以上是关于Android深度开发第7章随笔的主要内容,如果未能解决你的问题,请参考以下文章
Android深度探索与HAL驱动开发(卷1)-- 第九章随笔
Android深度探索与HAL驱动开发(卷1)-- 第十章随笔