android驱动一些外设调试记录

xiaoxiao2021-02-27  369

2010 - 微博元年,智能手机元年,2011 - 平板电脑元年,2012 - 智能电视元年。

又到年末,是时候梳理下Android开发工作,展望下未来了。

本文仅供我个人参考...

开发产品 电子书 手机 平板电脑

负责模块 Camera, Sound, SD, USB, G-sensor, TP

软件平台 Android 1.6/2.2/2.3

硬件平台 Mavell PXA935, Freescale  IMX51, Qualcomm MSM8255

1. Camera

理论储备 软件架构和硬件原理  http://blog.csdn.net/qianjin0703/article/details/6233790

 

1) 开发8MP+ISP+MIPI 驱动 (MSM8255)

主要职责 

编写驱动代码,调通camera sensor驱动,并实现前后置双camera的切换。根据芯片手册,实现基本功能 - 预览, 拍照, 录像, 效果(scene, effect, ev, iso, wb, contrast...)技术支持下,实现进阶扩展功能 - 防抖, 自动对焦, 闪光灯, 固件升级, 720P, wdr, panorama... 遇到难题   I2C不通 - 初期调试驱动,任何GPIO,供电,时钟,上电时序没配正确都会导致I2C不通。raw拍照死机 - ISP拍照后将图片硬解压缩成JPEG无法与高通平台的camera interface接收端VFE匹配。预览视频旋转90度 - 硬件问题,必须保证装配camera时,镜头长边与手机长边是平行的而不是垂直的。第三方软件问题多 - 修改高通平台代码时要注意代码的兼容性和健壮性。 遇到bug  添加新功能新接口 - 必须熟悉高通独有的Qcamera架构,修改所涉及到的代码较多。自动对焦和色彩效果设置无效 - 场景模式scene里的设置与其他效果产生了冲突。开启程序过慢,照片在PC上颠倒,转屏时预览视频会卡一下,录像时有自动对焦,没有自动识别场景和闪光功能等bug。

2) 移植,调试,升级camera模块 (IMX51)

主要职责 解决bug和升级Android2.3

开启程序速度慢 - 去掉检测SD卡过程。优化图像效果 - 协调硬测与FAE。视频通话画质差 - 更新视频编解码动态链接库。Overlay偏移 - 设定固定的视频大小。

2. Sound

理论储备 软件架构和硬件原理  http://blog.csdn.net/qianjin0703/article/details/6387662

主要职责 

移植音频codec驱动,升级Android 2.3。解决bug,主要修改Mixer通道和调试Vol增益。添加DSP功能消回音 (FAE支持)。

3. SD

理论储备 

Linux的SDIO子系统

http://blog.csdn.NET/qianjin0703/article/details/5918041

Android的Vold架构

http://blog.csdn.net/qianjin0703/article/details/6362389

主要职责 

移植SD卡和inand驱动。解决bug, 如快速热插拔不识别,部分SD卡不识别,系统启动后inand不识别等。

4. USB

理论储备 

Linux的USB子系统

http://blog.csdn.Net/qianjin0703/article/details/6559033

Linux的USB Gadget

http://blog.csdn.net/qianjin0703/article/details/6141763

主要职责  添加自动挂载U盘功能。 添加USB自动充电功能。

5.G-sensor

理论储备 

Linux的I2C架构

http://blog.csdn.net/qianjin0703/article/details/5894869

Android的传感器架构

http://blog.csdn.net/qianjin0703/article/details/5942579

主要职责 

移植G-sensor驱动。直接在底层实现显示屏,触摸屏和键盘的90/180翻转。

6. TP

理论储备 

Linux的Input子系统

http://blog.csdn.net/qianjin0703/article/details/6025673

触摸屏矫正原理

http://blog.csdn.net/qianjin0703/article/details/6087647

主要职责 

移植电磁屏驱动。修改触摸屏矫正程序。

7. Other

编写Android ATE和FCT工厂测试程序。 移植键盘驱动,添加网络按键。移植振动传感器驱动,修改振动幅度。移植滑动电容屏驱动,调节灵敏度。 在Bootloader里实现开机前USB充电,添加开机指示灯。
转载请注明原文地址: https://www.6miu.com/read-1938.html

最新回复(0)