zoukankan      html  css  js  c++  java
  • 摄像头PIN脚功能作用

    摄像头PIN脚功能作用,Camera硬件系统分析 9 f  E+ E2 b  N. j4 M2 U- a. q9 A) T# c& O& C% x+ l5 l! q                                          <ignore_js_op>QQ截图20150819115858.jpg

    <ignore_js_op>QQ截图20150819115014.jpg来源于:http://www.ccm99.com/thread-3527-1-1.html

    / N! w1 f: J) N; h $ n2 L2 Z  {* q: s. }6 e6 n: X: J, Y          从sensor本身的引脚来看,它们一般有如下一些需要配置的引脚:RESET,PWRDWN,VSYNC,HSYNC,PCLK,MCLK,SDA,SCL,AVDD,DVDD,IOVDD,还有就是数据引脚了。对于30万像素的sensor有8个数据引脚:D0——D7,对于200万像素的sensor有10个数据引脚:D0——D9。 ; b) o; N1 q* }9 N2 U5 P" X 这些引脚的意义大致如下: " W0 Y( u# F+ D8 Q, E . Z9 ^6 m0 q) jRESET:用来reset sensor;RESET一般是低有效,当脉冲为低时,reset sensor,而正常工作时,应该为高。SSA5526中,其为低有效。 ' O" # k! Y+ `" d/ G3 B* G4 {, ` , J0 q2 }4 j- V! `1 Z, aPWRDWN:power down引脚,切断供电。PWRDWN一般高有效,当脉冲为高时,进入省电模式,而正常工作时为低。但有些sensor却是低有效,比如SSB0520。在使用不同sensor时,就需要注意这点。SSA5526中,其为高有效。 " x8 f* k# L  [+ ^. h  Q' t& K; o % m- }6 h% T+ p$ S2 l1 E2 ZHSYNC:行同步,行锁存,换行信号,sensor在抓取一行数据开始的时刻,通过HSYNC引脚向Camera interface发出信号,告知其。SSA5526中,其为高有效。   z! V7 H& ^, g0 @0 M 4 ~% V( f, h9 B5 }7 y  hVSYNC:帧同步,祯锁存,换页信号,这个与HSYNC对应,在sensor抓取一帧数据开始时,通过VSYNC引脚向Camera interface发出信号,告知其。SSA5526中,其为低有效。 6 }+ n" N6 R; N. H7 ]! T

    320×240的屏,每一行需要输入320个脉冲来依次移位、锁存进一行的数据,然后来个HSYNC 脉冲换一行;这样依次输入240行之后换行同时来个VSYNC脉冲把行计数器清零,又重新从第一行开始刷新显示

    PCLK:理解为sensor抓取一个像素的脉冲高低。SSA5526中,其为低有效。

    MCLK:sensor工作的时钟频率。

    & n6 ]" U& F% j; f- i

    SCA和SCL:这是I2C的两条总线线路:SDA为串行数据线,SCL为串行时钟线。1 {& e5 Z4 @9 V

    2 U/ d" S$ M2 F, `" L2 c/ K

    $ c% _  s) r* F6 @: m 二、I2C总线在传送数据过程中共有3种特殊的电平变换情况,他们分别是:起始(start)、停止(stop)和响应(aek)。2 X1 o; p  I: D8 b( X7 Y : e( g. m1 |# Y3 ?/ B1 A. w   当SCL为高电平时,SDA由高电平向低电平跳变,这个表示起始条件;当SCL是高电平时,SDA线由低电平向高电平跳变表示停止条件。起始和停止条件一般由主机产生,总线在起始条件后被认为处于忙的状态,在停止条件的某段时间后总线被认为再次处于空闲状态。& M) M6 T% D9 W4 c4 ~; h
    ' O  i% e; g. }, S( F  响应信号是指从机在接收到8b数据后,向主机发出特定的低电平脉冲,表示已收到数据。在响应的时钟脉冲期间,从机必须将SDA线拉低使他在这个时钟脉冲的高电平期间保持稳定的低电平,主机收到应答信号后,根据实际情况做出是否继续传递信号的判断。若未收到应答信号,则判断为从机出现故障。 ! ^' j: * f7 `3 F) ~% l1 ~4 P- }# H- Q& S1 {# P% q& Z7 v
    : {, V2 C( p! n1 H- b# a三、摄像头初始化时,没有将数据写入I2C,一般问题会出现在哪里? 1 # ~4 b$ a. H% e' Q SENSOR的各路电源是否接好, ) d/ P0 X$ d: z7 R9 A$ qCMCLK是否正确 3 u9 U- ?4 J; a* u  D8 g1 E; B1 r8 uRESET sensor % G1 n+ ]. I& ZI2C总线上拉电阻是否匹配正确, ) ^; U. W$ g1 T( n, ]$ L/ K 访问sensor时使用的 device ID是否正确, (注意7位地址和8位地址)5 p8 h. s) l  N7 a3 A I2C的时钟CLK速率是否太高, 5 O6 L* t8 ^% K9 L! R 两次I2C连续读写之间是否有spec规定的delay时间 ! Z2 X1 @3 X1 G' W

    CAMERA POWER UP 时序是否符合 SPEC。

    QQ截图20150819115537.jpg

    摄像头问题分析排查:

    1、AVDD,DVDD,IOVDD 三路电压供电情况:

          理应单独供电,假设camera 端的DVDD、IOVDD 都由主板的dvdd供电,因为是并联,camera端的DVDD、IOVDD都能满足电压需求,但并联分流,可能camera端的电流不够。

    上电要求,假设正常工作时,AVDD应为2.8V,但从0V 直接提升到 2.8V 可能会产生较大电流,影响camera的工作,此时应逐步提升电压,0V->1.8V->2.5V>2.8V。

    ( a& x& Z: m- Y

    2、powerdown 有效极性,powerdown 为省电、掉电模式,即powerdown 有效时,camera 为不工作模式。

      Q: J1 o, D1 u  N  T6 n

    3、reset 极性、时序要求。高低高 或者  低高低,复位时应保持的时间。

    & s; E1 M; : [. C

    4、MCLK是否要求先于 !powerdown 提供

    # [' H; r2 K5 a: o8 L: T

    5、PCLK 信号是否正常

    1 X# C7 x4 {% ~; q7 I4 i, Y

    6、I2C地址应依据I2C通信算法的处理方式写成7bit或者8bit

    如果I2C通信算法中依据struct i2c_msg 中提供的flag进行左移,再 " | " flag标志位,则I2C地址写成7bit;如果不进行左移,则写成8bit,最低位为0。

    查看是否有其他外设占用此I2C地址,I2C上拉电阻阻值是否正确,I2C管脚是否有足够的驱动能力。

    ! g  M2 }" M: f7 a8 z/ M$ V- D# p

    7、均如果以上条件满足,那么下一步应该读取camera 的 chip id ,用示波器查看 I2C CLK 信号是否正常,查看发出的data 数据是否是 camera的 i2c addr,第9个 CLK 期间,data 线是否被 camera 拉低,产生ACK响应

  • 相关阅读:
    iOS 的 Block 的使用
    iOS 的Could not find Developer Disk Image错误
    iOS 面试
    iOS 开发工具——统计Crash的工具Crashlytics
    iOS 的 Foundation 框架
    iOS 页面之间的传值总结
    iOS 常用四种数据存储方式
    iOS 的 Delegate Notification KVO
    iOS 的 Delegate 设计模式 及 自定义代理
    iOS 的 NSNumber(对基本数据类型) & NSValue(对结构体) 的装箱
  • 原文地址:https://www.cnblogs.com/whw19818/p/5788923.html
Copyright © 2011-2022 走看看