往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)
①鸿蒙应用开发与鸿蒙系统开发哪个更有前景?
② 嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~
③对于大前端开发来说,转鸿蒙开发究竟是福还是祸?
④鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?
⑤记录一场鸿蒙开发岗位面试经历~
⑥ 持续更新中……
本文档以 rk3568 为例,讲述如何在 OpenHarmony 标准系统 rk 设备上适配 mipi 摄像头。
开发环境
- OpenHarmony 标准系统 4.1r
- rk3568 设备
- 摄像头 ov5648,ov8858
文档约定: 4.1r_3568 为 OpenHarmony 标准系统源码根目录
1.适配准备:得到一份完整的 kernel 代码
OpenHarmony 标准系统 4.1r 使用的是 kernel 5.10 的内核,在此基线基础上,回合 CVE 补丁及 OpenHarmony 特性,作为 OpenHarmony Common Kernel 基线。针对不同的芯片,各厂商合入对应的板级驱动补丁,完成对 OpenHarmony 的基线适配。
首先得有一份完整的 rk3568 kernel5.10 代码。所以我们需要手动把 4.1r_3568/kernel/linux/patches/linux-5.10/rk3568_patch/kernel.patch 打进/4.1r_3568/kernel/linux/linux-5.10 内核中
cd 4.1r_3568/kernel/linux/linux-5.10
patch -p1 < /home/jiajiahao/OpenHarmony/4.1r_3568/kernel/linux/patches/linux-5.10/rk3568_patch/kernel.patch
2.然后注释掉/4.1r_3568/device/board/hihope/rk3568/kernel/build_kernel.sh 中的 patch -p1 < ${KERNEL_PATCH}
然后就可以在 4.1r_3568/kernel/linux/linux-5.10 中得到一份完整的 rk3568 kernel 5.10 代码,
2.DTS 配置
本文档以 触觉智能 Purple Pi OH 开源 rk3566 为例修改 设备树源文件包含文件 添加摄像头
- 设备树相关的教程可以参考泰山派 3566: wiki.lckfb.com/zh-hans/tsp…
1.i2c4 配置
2.mipi 配置
3.isp 配置
DD一下:欢迎大家关注公众号<程序猿百晓生>,可以了解到以下知识点。
`欢迎大家关注公众号<程序猿百晓生>,可以了解到以下知识点。`
1.OpenHarmony开发基础
2.OpenHarmony北向开发环境搭建
3.鸿蒙南向开发环境的搭建
4.鸿蒙生态应用开发白皮书V2.0 & V3.0
5.鸿蒙开发面试真题(含参考答案)
6.TypeScript入门学习手册
7.OpenHarmony 经典面试题(含参考答案)
8.OpenHarmony设备开发入门【最新版】
9.沉浸式剖析OpenHarmony源代码
10.系统定制指南
11.【OpenHarmony】Uboot 驱动加载流程
12.OpenHarmony构建系统--GN与子系统、部件、模块详解
13.ohos开机init启动流程
14.鸿蒙版性能优化指南
.......
3.驱动添加
1.内核添加 ov5648.c 编译,4.1r_3568/kernel/linux/linux-5.10/drivers/media/i2c/ov5648.c
2.修改 4.1r_3568/kernel/linux/linux-5.10/drivers/media/i2c/Makefile
obj-$(CONFIG_VIDEO_OV5648) += ov5648.o
3.修改 4.1r_3568/kernel/linux/linux-5.10/drivers/media/i2c/Kconfig,添加 OV5648 配置
config VIDEO_OV5648
tristate "OmniVision OV5648 sensor support"
depends on I2C && VIDEO_V4L2
depends on MEDIA_CAMERA_SUPPORT
help
This is a Video4Linux2 sensor driver for the OmniVision
OV5648 camera.
To compile this driver as a module, choose M here: the
module will be called ov5648.
4.在 4.1r_3568/kernel/linux/config/linux-5.10/rk3568/arch/arm64_defconfig 中添加配置
CONFIG_VIDEO_OV5648=y
4.修改 iq 文件
需要添加 ov5648 的 iq 文件到 OpenHarmony,修复画面的偏绿问题。有两种方法:
方法 1:第一修改源码,随着固件编译, 修改 device/soc/rockchip/rk3568/hardware/isp/etc/iqfil.json 的内容为 ov5648_LMM248_YXC-M804A2.json 的内容。然后添加 ov5648_LMM248_YXC-M804A2.json 到/device/soc/rockchip/rk3568/hardware/isp/etc/iqfiles 目录下,然后修改 device/soc/rockchip/rk3568/hardware/isp/BUILD.gn,将文件随着固件打包。
方法 2:直接推到板子上(测试的时候可以使用),烧录好固件后,进入板子,将板子的 vendor/etc/iqfiles/iqfil.json 内容替换为 ov5648_LMM248_YXC-M804A2.json 的内容
5.安装调试 hap
安装调试用的摄像头 hap,MultiMedia_api9.hap