如题!!!!!!!!!!!!!!!!!!!!!!!!!!!!!在线等

解决方案 »

  1.   

    Camera.java--->Camera.java(framework)--->android_hardware_camera.cpp(jni)---->Camera.cpp--->ICameraService ---(通过binder机制)---->CameraService.cpp-->V4LCameraAdapter.cpp--->Camera驱动
      

  2.   


    我想知道的是 从CameraService.cpp-->V4LCameraAdapter.cpp--->Camera驱动 
    很多文章都是分析到CameraHardwareInterface 或者 分析到hw_get_module 就表示获取硬件了 
    我想知道往下是怎么走的  求指点
      

  3.   

    这个要看不同平台,不同平台在HAL层实现是不一样的,比如高通是HAL调用驱动借口camerainterface2.c(记不清了)往下调到驱动了
      

  4.   

    补充:建议学习下单片机,你就会懂。以下是一个USB 的IC的开发简介,大概介绍了一下硬件设计,驱动开发。希望对你有参考作用。
    FTDI发布用于安卓平台优化的USB主控IC
     
    先进的单片USB主控桥接器并支持各种标准接口,广泛应用于物联网,车载,最新网银U盾,Pos机,医疗保健等连接智能手机或平板USB转串口最佳方案。
            英商飞特蒂亚公司(FTDI)继续推进安卓开源配件的创新,推出FT311D。这款新的USB全速(12 Mbit/s)主控IC是专门针对安卓平台, 比如平台电脑或者智能手机,通过使用USB技术提供与终端产品系统的内部连接。
           一年多以前谷歌推出安卓开源配件。这一规范采用工业标准USB总线技术加上一个枚举步骤。因此,USB连接使安卓平台的作用成为一个USB从控端/设备。这消除了寻求电源,储存类驱动程序,并支持负责控制USB总线的主机堆栈的需求。最终,USB主机的功能现在被降级到连接到安卓平台的终端产品。
            FT311D是标准的3.3伏供电,在48兆赫充分工作时吸收电流仅为25毫安,待机模式下耗电为128µA,能够将USB端口桥接到六个不同的用户可选择的接口类型,即GPIO,UART,I2C,SPI从控端和主控端。它可以用于连接支持安卓开源配件模式的任何平台(通常是3.1版本以上的安卓操作系统,虽然某些平台可能支持2.3.4 版本的安卓开源配件模式)。
     当IC的外围接口配置为UART模式,此接口作为具有流控制的基本异步串行UART端口 。FT311D的UART可以支持速率为300比特/秒到6兆比特/秒的数据流,而其I2C主控端借口可以连接到支持125K比特/秒的I2C从控端接口。接口也可以配置为提供4路脉冲宽度调制(PWM)输出信号。这些输出可用于产生用于控制电机, 制动器,传感器,DC/DC转换器或AC/DC电源的PWM信号以及玩具,照明应用,家用电器和工业设备等。
            FT311D的开发模块现已上市,电路板尺寸(UMFT311EV) 68.58 mm x 55.38 mm x 14.00 mm,预期用作一个能够简单评估这款芯片的硬件平台,允许工程师广泛开发安卓开源配件兼容应用。通过一系列跳接设定来选择所想要的接口模式。这款模块是66.60 mm x 55.38 mm x 22 mm 的GPIO(UMFT311GP) 板,上面有按钮键盘能够作为用户输入,还有一套8 LED的发射极可用于部署显示有效输出。
           “有了这款新的主控IC, 我们增强了安卓相关的产品系列,用于工程师探索开源配件模式所能提供的各种新的可能,”FTDI公司的CEO和创始人Fred Dart说, “通过这款芯片, 加上我们的开发工具,  软件和应用支持,我们的目标是轻松地把USB 主控端集成到 客户的终端产品中, 就如同我们的R系列和X- Chip系列的设备。”FT311D提供32脚QFN和LQFP封装选择。这些芯片的工作温度范围是-40 °C 至+85 °C。