当前位置: 首页 > news >正文

rk3568 适配摄像头 (CIF协议)

rk3568 适配摄像头 (CIF协议)

在RK3568处理器中,支持CIF协议的摄像头可以通过CSI接口连接到处理器,实现视频数据的采集和处理。同时,RK3568还支持多种图像处理算法和编解码器,可以对采集到的视频数据进行实时处理和压缩,提高系统性能和效率。CIF(Camera Interface Format)协议是一种用于数字摄像头和处理器之间通信的协议。它定义了数据传输的格式和时序,包括像素数据、同步信号、时钟信号等。CIF协议支持多种分辨率和帧率,可以满足不同应用场景的需求。


提示:rk3568 cif支持8、10、12、16bits,可根据实际情况调整总线深度。

文章目录

  • rk3568 适配摄像头 (CIF协议)
  • 圈重点 看想学
  • 1. 核查硬件,适配gc2145
    • 1.1 核查硬件
    • 1.2 内核设备树适配 gc2145
  • 2 适配 lt8619
    • 2.1 内核设备树适配 lt8619
  • Tips
  • 总结


圈重点 看想学

a) 适配 gc2145 摄像头
b) 适配 lt8619,HDMI-IN 转DVP


1. 核查硬件,适配gc2145

原理图中使用是高性能的摄像头gc2145,它适用于各种数字相机、手机、平板电脑等消费电子产品。gc2145还支持多种输出格式,包括YUV、RGB、JPEG等,可以满足不同应用场景的需求。此外,它还具有低功耗、小尺寸、易于集成等特点,可以方便地集成到各种消费电子产品中。gc2145的分辨率为640x480,支持最高30帧/秒的视频录制。它还具有自动曝光、自动白平衡、自动对焦等功能,可以自动调整图像的亮度、色彩和清晰度,使得拍摄出的照片和视频更加清晰、自然。它采用了先进的CMOS技术,具有高分辨率、低功耗、高灵敏度、低噪声等优点。

1.1 核查硬件

  • 核查摄像头供电、传输协议
    在这里插入图片描述

CIF_PWREN 是 gc2145 供电CIF_5V控制,受控于 GPIO0_C1。
CIF_PWDN 是 gc2145 休眠控制,受控于 GPIO4_A6。
CIF_RST 是gc2145 复位控制,受控于 GPIO3_B5。
IR_LED_EN 是红外补光灯控制,受控于 GPIO4_B3。

  • rk3568 CIF总线连接
    在这里插入图片描述
    细心通许会发现 gc2145 仅有8bits总线,而rk3568则是16bits总线,如何连接呢?
  • CIF 总线位数适配
    在这里插入图片描述
    本文中采用8bits 总线,需连接高8位数据线。

1.2 内核设备树适配 gc2145

/ {vcc_camera: vcc-camera-regulator {compatible = "regulator-fixed";gpio = <&gpio0 RK_PC1 GPIO_ACTIVE_HIGH>;pinctrl-names = "default";pinctrl-0 = <&camera_pwr>;regulator-name = "vcc_camera";enable-active-high;regulator-always-on;regulator-boot-on;};
};&i2c4 {/* i2c4 sda conflict with camera pwdn */status = "okay";/** gc2145 needs to be disabled,* when gmac1 is enabled;* pinctrl conflicts;*/gc2145: gc2145@3c {compatible = "galaxycore,gc2145";reg = <0x3c>;clocks = <&cru CLK_CIF_OUT>;clock-names = "xvclk";power-domains = <&power RK3568_PD_VI>;pinctrl-names = "default";/* conflict with gmac1m1_rgmii_pins & cif_clk*/pinctrl-0 = <&cif_clk &cif_dvp_clk &cif_dvp_bus16>;/*avdd-supply = <&vcc2v8_dvp>;*//*dovdd-supply = <&vcc1v8_dvp>;*//*dvdd-supply = <&vcc1v8_dvp>;*/reset-gpios = <&gpio3 RK_PB5 GPIO_ACTIVE_LOW>;pwdn-gpios = <&gpio4 RK_PA6 GPIO_ACTIVE_HIGH>;rockchip,camera-module-index = <0>;rockchip,camera-module-facing = "back";rockchip,camera-module-name = "CameraKing";rockchip,camera-module-lens-name = "Largan";port {gc2145_out: endpoint {remote-endpoint = <&dvp_in_bcam>;};};};
};&rkcif {status = "okay";
};&rkcif_dvp {status = "okay";port {/* Parallel bus endpoint */dvp_in_bcam: endpoint {remote-endpoint = <&gc2145_out>;bus-width = <8>;vsync-active = <0>;hsync-active = <1>;};};
};&rkcif_mmu {status = "okay";
};&rkcif_dvp_sditf {status = "okay";
};

