第九章 读后心得体会

1.android HAL架构

        

 

2.为LED驱动增加HAL

         1.编写一款支持HAL的Linux驱动程序步骤

                   第一步:编写Linux驱动

                   第二步:编写HALlibrary

                   第三步:编写Service Library

         2.颠覆Linux驱动的设计理念:精简LED驱动

3.测试读写寄存器操作

4.编写调用LED驱动的HAL模块

         HAL模块也可以被Android系统自动调用,自然也拥有类似main或init函数的接口。只不过这个接口不是函数,而是一个固定名称的结构体变量HAL_MODULE_INFO_SYM.也就是说,所有的HAL程序都必须有一个HAL_MODULE_INFO_SYM变量。

         HAL模块由leds_hal.c和leds_hal.h组成。Leds_hal.h头文件用于定义结构体,宏和引用一些系统的头文件。

编写HAL模块的步骤和原理:

         第一步:定义结构体和宏

         第二步:编写HAL模块的open函数

         第三步:定义hw_module_methods_t的结构体变量

         第四步:定义HAL_MODULE_INFO_SYM

         第五步:编写HAL模块的close函数

         第六步:编写控制LED的函数

5.编写调用HAL模块的Service

6.HAL模块的存放路径和命名规则

         HAL模块通常存放在/system/lib/hw目录。文件名中一般都有一个default.

7.编写调用Service的Java

8.测试LED驱动

posted @ 2016-07-08 11:53  什么都不会但要好好学  阅读(156)  评论(0编辑  收藏  举报