结论:三块 ESP32-P4 板上的「30 FPS」是验收目标,不是已达成的硬件事实。3.5 寸走 SPI(ST7796),4.3 与 5 寸走 MIPI-DSI 2-lane,显示链路不同;按 16 位色深计算,30 FPS 的裸像素带宽需求依次约为 9.22、23.04、55.30 MB/s。三块板必须分别实测满屏与局部刷新,不能用同一套 HMI 代码推断性能相同。
先把「30 FPS」定性:它是验收目标,不是硬件事实
很多方案文档会把 30 FPS 直接写进规格,仿佛它已经实现。在这三块板上不能这么写:30 FPS 是验收目标,尚非硬件事实。3.5 寸的 SPI 显示链路与另外两块 MIPI-DSI 板子不同,需要分别测量满屏刷新、局部刷新、PSRAM 和总线占用。结论很直接——不能因为三块板跑的是同一套 HMI 代码,就推断三者的性能相同。
三条链路的物理差异在哪
SPI 是一条同步串行总线:时钟由主控产生,数据按位依次发送,通常还要和同一总线上的其他外设分时共享。MIPI-DSI 是显示专用的高速差分接口,用 1 条或多条 lane 并行传像素数据,天生为刷屏设计。这里的差别不在「谁更快」,而在它是共享总线还是专用通道。
三块板的分工正好卡在这条线上:3.5 寸用 ST7796 走 SPI 并带 FT6336 触摸;4.3 寸和 5 寸用 MIPI-DSI 2-lane。把它写成一句话:3.5 寸是在一条通用总线上刷屏,另外两块是在专用通道上刷屏,后者的理论余量更大,但这只是起点,不是结论。
裸带宽算一遍:每块板每帧要搬多少字节
先算清楚工作量,再谈能不能做到。下表按 16 位色深(RGB565)与 30 FPS 上限计算,给出的是裸像素带宽需求——是推导值,不等于实测帧率,也不包含触摸、音频、网络占用的余量。
| 板卡 | 原生像素 | 横屏 UI 目标 | 显示接口 | 每帧字节(16 位) | 30 FPS 裸带宽需求 |
|---|---|---|---|---|---|
| ESP32-P4-WIFI6-Touch-LCD-3.5-EN | 320×480 | 原生竖屏 | SPI,ST7796 | 307,200 B(约 300 KiB) | 约 9.22 MB/s |
| ESP32-P4-WIFI6-Touch-LCD-4.3 | 480×800 | 800×480 | MIPI-DSI 2-lane | 768,000 B(约 750 KiB) | 约 23.04 MB/s |
| ESP32-P4-WIFI6-Touch-LCD-5-C | 720×1280 | 1280×720 | MIPI-DSI 2-lane | 1,843,200 B(约 1.76 MiB) | 约 55.30 MB/s |
这张表已经说明了为什么不能一把尺子量三块板:5 寸屏每帧要搬的字节是 3.5 寸的 6 倍。同样的动画效果,在 3.5 寸上可能宽裕,在 5 寸上就是六倍的搬运量。反过来说,「屏小就好做」也不成立——3.5 寸的接口是三者中最受限的一条。
带宽够了仍然可能掉帧:PSRAM 与总线占用
像素带宽只是必要条件,不是充分条件。真正决定帧率的是数据从哪来、经过谁、在哪里排队:如果帧缓冲放在 PSRAM,每一次刷屏都要从 PSRAM 读一遍再送到屏上,而 PSRAM 的访问带宽同时还要被其他任务分享。这就是为什么测量清单里必须包含 PSRAM 占用和总线占用,而不只是看屏的接口型号。
局部刷新是另一条关键路径。赛道仪表上大量区域是静态的,只有转速、速度、G 值在变。只重绘变化区域,可以把每帧的搬运量降到远低于全屏的值;这一点对 SPI 链路尤其重要,因为它本来就没有多少余量。要求「满屏 30 FPS」和「界面 30 FPS 感受」是两件不同的事,验收时必须分开定义。
尺寸不是唯一变量:三块板的其它差异
把三块板当成「除了屏大小都一样」是常见误判。至少 Flash、触摸 IC 和板载传感器的记载就不同。
| 项目 | P4-3.5-EN | P4-4.3 | P4-5-C |
|---|---|---|---|
| 主控 | ESP32-P4NRW32 + ESP32-C6 | ESP32-P4NRW32 + C6-MINI-1 | ESP32-P4NRW32 + C6-MINI-1 |
| PSRAM | 32MB | 32MB | 32MB |
| Flash | 16MB | 32MB | 32MB |
| 触摸 IC | FT6336(I2C) | 概览页未列 | 概览页未列 |
| 板载 IMU | Wiki 未列 | Wiki 未列 | Wiki 未列 |
| 资料完整度 | 概览页未列板载 IMU | 概览页未列触摸 IC | 概览页未列触摸 IC;采购记录为带摄像头版 |
三点提示:其一,4.3 与 5 寸的触摸 IC 在概览页里没有列出,需要从官方资料继续查,不能凭经验填;其二,三块 P4 板 Wiki 均未列板载 IMU,G 值这类数据要外接传感器并单独核实;其三,外接传感器与车源同样要单独设计——芯片的 TWAI 外设不等于可直接接车载 CAN,车电保护、隔离收发器、车型信号和接插件都要另做。
该测什么:四项,缺一不可
- 满屏刷新——全屏一次性重绘,记录实测帧时间与掉帧情况。
- 局部刷新——只重绘变化区域,观察帧率与画面一致性。
- PSRAM 占用——帧缓冲与素材常驻后的可用余量,以及刷屏期间的峰值占用。
- 总线占用——SPI 链路要单独看总线在刷屏、触摸、SD 之间的分时表现。
四项都要在完整功能固件下测量,不能用只点屏的最小 demo 代替。现有 P4 共用工程目前只有模拟速度、转速和失联首屏,趋势、行程、诊断和真实 OBD 网关尚未开发,因此当下的帧率数据不代表整机表现。
常见问题
三块 P4 板现在能做到 30 FPS 吗?
不能下这个结论。30 FPS 是验收目标而非硬件事实,需要按满屏刷新、局部刷新、PSRAM 和总线占用四项分别在完整功能固件下实测,目前没有可引用的实测数据。
MIPI-DSI 的 4.3 和 5 寸一定比 SPI 的 3.5 寸流畅吗?
不能直接比较。接口只是起点,实际帧率还取决于 PSRAM 访问带宽、DMA 配置、局部刷新策略与总线占用。5 寸每帧搬运量是 3.5 寸的 6 倍,接口更宽不代表结果更好,必须各自实测。
为什么 3.5 寸的 SPI 链路更受关注?
因为 SPI 是共享总线,刷屏要和同一总线上的其它外设分时,且每帧 307,200 字节的搬运量没有多少余量。局部刷新对它的价值最大,也最需要验证。
外接 OBD 会占用显示带宽吗?
不会直接占用显示接口,但会通过 CPU 与内存访问间接竞争。芯片的 TWAI 外设不等于可直接接车载 CAN,车电保护与隔离收发器要另做;总线占用必须在完整功能固件下测量才能反映真实竞争。
本文数据来自星核火花赛车科技内部车载仪表研究项目的《五块赛道产品候选板硬件事实表》(核查日期 2026-10-03)。表中带宽为按 16 位色深与 30 FPS 推导的裸像素需求,非实测帧率;「30 FPS」保留为待验证的验收目标。