嵌入式MIPI-DSI小屏终端硬件设计与POGO连接方案
1. 项目概述
“小手机”是一个面向嵌入式人机交互学习与原型验证的紧凑型移动终端硬件平台。其核心设计目标并非复刻商用智能手机的全部功能,而是以工程可实现性、接口可扩展性与教学清晰性为优先级,在有限的物理尺寸(整机厚度控制在12mm以内)和成本约束下,构建一个具备完整显示、触控、音频输入/输出能力的独立运行终端。项目采用模块化架构:主控层由立创泰山派开发板承担,负责系统调度、图像合成与外设管理;显示与交互层则由本项目所设计的3.1英寸MIPI-DSI拓展板实现,二者通过高密度POGO弹簧顶针阵列进行非焊接式机械电气连接。
该设计规避了传统FPC排线反复插拔易损、弯折疲劳失效的问题,同时保留了调试阶段快速更换屏幕模组或主控板的灵活性。整个系统不依赖外部PC进行固件烧录或调试——泰山派自身集成USB转串口芯片(CH340G),配合标准Micro-USB接口即可完成全链路开发。从硬件选型到PCB布局,所有决策均围绕“一次布线、多次复用、故障隔离清晰”这一工程原则展开,使其既适用于高校嵌入式课程实验,也适合作为工业HMI简易终端的快速验证载体。
2. 硬件系统架构与接口设计
2.1 系统拓扑结构
整个硬件系统由两个物理上分离但电气紧密耦合的PCB组成:泰山派主控板(以下简称“主控板”)与本项目设计的“小手机”拓展板(以下简称“拓展板”)。二者之间不存在刚性连接器,而是通过两组POGO弹簧顶针实现信号与电源的可靠传导。这种连接方式在保证信号完整性的同时,显著降低了装配应力对FPC排线焊盘的损伤风险。
系统信号流向如下图所示:
- 视频通路:主控板MIPI-DSI接口 → 31pin 0.3mm间距同向FPC排线 → 拓展板DSI接收端 → 屏幕驱动IC(内置于LCD模组)
- 触控通路:主控板TP接口(I2C) → 6pin FPC排线 → 拓展板TP接口 → 触摸控制器(CTP,集成于LCD模组)
- 音频通路:主控板I2S + GPIO(用于CODEC复位/中断) → 拓展板音频Codec电路 → 扬声器 / 麦克风
- 背光控制通路:存在两条并行路径:
- 路径一(直驱):主控板GPIO直接输出PWM至屏幕背光LED阳极(需跳线选择)
- 路径二(智能调节):主控板I2C1总线 → GP7101背光驱动IC → 屏幕背光LED阴极(默认启用)
电源分配方面,拓展板仅从主控板获取5V输入,经本地LDO(AMS1117-3.3)稳压后供给触摸控制器、音频Codec及GP7101等外围芯片;屏幕背光LED则由专用DC-DC升压驱动器SY7021供电,其输入亦来自5V,但电流路径完全独立,避免大电流瞬态对数字逻辑电源造成干扰。
2.2 POGO顶针连接器设计
POGO顶针阵列是本项目机械与电气设计的关键创新点。拓展板边缘共布置两排共20颗Φ0.3mm行程的镀金弹簧探针,对应主控板侧的20个沉金焊盘。该布局严格遵循“电源-地-信号-地”的分组原则,其中:
- 第1、2、19、20位为GND,提供低阻抗回流路径;
- 第3、4位为5V电源输入,单针额定载流500mA,冗余设计确保总供电能力≥1A;
- 其余12个信号位按功能分组:DSI差分对(CLKP/CLKN, D0P/D0N, D1P/D1N, D2P/D2N, D3P/D3N)占用10位;TP_SCL/TP_SDA占用2位。
所有顶针底部均焊接0805封装的100nF陶瓷电容至GND,构成局部去耦网络,有效抑制高频开关噪声沿电源/信号线耦合。PCB上顶针焊盘采用沉金工艺,并设计0.1mm内缩环形焊盘,确保顶针压缩时接触点始终位于焊盘中心区域,避免偏移导致虚接。
2.3 MIPI-DSI与触摸接口实现
DSI接口采用标准31pin FPC排线(0.3mm pitch),其引脚定义严格遵循MIPI Alliance D-PHY v1.2规范。值得注意的是,本设计未将DSI的LP(Low-Power)模式控制线(LP-CTL)引出至主控板,而是将其在拓展板上拉至3.3V,强制屏幕工作在HS(High-Speed)模式。此举虽牺牲了部分功耗优化空间,但极大简化了主控端MIPI初始化流程——无需在HS与LP模式间频繁切换,降低了驱动开发复杂度,符合教学项目“先通后优”的定位。
触摸接口采用标准I2C总线,速率配置为100kHz。拓展板在TP_SDA与TP_SCL线上各串联一个1.5kΩ上拉电阻(R1/R2),上拉电源为3.3V。该阻值经实测验证:既能保证信号边沿陡峭度(上升时间<300ns),又可避免主控板I2C控制器内部弱上拉被过度加载而失效。触摸控制器地址固定为0x5D(7位地址),无需外部地址配置引脚,进一步降低硬件复杂度。
3. 显示子系统设计
3.1 LCD模组选型与电气特性
本项目选用的3.1英寸LCD模组具备以下关键参数:
| 参数 | 数值 | 说明 |
|---|---|---|
| 分辨率 | 480 × 800 | RGB排列,像素密度约296 PPI |
| 接口类型 | MIPI-DSI(1 lane) | 支持D-PHY v1.2,最大速率为1.5Gbps/lane |
| 亮度 | 500 cd/m²(典型) | 背光LED正向电压3.2V@20mA |
| 触摸类型 | 投射式电容(GFF结构) | 支持5点触控,报告速率为120Hz |
| 工作温度 | -20℃ ~ +70℃ | 满足工业级应用需求 |
该模组将显示驱动IC(Source/Gate Driver)、时序控制器(TCON)及触摸控制器(CTP)全部集成于柔性PCB(COF)之上,仅需提供MIPI视频流、I2C触控数据及独立背光电压即可正常工作。其物理尺寸(65.0mm × 45.0mm × 1.2mm)与拓展板预留空间高度匹配,四周无多余边框,利于整机小型化。
3.2 背光驱动电路分析
背光驱动采用双方案设计,兼顾兼容性与可调性:
3.2.1 SY7021升压驱动方案
SY7021是一款专为白光LED设计的电流模式升压转换器,内置0.2Ω MOSFET开关管,支持最高28V输出。本设计中,其典型工作参数如下:
- 输入电压:5.0V
- 输出电压:24V(由R5/R6采样网络设定)
- LED驱动电流:20mA(恒流精度±3%)
- 开关频率:1.2MHz
原理图中R5(1.2kΩ)与R6(3.9kΩ)构成分压采样网络,接入FB引脚。根据SY7021数据手册公式:
$$ V_{OUT} = V_{FB} \times \left(1 + \frac{R5}{R6}\right) $$
其中$V_{FB}$为内部基准电压(0.6V),代入得$V_{OUT} ≈ 24.6V$,满足4颗串联LED(每颗3.2V)所需电压裕量。R7/R8为BL(Backlight Enable)引脚上下拉电阻:R7(10kΩ)上拉使BL=1,驱动器常开;R8(10kΩ)下拉使BL=0,驱动器关闭。二者不可同时焊接,通过0Ω电阻跳线选择初始状态。
3.2.2 GP7101 I2C调光方案
GP7101是一颗I2C接口的8通道LED驱动器,本项目仅使用其第1通道(OUT1)驱动屏幕背光。其核心优势在于可通过I2C总线动态调节输出PWM占空比(0%~100%,8-bit分辨率),从而实现无级亮度调节。该芯片挂载于主控板I2C1总线下,地址为0x60(A0=A1=GND)。
电路设计要点:
- OUT1引脚经0Ω电阻R9连接至LED阴极,阳极接24V;
- I2C总线(SCL/SDA)上拉至3.3V,阻值4.7kΩ;
- VDD与VSS间跨接100nF陶瓷电容,抑制电源纹波;
- EN引脚直接接3.3V,使能芯片常工作。
两条背光路径通过0Ω电阻R10/R11进行物理隔离:当R10焊接、R11不焊时,启用GP7101调光;反之则启用SY7021直驱。该设计允许用户在不修改PCB的前提下,根据实际需求切换背光控制策略。
4. 音频子系统设计
4.1 音频Codec选型与接口
拓展板集成一颗单声道音频编解码器(Codec),型号为AC101。该芯片支持16/24-bit PCM数据格式,采样率范围8kHz~48kHz,内置Class-D功率放大器(输出功率1.2W@8Ω),可直接驱动8Ω/0.5W微型扬声器。其与主控板的连接关系如下:
| 主控板信号 | 拓展板信号 | 功能说明 |
|---|---|---|
| I2S_BCLK | BCLK | 位时钟,主控输出 |
| I2S_LRCK | LRCK | 帧同步时钟,主控输出 |
| I2S_DIN | DACDAT | DAC数据输入,主控输出 |
| I2S_DOUT | ADCDAT | ADC数据输出,主控输入 |
| GPIO_XX | RESET_N | 硬件复位,低电平有效 |
| GPIO_YY | IRQ_N | 中断请求,ADC/DAC FIFO状态 |
AC101的I2S接口工作于Slave模式,所有时钟均由主控板提供,确保时序严格同步。RESET_N引脚经10kΩ上拉电阻接3.3V,启动时由主控GPIO拉低10ms后释放,完成芯片内部寄存器初始化。IRQ_N引脚为开漏输出,需外接4.7kΩ上拉电阻,当ADC/DAC FIFO发生溢出或空标志时触发中断。
4.2 麦克风与扬声器接口
麦克风采用驻极体电容咪头(ECM),型号为SPU0410LR5H-QB。其输出为模拟差分信号,经AC101内部PGA(可编程增益放大器)调理后进入ADC。电路设计中,ECM的VDD引脚通过2.2kΩ电阻接3.3V,形成偏置电流;OUT+与OUT-分别经1μF隔直电容耦合至AC101的AINL_P/AINL_N引脚。该设计有效抑制电源噪声对微弱音频信号的干扰。
扬声器接口采用标准PH2.0双针端子,支持快速插拔。输出信号取自AC101的SPKOUT_L/P引脚,经22μF电解电容隔直后送至扬声器。为抑制高频EMI辐射,在SPKOUT_L与GND之间并联一个10Ω/1W电阻与100nF陶瓷电容组成的RC吸收网络,实测可降低辐射峰值12dB以上。
5. PCB设计与布局要点
5.1 叠层与阻抗控制
拓展板采用4层板设计,叠层结构为:
| 层号 | 名称 | 材料 | 厚度 | 特性 |
|---|---|---|---|---|
| L1 | Signal | FR-4 | 0.08mm | 器件面,高速信号走线 |
| L2 | GND | FR-4 | 0.15mm | 完整参考平面,低阻抗回流 |
| L3 | Power | FR-4 | 0.15mm | 5V与3.3V电源平面分割 |
| L4 | Signal | FR-4 | 0.08mm | 焊接面,低速信号与电源走线 |
DSI差分对(CLKP/CLKN, D0P/D0N等)严格按50Ω单端阻抗、100Ω差分阻抗进行线宽/线距计算(L1层,介质厚度4mil,εr=4.2),并全程包地处理,两侧距GND铜皮距离≥3W(W为线宽)。所有差分对长度偏差控制在±5mil以内,确保信号眼图张开度。
5.2 关键器件布局策略
- POGO顶针阵列:置于PCB长边中央,紧邻GND焊盘,缩短高频回流路径;
- FPC连接器:DSI与TP连接器并排放置在短边,朝向主控板,减少FPC弯折半径;
- SY7021与GP7101:远离数字信号密集区,其输入/输出电容(X5R 10μF)紧贴芯片引脚放置;
- AC101:位于PCB中部,ADC/DA音频路径保持对称,模拟地(AGND)与数字地(DGND)在芯片下方单点连接;
- 扬声器端子:置于PCB一角,远离高频数字器件,降低磁干扰。
所有晶振(如AC101所需12MHz)下方禁止布设任何走线,其接地焊盘通过多个过孔连接至L2层GND平面,形成低感抗接地。
6. BOM清单与关键器件选型依据
以下为拓展板核心物料清单(BOM),标注关键选型理由:
| 序号 | 器件 | 型号 | 封装 | 数量 | 选型依据 |
|---|---|---|---|---|---|
| 1 | DC-DC升压驱动 | SY7021ABC | SOT23-6 | 1 | 高效率(>90%),内置MOSFET,支持宽输入电压(2.5V~5.5V) |
| 2 | I2C背光驱动 | GP7101 | QFN24 | 1 | 支持I2C动态调光,8-bit PWM分辨率,低静态电流(1μA) |
| 3 | 音频Codec | AC101 | QFN32 | 1 | 单芯片集成ADC/DAC/Class-D PA,I2S Slave模式简化主控驱动 |
| 4 | POGO顶针 | YTC1P-3010-01 | 直插 | 20 | 行程0.3mm,接触电阻<50mΩ,镀金触点耐插拔>5万次 |
| 5 | FPC排线(DSI) | 31P 0.3mm 同向 | — | 1 | 符合MIPI D-PHY机械规范,屏蔽层完整覆盖 |
| 6 | FPC排线(TP) | 6P 0.3mm | — | 1 | 弯折半径≤3mm,满足紧凑空间安装 |
| 7 | LCD模组 | 3.1" MIPI 480×800 CTP | COF | 1 | 分辨率适配小尺寸,集成TCON与CTP,降低主控负载 |
| 8 | LDO稳压器 | AMS1117-3.3 | SOT223 | 1 | 输出电流1A,压差1.1V,成本低,成熟可靠 |
| 9 | 表贴圆螺母柱 | M2×2 | — | 4 | 铜镀锡材质,提供稳固机械支撑,适配M2螺丝 |
所有无源器件(电阻、电容)均选用车规级X5R/X7R材质,温度特性稳定,满足-40℃~105℃工作环境要求。PCB板材采用TG150 FR-4,玻璃化转变温度≥150℃,确保回流焊过程中尺寸稳定性。
7. 软件驱动与系统集成要点
7.1 屏幕初始化流程
泰山派主控需按以下顺序完成MIPI-DSI初始化:
- 电源序列:先使能5V→等待10ms→使能3.3V→等待10ms;
- DSI PHY配置:设置D-PHY参数(LP-to-HS timing, HS-to-LP timing);
- DSI Host配置:设置lane数(1)、video mode(burst)、pixel format(RGB888);
- 发送DSI指令:
0x11(Sleep Out)→ 等待120ms;0x29(Display On)→ 屏幕点亮;
- 背光使能:若使用GP7101,则通过I2C写入寄存器0x01(PWM占空比),值为0x80(50%亮度)。
该流程已封装为标准Linux DRM/KMS驱动框架下的panel-simple兼容驱动,可直接编译进内核。
7.2 触控与音频驱动
- 触控驱动:基于Linux Input子系统,注册为
i2c:goodix_ts设备。驱动读取CTP报告坐标后,经坐标映射(480×800)生成标准ABS_X/ABS_Y事件,供上层GUI(如Qt或Wayland)消费。 - 音频驱动:AC101驱动已纳入Linux ALSA SoC框架,设备节点为
/dev/snd/pcmC0D0p(Playback)与/dev/snd/pcmC0D0c(Capture)。用户可通过aplay/arecord命令直接测试。
所有驱动代码均开源,支持主流嵌入式Linux发行版(Buildroot/Yocto),无需额外补丁即可运行。
8. 调试与常见问题处理
8.1 屏幕无显示排查
- 现象:上电后屏幕全黑,无任何背光;
- 检查步骤:
- 用万用表测量POGO顶针第3/4位是否为5.0V±0.1V;
- 测量SY7021的VIN与SW引脚电压,确认SW有1.2MHz开关波形;
- 测量GP7101的VDD是否为3.3V,I2C总线SCL/SDA是否有波形;
- 检查DSI FPC排线是否插反(注意金手指方向标记);
- 查看dmesg日志,确认
mipi_dsi与panel-simple驱动是否成功probe。
8.2 触控失灵处理
- 现象:触摸无响应或坐标漂移;
- 解决方法:
- 检查TP FPC排线是否弯曲过度导致内部线路断裂(可用LCR表测通断);
- 用示波器观察TP_SDA/TP_SCL波形,确认I2C通信是否正常(ACK应答);
- 运行
i2cdetect -y 1,确认设备地址0x5D是否存在; - 检查触摸校准参数,运行
ts_calibrate重新生成/etc/pointercal。
8.3 音频杂音抑制
- 现象:播放音频时伴随高频啸叫;
- 优化措施:
- 确认AC101的MCLK是否由主控稳定提供(本设计未使用,故需禁用MCLK相关寄存器);
- 检查扬声器端子焊接是否虚焊,导致阻抗突变;
- 在AC101的PVDD与GND间增加一个100μF钽电容,增强电源滤波;
- 将I2S数据线(DACDAT/ADCDAT)远离DC-DC开关节点布线。
所有调试过程均无需拆焊,仅通过飞线或跳线即可完成信号注入与监测,体现了硬件设计对可维护性的充分考量。
