双通道LVDS(Dual‑Link)Link0 / Link1:硬件、软件、标准

双通道LVDS(Dual‑Link)Link0 / Link1:硬件、软件、标准

针对你用的 ArtInChip DE‑V10 平台

1、LVDS标准本身有没有强制规定哪一组是Link0、Link1?

LVDS(VESA/JEIDA)标准没有强制规定硬件引脚哪一组必须是Odd(奇像素)、哪一组是Even(偶像素) 。

标准只定义:

  • Dual‑Link屏接收端:一组接收奇数像素(Odd) ,一组接收偶数像素(Even)。
  • 但没有规定"哪一套差分引脚必须做Odd,哪套做Even"。

屏规格书上只会写:

RXO(Odd,奇像素链路)、RXE(Even,偶像素链路),不会写LVDS0、LVDS1。

LVDS0、LVDS1 是SoC芯片内部给两组LVDS收发器起的名字,不是LVDS国际标准定义。

2、硬件层面(ArtInChip芯片引脚)

芯片硬件引脚物理上固定:

  • LVDS_LINK_0:对应芯片一组物理差分引脚(LVDS0_D3:0、LVDS0_CK)
  • LVDS_LINK_1:对应另一组物理差分引脚(LVDS1_D3:0、LVDS1_CK)

PCB布线时:

  • 如果你把芯片LVDS_LINK_0接到屏的RXO(Odd),LVDS_LINK_1接到屏RXE(Even) → 默认配置就正常。
  • 如果你PCB走线反过来:芯片LVDS_LINK_0接屏RXE,LVDS_LINK_1接屏RXO,硬件上电气完全没问题,但是图像会花、像素错乱、颜色乱。

👉 引脚物理编号是硬件固定;但是"该链路传奇像素还是偶像素"可以软件交换。

3、软件层面(ArtInChip特有,重点)

ArtInChip DE‑V10支持寄存器位:AIC_LVDS_LINK_SWAP_EN(disp_conf.h)

c 复制代码
/* lvds link swap enable, swap lvds link0 and link1 */
#define AIC_LVDS_LINK_SWAP_EN   0
  • AIC_LVDS_LINK_SWAP_EN = 0:
    SoC内部逻辑:LVDS_LINK_0输出Odd奇像素;LVDS_LINK_1输出Even偶像素(默认)。
  • AIC_LVDS_LINK_SWAP_EN = 1:
    内部逻辑互换:LVDS_LINK_0输出Even,LVDS_LINK_1输出Odd,不需要改PCB,软件直接交换双通道数据流。

这个就是解决"PCB布线时两组LVDS接反屏RXO/RXE",不用改板,改这个宏即可。

和Kconfig配置的关系

你Kconfig里:

kconfig 复制代码
config AIC_LVDS_DUAL_LINK
    bool "dual link"
    depends on AIC_DE_DRV_V10

AIC_LVDS_LINK_MODE=3代表开启Dual‑Link双链路模式。

Kconfig只选择工作模式;Link0/Link1数据流互换不由menuconfig控制,是disp_conf.h里面的宏 AIC_LVDS_LINK_SWAP_EN 寄存器配置。

4、区分三个容易搞混的概念

项目 说明
芯片硬件引脚LVDS0 / LVDS1 硬件固定,PCB布线焊在哪就是哪,不可软件改引脚物理位置
Dual‑Link内部Odd(奇)/Even(偶像素分配) 软件可交换,AIC_LVDS_LINK_SWAP_EN控制
链路内部D0‑D3、CK数据线顺序 ArtInChip还支持每组链路内部差分线任意调换,AIC_LVDS_LINES宏,解决屏内部数据线顺序不匹配花屏

5、调试实操流程(Dual‑Link屏)

  1. 看屏datasheet:确认屏的FPC引脚,哪一组是 RXO(Odd奇像素),哪一组RXE(Even偶像素)。
  2. PCB:芯片LVDS_LINK_0 →屏RXO;芯片LVDS_LINK_1→屏RXE。
  3. disp_conf.h:AIC_LVDS_LINK_SWAP_EN=0。
  4. 如果图像错乱、像素隔点错乱,大概率Link0/Link1接反 ,直接把AIC_LVDS_LINK_SWAP_EN=1,不用动硬件。

现象:接反之后不会黑屏,而是图像有规律错乱:横向像素错位、点闪烁、颜色紊乱,不是普通VESA/JEIDA那种全局颜色颠倒。

总结回答你的原始问题

  1. LVDS标准没有强制规定哪组硬件引脚必须是link0/link1 ;LVDS0/LVDS1是SoC芯片内部命名。
  2. 物理引脚是硬件固定 ;但是双链路下,哪一组输出奇像素、哪一组输出偶像素,ArtInChip可以软件寄存器互换,不需要改PCB。
  3. 屏侧只认RXO(Odd)和RXE(Even),不认LVDS0/LVDS1。
  4. ArtInChip:模式选择在Kconfig,双通道交换开关在disp_conf.h的AIC_LVDS_LINK_SWAP_EN,不在menuconfig界面。

补充区分:

  • AIC_LVDS_LINK_0 / AIC_LVDS_LINK_1:单链路模式,选择用哪一套硬件接口输出完整画面。
  • AIC_LVDS_DUAL_LINK:双链路模式,两套硬件同时输出,一套奇像素一套偶像素,驱动一块高分屏。
  • AIC_LVDS_DOUBLE_SCREEN:双屏模式,两套链路输出完全相同画面,驱动两块独立屏。

如果你需要,我可以给你整理一份Dual‑Link花屏故障排查清单。

相关推荐
碧海银沙音频科技研究院3 小时前
炬芯ATS3089X手表的HFP通话不自动路由到设备BT的问题解决
网络·人工智能·嵌入式硬件·算法
youcans_8 小时前
【STM32C5教程】(3)GPIO 按键输入实验
stm32·单片机·嵌入式硬件
俊基科技9 小时前
回音消不掉、底噪压不住、主板还对不上口?——A-59P 多功能语音处理模组技术解析
嵌入式硬件·回音消除·ai降噪模块
滕州市燕猫虎计算机科技工作室个体工商户9 小时前
《Rust程序设计》学习笔记八:结构体
笔记·学习·rust·rust程序设计
别动我齐刘海10 小时前
Linux 系统调试学习1
linux·运维·服务器·c++·学习·机器学习·机器人
蓝天居士10 小时前
PY32F系列MCU在串口接收时跑飞的根因分析(2)
单片机·嵌入式硬件
xier_ran12 小时前
【infra之路】AI 编译器学习笔记(二):重拾 C++——移动语义与 LLVM 风格的类型转换
人工智能·笔记·学习
wuyk55514 小时前
嵌入式驱动开发:量产级工程化实战(第9篇)——低功耗下的通信可靠性
c语言·驱动开发·stm32·单片机·嵌入式硬件
li星野14 小时前
5 TYPES OF ADVERBS — One-Page Notes
学习
星恒随风14 小时前
Linux库的底层原理:ELF文件格式、静态链接、程序加载、虚拟地址空间与GOT/PLT详解
linux·运维·笔记·学习·状态模式