zoukankan      html  css  js  c++  java
  • Android深度探索(卷1)HAL与驱动开发第九章读书笔记

    本章主要讲硬件抽象层:HAL.HAL 是建立在linux 驱动之上的一套程序库,GoogleAndroid加入HAL主要如下的目的。

    1.统一硬件的调用接口

    2.解决了GPI版权的问题

    3.针对一些特殊的要求

    LED的驱动中,我们加入HAL使用程序不需要关心Linux驱动和设备文件的交互方式。编写一款支持HALlinux驱动程序的步骤:

    第一步:编写linux驱动

    第二步:编写 HAL Library

    第三步:编写Service library

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

    第一步:定义结构体和宏

            描述HAL模块的hw-module-t结构体

            描述HAL设备的HW-device-t结构体

            描述模块入口函数的hw-module-methods-t结构体

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

    第三步:定义hw-module-methods-t结构体变量

    第四步:定义HAL-module-info-sym变量

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

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

    Android系统中使用Linux驱动由两种方式。一种就是通过传统的方式直接与Linux驱动交互,另外一种就是Android特有的,就是HAL模块。

  • 相关阅读:
    hdu 1074
    hdu 4091
    hdu 4422
    hdu 3940
    hdu 2831
    hdu 1172
    hdu 3732
    hdu 1250
    hud 2073
    IOS socket基于tcp/udp的通信
  • 原文地址:https://www.cnblogs.com/l233ee/p/5648824.html
Copyright © 2011-2022 走看看