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 = <<8619c_out>;};};
};&rkcif {status = "okay";
};&rkcif_mmu {status = "okay";
};&rkcif_dvp_sditf {status = "okay";
};
Tips
- camera I2C通信无应答
先核查硬件供电,再核查上电时许、reset、pwdn等。然后是必须有要有的 clk 时钟,别问为什么,问就是不专业。 - camera clk信号没有
先排查GPIO 复用,再排查是否被正常申明,然后测量上电时许是否为开始正常然后消失。
camera 设备在注册失败,或者关闭camera时会主动关闭 clk。再测量则不会有信号。 - camera 正常注册,但是无法打开
HAL1和HAL3不仅需要内核正常注册,还需要匹配 camera列表。你的camera_default.xml 匹配了?
总结
活学活用,做个合格的搬运工。
相关文章:
rk3568 适配摄像头 (CIF协议)
rk3568 适配摄像头 (CIF协议) 在RK3568处理器中,支持CIF协议的摄像头可以通过CSI接口连接到处理器,实现视频数据的采集和处理。同时,RK3568还支持多种图像处理算法和编解码器,可以对采集到的视频数据进行实时处理和压缩ÿ…...
今天面试招了个25K的测试员,从腾讯出来的果然都有两把刷子···
公司前段时间缺人,也面了不少测试,前面一开始瞄准的就是中级的水准,也没指望来大牛,提供的薪资在15-25k,面试的人很多,但平均水平很让人失望。看简历很多都是4年工作经验,但面试中,不…...
Redis---集群环境准备
一、redis集群环境准备 1、部署Redis集群的目的: 多台服务器一起提供数据存储服务; 实现数据的分布式存储; 可以实现服务的高可用; 可用实现数据自动备份; 2、服务器IP地址及端口: 主机名 IP地…...
数据结构考研版——队列的配置问题
一、正常配置下的情况 队空状态 frontrear;入队操作 出队操作 队满状态 在正常配置下元素的个数(rear>front) 当rear<front 综上所述用一个表达式表示:(rear-frontmaxSize)%maxSize 二、非正常配置下的情况1 队空状态 入队操作…...
【SOAP-WebService系列】SOAP学习笔记
目录 1、SOAP是什么? 2、SOAP特性 3、SOAP消息组成 4、SOAP调用 5、SOAP和HTTP 1、SOAP是什么? SOAP(Simple Object Access Protocol,即简单对象访问协议) ,是一个轻量级协议,用于在分散的分布式环境中使用XML在对…...
材料科学|名词解释终版!!!
晶体:组成物质的原子,分子或离子按照一定的周期性规则排列形成的固体。 非晶体:原子在三维空间的不规则排列,长程无序,各向同性。 晶体结构:原子,离子,原子团按照空间点阵而进行的…...
永久免费内网穿透不限制速度
市面上的免费内网穿透大都有格式各样的限制,什么限制流量啊,每个月要签到打卡啊,还有更改域名地址等,只有神卓互联内网穿透是永久免费没有限制的,白嫖也可以。 这篇文章分享了3个方案,按照性能和综合指标排…...
JAVA开发运维(云基础设备监控)
在大型的商用系统中,经常需要监控云设备的健康状态,性能情况,流量数据等。及时发现系统问题,及时修复,以确保系统的高可用。检查云资源的工作内容主要包括基础监控、主动拨测、用户体验、APM监控、指标体系、业务分析、…...
现在备考2023年5月软考网络工程师时间够吗?
距离2023年5月软考还有1个多月的时间,备考网络工程师的时间是够的,以下是一些备考方法: 1.了解考试内容 在你开始学习考试之前,了解考试的形式和内容是很重要的。这将帮助你把注意力集中在最有可能被测试的领域。你应该复习考试…...
webp怎么转换成png,4个方法教你快速处理
webp怎么转换成png?目前在一些比较大的图片素材网站下载的图片都是webp格式的。我们都知道webp格式图片,它在正常的图片浏览器中是无法打开的。 所以说我们要把webp图片转变成png格式,正常来说我们常用的图片处理软件也能进行格式转换&#x…...
程序员能干多久?程序员能干到多大年龄?
程序员可以工作多少年?大多数程序员认为程序员是吃青春饭的工作。编程只能干到30岁,最长可达35岁。我经常听到这样的话,都让人倍感压力。今天,我们来谈谈这个老话题...... 程序员能干多久? 根据国外的经验来说,干到…...
采购系统是如何管理供应商的?
随着数字化的推进,企业面临着越来越多的供应商管理问题。企业采购数字化转型已经成为大势所趋,对于采购数字化转型而言,供应商管理是重要一环。 供应商准入管理 在供应商准入阶段,企业需要从供应商资质、财务能力、信誉能力、管理…...
Linux学习笔记(2)--一些内核接口
1)dump_stack dump_stack()是Linux内核中的一个函数,用于在内核中输出当前的函数调用栈。该函数会输出当前线程(或进程)的函数调用栈信息,以及相应的调用地址和虚拟内存地址等信息,一般用于诊断程序运行时…...
学习风`宇博客用户权限菜单模块
文章目录 用户-角色-菜单-资源 各表关系图菜单 和 路由菜单表及分析分析 /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(各节点都做) wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.7.0-linux-x86_64.tar.gz 32.3.2. 解压至安装目录(各节点都做) tar -xvf elasticsearch-7.7.0-li…...
leetcode142. 环形链表 II
给定一个链表的头节点 head ,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数…...
Linux: network: dummy 类型网络接口
文章目录 参考创建一个重要的用途是在container平台的应用dpdk相关的一个用途另一个用途ChatGPT的回复参考 https://tldp.org/LDP/nag/node72.html 这里举了一个例子,说为什么需要dummy类型的接口:就是一个类local loopback的一个接口,当应用需要给另一个本地的应用发送包的…...
java记录-lambda表达式、接口应用、方法引用
基本形式 (str)->{System.out.println(str) };调用作为参数的接口实例的方法 1、用一个类实现接口,然后使用该类实例调用方法 2、匿名内部类 3、在 接口(不能是抽象类) 有且只有一个抽象方法时,可以使用lamda表达式来重写这个…...
AI写作机器人-ai文章生成器在线
使用AI续写生成器,让内容创作事半功倍! 随着人工智能技术的不断进步和应用,AI续写生成器的出现为内容创作带来了全新的革命。这种技术可以让你的写作事半功倍,让你轻松生成高质量的文章和内容。在这篇文章中,我们将介绍…...
HarmonyOS原子化服务卡片整改、下架、升级失败部分原因及处理办法
随着HarmonyOS应用体系相关规则、团队的不断发展和完善,早期上架运营的HarmonyOS原子化服务卡片,很多都收到了整改、下架的通知,主要集中在用户协议、隐私声明、服务卡片的设计规范性等细节方面的问题;需要进行优化调整升级才行。…...
从零实现富文本编辑器#5-编辑器选区模型的状态结构表达
先前我们总结了浏览器选区模型的交互策略,并且实现了基本的选区操作,还调研了自绘选区的实现。那么相对的,我们还需要设计编辑器的选区表达,也可以称为模型选区。编辑器中应用变更时的操作范围,就是以模型选区为基准来…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)
UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中,UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化…...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...
return this;返回的是谁
一个审批系统的示例来演示责任链模式的实现。假设公司需要处理不同金额的采购申请,不同级别的经理有不同的审批权限: // 抽象处理者:审批者 abstract class Approver {protected Approver successor; // 下一个处理者// 设置下一个处理者pub…...
Selenium常用函数介绍
目录 一,元素定位 1.1 cssSeector 1.2 xpath 二,操作测试对象 三,窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四,弹窗 五,等待 六,导航 七,文件上传 …...
OD 算法题 B卷【正整数到Excel编号之间的转换】
文章目录 正整数到Excel编号之间的转换 正整数到Excel编号之间的转换 excel的列编号是这样的:a b c … z aa ab ac… az ba bb bc…yz za zb zc …zz aaa aab aac…; 分别代表以下的编号1 2 3 … 26 27 28 29… 52 53 54 55… 676 677 678 679 … 702 703 704 705;…...
aardio 自动识别验证码输入
技术尝试 上周在发学习日志时有网友提议“在网页上识别验证码”,于是尝试整合图像识别与网页自动化技术,完成了这套模拟登录流程。核心思路是:截图验证码→OCR识别→自动填充表单→提交并验证结果。 代码在这里 import soImage; import we…...
UE5 音效系统
一.音效管理 音乐一般都是WAV,创建一个背景音乐类SoudClass,一个音效类SoundClass。所有的音乐都分为这两个类。再创建一个总音乐类,将上述两个作为它的子类。 接着我们创建一个音乐混合类SoundMix,将上述三个类翻入其中,通过它管理每个音乐…...
CMS内容管理系统的设计与实现:多站点模式的实现
在一套内容管理系统中,其实有很多站点,比如企业门户网站,产品手册,知识帮助手册等,因此会需要多个站点,甚至PC、mobile、ipad各有一个站点。 每个站点关联的有站点所在目录及所属的域名。 一、站点表设计…...
