camera_lcd之DE和HV模式区别

转载地址:http://blog.youkuaiyun.com/zbunix/article/details/17318273

lcd接口之DE和HV模式

----------------------------

对于pannel来说,需要一些时序型号与RGB信号配合显示,时序告知pannel,这些颜色显示在pannel的什么物理位置。这些时序叫做TCON. 不同pannel自带的drive ic, 所需要的TCON信号也不同。

DE 模式一般需要:

DE的意思是指Date Enable,在TCON spec中有规定DE须为Low,即低,数据才会有效,所以DE需要一直接地,数据才能正常工作,所谓的DE mode,就是指DE为low接地的状态而Sync意思是同步,Sync mode即为同步模式,即行和场的工作状态。他们的区别在于:如果是用H,V模式的话,注意DE脚是否接地,如果不接地的话,数据无法正常工作

DE和clock信号来确定点。比如一个800x480分辨率的pannel。理论上,在DE有效信号的时候(高或底),就有一个800个clock,来确认行中800个点。每个clock有效的时候,读取一次RGB信号。因为存在(回扫信号)所以DE是个方波,当视频在会扫的时候,DE就拉底。DE一个周期,pannel就扫描一行。扫描480行后,又从第一行扫描开始, 这个协议规范由pannel的驱动IC所决定的。


HV模式: 需要行同步,和场同步, 来表示扫描的行于列。


camera sensor接口之DE和HV模式

-----------------------------------------

lcd接口之DE和HV模式类似,只是携带数据为YCbCr, 不是RGB而已。

### camera_metadata_buffer_entry_t camera_metadata_entry 的区别及关系 在 Android Camera API 中,`camera_metadata_buffer_entry_t` `camera_metadata_entry` 是用于处理相机元数据的不同结构体。 #### camera_metadata_buffer_entry_t 结构体 `camera_metadata_buffer_entry_t` 主要用于表示存储在缓冲区中的单个元数据条目。该结构体定义了如何访问操作位于内存特定位置的数据片段[^1]。具体来说: - **data.u8**: 表示无符号字符数组。 - **data.u16**: 表示无符号短整型数组。 - **data.u32**: 表示无符号整数数组。 - **data.i8**, **data.i16**, **data.i32**: 分别对应有符号版本的数据类型。 - **data.f**: 浮点数值数组。 - **section**: 指向包含此条目的节(section),这有助于理解其上下文环境以及与其他条目的关联方式[^3]。 ```c typedef struct { union { uint8_t u8[]; int8_t i8[]; uint16_t u16[]; int16_t i16[]; uint32_t u32[]; int32_t i32[]; float f[]; } data; } camera_metadata_buffer_entry_t; ``` #### camera_metadata_entry 结构体 相比之下,`camera_metadata_entry` 更像是一个高层级抽象,它不仅封装了实际的数据值还提供了更多关于这些数据的信息。这个结构体通常用来描述某个具体的元数据项及其属性,在应用层面上更为常用[^2]。特性如下: - **tag**: 标识符,唯一标记每一个可能存在的元数据字段。 - **count**: 数据元素的数量。 - **type**: 数据类型的枚举值(如整数、浮点数等),帮助解析器知道应该如何解释后面跟随的具体数据。 - **data**: 类似于 `camera_metadata_buffer_entry_t` 中的联合体部分,但是这里更强调作为整体的一部分而不是单独存在。 ```c typedef struct { camera_metadata_tag tag; size_t count; enum android::hardware::camera::common::V1_0::MetadataType type; union { uint8_t u8[ANDROID_MAX_METADATA_BUFFER]; int8_t i8[ANDROID_MAX_METADATA_BUFFER]; uint16_t u16[ANDROID_MAX_METADATA_BUFFER / 2]; int16_t i16[ANDROID_MAX_METADATA_BUFFER / 2]; uint32_t u32[ANDROID_MAX_METADATA_BUFFER / 4]; int32_t i32[ANDROID_MAX_METADATA_BUFFER / 4]; float f[ANDROID_MAX_METADATA_BUFFER / 4]; } data; } camera_metadata_entry; ``` #### 关系说明 两者之间存在着紧密的关系:`camera_metadata_entry` 可以看作是对 `camera_metadata_buffer_entry_t` 进行了一定程度上的包装与扩展。当从底层硬件获取到原始字节数组形式的元数据之后,会先被转换成一系列 `camera_metadata_buffer_entry_t` 实例;随后再进一步加工成为更加易于理解使用的 `camera_metadata_entry` 对象供上层应用程序调用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值