2 适配 lt8619

Lontium的LT8619C是一款基于ClearEdge®技术的高性能HDMI/双模DP接收器芯片,符合HDMI1.4规范。TTL输出可支持RGB,BT656,BT1120,输出分辨率可支持高达4Kx2K@30Hz的分辨率。LT8619 可转换为DVP信号,而再拓展出一路HDMI-IN。

2.1 内核设备树适配 lt8619

/ {vcc_camera: vcc-camera-regulator {compatible = "regulator-fixed";gpio = <&gpio0 RK_PC1 GPIO_ACTIVE_HIGH>;pinctrl-names = "default";pinctrl-0 = <&camera_pwr>;regulator-name = "vcc_camera";enable-active-high;regulator-always-on;regulator-boot-on;};ext_cam_clk: external-camera-clock {compatible = "fixed-clock";clock-frequency = <25000000>;clock-output-names = "CLK_CAMERA_25MHZ";#clock-cells = <0>;};
};&i2c2 {status = "okay";pinctrl-names = "default";pinctrl-0 = <&i2c2m1_xfer>;lt8619c: lt8619c@32 {compatible = "lontium,lt8619c";reg = <0x32>;clocks = <&ext_cam_clk>;clock-names = "xvclk";pinctrl-names = "default";pinctrl-0 = <&cif_dvp_clk &cif_dvp_bus16 &cif_dvp_bus8>;power-gpios = <&gpio0 RK_PD5 GPIO_ACTIVE_HIGH>;reset-gpios = <&gpio4 RK_PD2 GPIO_ACTIVE_LOW>;plugin-det-gpios = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;hpd-output-inverted;rockchip,dvp-mode = <3>; /* 3:BT1120, 4:BT656, 5:BT1120_8bit */rockchip,dual-edge = <1>; /* 0:single edge, 1:dual edge */rockchip,camera-module-index = <0>;rockchip,camera-module-facing = "back";rockchip,camera-module-name = "LT8619C";rockchip,camera-module-lens-name = "NC";port {lt8619c_out: endpoint {remote-endpoint = <&cif_para_in>;bus-width = <16>;pclk-sample = <1>;};};};
};&rkcif_dvp {status = "okay";port {/* Parallel bus endpoint */cif_para_in: endpoint {remote-endpoint = <&lt8619c_out>;};};
};&rkcif {status = "okay";
};&rkcif_mmu {status = "okay";
};&rkcif_dvp_sditf {status = "okay";
};

Tips

  1. camera I2C通信无应答
    先核查硬件供电,再核查上电时许、reset、pwdn等。然后是必须有要有的 clk 时钟,别问为什么,问就是不专业。
  2. camera clk信号没有
    先排查GPIO 复用,再排查是否被正常申明,然后测量上电时许是否为开始正常然后消失。
    camera 设备在注册失败,或者关闭camera时会主动关闭 clk。再测量则不会有信号。
  3. camera 正常注册,但是无法打开
    HAL1和HAL3不仅需要内核正常注册,还需要匹配 camera列表。你的camera_default.xml 匹配了?

总结

活学活用,做个合格的搬运工。

相关文章:

rk3568 适配摄像头 (CIF协议)

rk3568 适配摄像头 (CIF协议) 在RK3568处理器中&#xff0c;支持CIF协议的摄像头可以通过CSI接口连接到处理器&#xff0c;实现视频数据的采集和处理。同时&#xff0c;RK3568还支持多种图像处理算法和编解码器&#xff0c;可以对采集到的视频数据进行实时处理和压缩&#xff…...

今天面试招了个25K的测试员,从腾讯出来的果然都有两把刷子···

公司前段时间缺人&#xff0c;也面了不少测试&#xff0c;前面一开始瞄准的就是中级的水准&#xff0c;也没指望来大牛&#xff0c;提供的薪资在15-25k&#xff0c;面试的人很多&#xff0c;但平均水平很让人失望。看简历很多都是4年工作经验&#xff0c;但面试中&#xff0c;不…...

Redis---集群环境准备

一、redis集群环境准备 1、部署Redis集群的目的&#xff1a; 多台服务器一起提供数据存储服务&#xff1b; 实现数据的分布式存储&#xff1b; 可以实现服务的高可用&#xff1b; 可用实现数据自动备份&#xff1b; 2、服务器IP地址及端口&#xff1a; 主机名 IP地…...

数据结构考研版——队列的配置问题

一、正常配置下的情况 队空状态 frontrear;入队操作 出队操作 队满状态 在正常配置下元素的个数&#xff08;rear>front&#xff09; 当rear<front 综上所述用一个表达式表示&#xff1a;(rear-frontmaxSize)%maxSize 二、非正常配置下的情况1 队空状态 入队操作…...

【SOAP-WebService系列】SOAP学习笔记

目录 1、SOAP是什么&#xff1f; 2、SOAP特性 3、SOAP消息组成 4、SOAP调用 5、SOAP和HTTP 1、SOAP是什么&#xff1f; SOAP(Simple Object Access Protocol&#xff0c;即简单对象访问协议) &#xff0c;是一个轻量级协议&#xff0c;用于在分散的分布式环境中使用XML在对…...

材料科学|名词解释终版!!!

晶体&#xff1a;组成物质的原子&#xff0c;分子或离子按照一定的周期性规则排列形成的固体。 非晶体&#xff1a;原子在三维空间的不规则排列&#xff0c;长程无序&#xff0c;各向同性。 晶体结构&#xff1a;原子&#xff0c;离子&#xff0c;原子团按照空间点阵而进行的…...

永久免费内网穿透不限制速度

市面上的免费内网穿透大都有格式各样的限制&#xff0c;什么限制流量啊&#xff0c;每个月要签到打卡啊&#xff0c;还有更改域名地址等&#xff0c;只有神卓互联内网穿透是永久免费没有限制的&#xff0c;白嫖也可以。 这篇文章分享了3个方案&#xff0c;按照性能和综合指标排…...

JAVA开发运维(云基础设备监控)

在大型的商用系统中&#xff0c;经常需要监控云设备的健康状态&#xff0c;性能情况&#xff0c;流量数据等。及时发现系统问题&#xff0c;及时修复&#xff0c;以确保系统的高可用。检查云资源的工作内容主要包括基础监控、主动拨测、用户体验、APM监控、指标体系、业务分析、…...

现在备考2023年5月软考网络工程师时间够吗?

距离2023年5月软考还有1个多月的时间&#xff0c;备考网络工程师的时间是够的&#xff0c;以下是一些备考方法&#xff1a; 1.了解考试内容 在你开始学习考试之前&#xff0c;了解考试的形式和内容是很重要的。这将帮助你把注意力集中在最有可能被测试的领域。你应该复习考试…...

webp怎么转换成png,4个方法教你快速处理

webp怎么转换成png&#xff1f;目前在一些比较大的图片素材网站下载的图片都是webp格式的。我们都知道webp格式图片&#xff0c;它在正常的图片浏览器中是无法打开的。 所以说我们要把webp图片转变成png格式&#xff0c;正常来说我们常用的图片处理软件也能进行格式转换&#x…...

程序员能干多久?程序员能干到多大年龄?

程序员可以工作多少年?大多数程序员认为程序员是吃青春饭的工作。编程只能干到30岁&#xff0c;最长可达35岁。我经常听到这样的话&#xff0c;都让人倍感压力。今天&#xff0c;我们来谈谈这个老话题...... 程序员能干多久&#xff1f; 根据国外的经验来说&#xff0c;干到…...

采购系统是如何管理供应商的?

随着数字化的推进&#xff0c;企业面临着越来越多的供应商管理问题。企业采购数字化转型已经成为大势所趋&#xff0c;对于采购数字化转型而言&#xff0c;供应商管理是重要一环。 供应商准入管理 在供应商准入阶段&#xff0c;企业需要从供应商资质、财务能力、信誉能力、管理…...

Linux学习笔记(2)--一些内核接口

1&#xff09;dump_stack dump_stack()是Linux内核中的一个函数&#xff0c;用于在内核中输出当前的函数调用栈。该函数会输出当前线程&#xff08;或进程&#xff09;的函数调用栈信息&#xff0c;以及相应的调用地址和虚拟内存地址等信息&#xff0c;一般用于诊断程序运行时…...

学习风`宇博客用户权限菜单模块

文章目录 用户-角色-菜单-资源 各表关系图菜单 和 路由菜单表及分析分析 /api/admin/user/menus接口MenuServiceImpl#listUserMenus接口返回示例及分析 前端代码分析menu.jsSideBar.vue 接口权限控制资源表 及 分析分析 WebSecurityConfig权限控制整体流程先说登录UserDetailsS…...

centos7.6部署ELK集群(一)之elasticsearch7.7.0集群部署

32.3. 部署es7.7.0 32.3.1. 下载es&#xff08;各节点都做&#xff09; wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.7.0-linux-x86_64.tar.gz 32.3.2. 解压至安装目录&#xff08;各节点都做&#xff09; tar -xvf elasticsearch-7.7.0-li…...

leetcode142. 环形链表 II

给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null。 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数…...

Linux: network: dummy 类型网络接口

文章目录 参考创建一个重要的用途是在container平台的应用dpdk相关的一个用途另一个用途ChatGPT的回复参考 https://tldp.org/LDP/nag/node72.html 这里举了一个例子,说为什么需要dummy类型的接口:就是一个类local loopback的一个接口,当应用需要给另一个本地的应用发送包的…...

java记录-lambda表达式、接口应用、方法引用

基本形式 (str)->{System.out.println(str) };调用作为参数的接口实例的方法 1、用一个类实现接口&#xff0c;然后使用该类实例调用方法 2、匿名内部类 3、在 接口&#xff08;不能是抽象类&#xff09; 有且只有一个抽象方法时&#xff0c;可以使用lamda表达式来重写这个…...

AI写作机器人-ai文章生成器在线

使用AI续写生成器&#xff0c;让内容创作事半功倍&#xff01; 随着人工智能技术的不断进步和应用&#xff0c;AI续写生成器的出现为内容创作带来了全新的革命。这种技术可以让你的写作事半功倍&#xff0c;让你轻松生成高质量的文章和内容。在这篇文章中&#xff0c;我们将介绍…...

HarmonyOS原子化服务卡片整改、下架、升级失败部分原因及处理办法

随着HarmonyOS应用体系相关规则、团队的不断发展和完善&#xff0c;早期上架运营的HarmonyOS原子化服务卡片&#xff0c;很多都收到了整改、下架的通知&#xff0c;主要集中在用户协议、隐私声明、服务卡片的设计规范性等细节方面的问题&#xff1b;需要进行优化调整升级才行。…...

golang循环变量捕获问题​​

在 Go 语言中&#xff0c;当在循环中启动协程&#xff08;goroutine&#xff09;时&#xff0c;如果在协程闭包中直接引用循环变量&#xff0c;可能会遇到一个常见的陷阱 - ​​循环变量捕获问题​​。让我详细解释一下&#xff1a; 问题背景 看这个代码片段&#xff1a; fo…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式&#xff0c;避免服务器受到各种恶意攻击和网络威胁&#xff0c;那么&#xff0c;服务器硬防通常都会应用在哪些场景当中呢&#xff1f; 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南

文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/55aefaea8a9f477e86d065227851fe3d.pn…...

2023赣州旅游投资集团

单选题 1.“不登高山&#xff0c;不知天之高也&#xff1b;不临深溪&#xff0c;不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

return this;返回的是谁

一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请&#xff0c;不同级别的经理有不同的审批权限&#xff1a; // 抽象处理者&#xff1a;审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...

Vite中定义@软链接

在webpack中可以直接通过符号表示src路径&#xff0c;但是vite中默认不可以。 如何实现&#xff1a; vite中提供了resolve.alias&#xff1a;通过别名在指向一个具体的路径 在vite.config.js中 import { join } from pathexport default defineConfig({plugins: [vue()],//…...

BLEU评分:机器翻译质量评估的黄金标准

BLEU评分&#xff1a;机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域&#xff0c;衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标&#xff0c;自2002年由IBM的Kishore Papineni等人提出以来&#xff0c;…...

离线语音识别方案分析

随着人工智能技术的不断发展&#xff0c;语音识别技术也得到了广泛的应用&#xff0c;从智能家居到车载系统&#xff0c;语音识别正在改变我们与设备的交互方式。尤其是离线语音识别&#xff0c;由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力&#xff0c;广…...