双通道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花屏故障排查清单。

相关推荐
yyyang885 小时前
蓝牙系统整体架构详解
学习·信息与通信
无敌贵点大王5 小时前
从寄存器层面重学STM32(6)——串口USART实战部分
stm32·单片机·嵌入式硬件
Linux-lucky5 小时前
46-Linux学习之旅之LVS负载均衡与keepalived高可用
linux·运维·学习·ubuntu·负载均衡·lvs
国科安芯7 小时前
长期在轨的计算底座:商业空间站与在轨服务飞行器健康管理中的抗辐射MCU—— 面向可维护空间平台的分层容错与安全通信综述
人工智能·单片机·嵌入式硬件·安全·低轨卫星·抗辐射
金色光环7 小时前
【DSP学习】C2000_ADC中断_笔记
笔记·学习
Дерек的学习记录7 小时前
Unreal Engine 5:第三人称运动系统和人物动画
开发语言·学习·ue5
zhangrelay7 小时前
mrpt杂乱笔记-26-10-31
笔记·学习
衡石科技8 小时前
让多轮问数保持口径一致:Data Agent 的上下文、偏好与学习开关
人工智能·学习·安全
不昀9 小时前
RMII切到10Mbps,50MHz参考时钟也要降到5MHz吗?
单片机·嵌入式硬件·硬件设计·以太网接口
東隅已逝,桑榆非晚9 小时前
算法2. 双指针法-复写零
c++·笔记·学习·算法