前言:
隨著多媒體應用需求的不斷升級,越來越多的場景要求設備能夠接入外部視頻(HDMI-IN)信號,RK3568 不直接支持HDMI-IN接口,SOC有MIPI-CSI功能;需將HDMI-IN轉換成MIPI-CSI才能獲取視頻信息。本文詳細介紹了基于RK3568平臺,通過視頻橋接芯片RK628D將HDMI-IN信號轉換為MIPI-CSI信號的調試過程。
一、背景介紹
傳統Linux系統普遍作為攝像頭數據采集及顯示端應用,而 HDMI IN 功能則將系統角色進行了擴展——設備不僅要輸出視頻,同時還要接收外部高清視頻信號。實現這一功能需要硬件、驅動及上層應用的緊密配合。
在RK3568平臺上,可采用 RK628D HDMI 轉換芯片實現信號轉換,并利用 V4L2 驅動將 HDMI 信號映射為 MIPI CSI 數據,從而在 CameraHal3 框架下實現攝像頭數據采集。這一方案不僅支持常見的分辨率(如4K@30、1080P@60、720P@60等),還兼顧了 HDMI 熱拔插功能,使得系統在動態接入或斷開外部信號時能保持穩定運行。
二、核心實現原理
2.1RK628D芯片簡介
RK628D 芯片:RK628是一款多功能視頻橋接芯片,支持多種顯示接口的轉換;其作為 HDMI 轉換芯片,主要負責接收 HDMI 信號,并將其轉換為 MIPI CSI 數據。
- 工作原理:
HDMI RX 接收到外部視頻信號后,通過內部處理(包括顏色空間轉換、時序解析等),將數據信號輸出到 MIPI CSI 接口。
設備模擬:
系統將轉換后的數據模擬為類攝像頭設備,通過標準 V4L2 框架對接。
RK628D轉換芯片數據流圖如下:
2.2硬件連接
RK628D與RK3568的硬件連接,主要有以下幾點:
24MHz時鐘:時鐘信號;
I2S:音頻信號傳輸;
RGB:顯示信號源;
其它GPIO:供電、復位
2.3驅動配置
RK628驅動有兩個版本,一個是SDK系統自帶的版本,一個是RK628-for-all版本。本文調試使用的是RK的rk628-for-all v21驅動。將驅動補丁文件添加至 kernel/drivers/misc/rk628/ 目錄Media 為 RK628 HDMI IN 通路的驅動代碼,將RK628D作為類camera設備使用。
在以下驅動文件中添加編譯規則
1.kernel/drivers/misc/Kconfig
source "drivers/misc/rk628/Kconfig"
2.kernel/drivers/misc/Makefile
obj-y += rk628/
DTS配置:
dts配置分顯示和音頻兩部分,顯示部分在i2c中添加rk628節點,音頻部分使用i2s通信。部分核心代碼如下:
&i2c1 { status = "okay"; clock-frequency = <400000>; rk628: rk628@50 { compatible = "rockchip,rk628"; reg = <0x50>; pinctrl-names = "default"; interrupt-parent = <&gpio1>; interrupts =
修改完驅動文件,編譯內核燒錄到RK3568核心板。
三、運行測試
1. 查看media設備:
ls /dev/media*
/dev/media0 /dev/media1
2. i2c設備的通用調試命令:查看設備是否掛載到i2c總線下:
i2cdetect -y 2
3. 查看media節點的拓撲結構命令:
media-ctl -d /dev/media0 -pmedia-ctl -p
4. 抓圖命令:
v4l2-ctl-d/dev/video0--set-fmt-video=width=1920,height=1080,pixelformat=NV12--stream-mmap=3--stream-skip=100--stream-to=/oem/NV12.yuv--stream-count=1--stream-poll
將電腦Windows端與RK3568的HDMI IN連接,即可把Windows端畫面輸入給RK3568實現預覽;如下是RK3568預覽的Windows端畫面:
四、調試總結
文章主要目的是為了向大家介紹RK3568即使沒有原生HDMI IN功能,也可以使用RK628D橋接芯片實現的思路,只體現了整體實現原理;還有一些細節上的配置:EDID配置、HDMI IN APK適配等未體現;想了解更多細節配置,常用調試FAQ,可參考官方文檔或聯系我司技術支持工程師。 想了解更多相關技術知識或產品信息,請關注眺望電子公眾號并聯系我們,我們將竭誠為您服務!
-
芯片
+關注
關注
459文章
52199瀏覽量
436400 -
HDMI
+關注
關注
33文章
1816瀏覽量
154571 -
RK3568
+關注
關注
5文章
582瀏覽量
6105
發布評論請先 登錄
RK3568核心板簡介
24合1芯片RK628D替代龍訊LT6911C/東芝TC358749XBG/HDMI TO MIPI...

ROC RK3568 PC源代碼RK3568/RK3588 RKNN SDK

評論