...
RS232对应设备节点:ttyS3(V1.2 版本)/ ttyS4 (V1.4 版本)
测试准备:
1.确认串口节点
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 方法1:查看所有串口 ls -la /dev/ttyS* # 方法2:根据硬件版本确定 # 查看板卡版本标记或运行: cat /proc/device-tree/model # 如果显示包含V1.4,则使用/dev/ttyS4 # 如果显示包含V1.2,则使用/dev/ttyS3 |
2.两分钟回环测试
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 步骤1:硬件短接(必须) # 使用导线短接RS232接口的TX(引脚2)和RX(引脚3) # 步骤2:准备测试工具 # 将uart测试程序上传到设备(如果从Windows传输) adb push C:\Users\Administrator\Desktop\uart ./ # 步骤3:赋予权限 chmod 777 ./uart # 步骤4:执行测试 # 终端1:接收数据 cat /dev/ttyS3 # 终端2:发送数据 /tmp/uart /dev/ttyS3 # 输入测试文本,在终端1查看接收结果 |
输出示例
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 终端2程序输出示例: # fcntl=0 # isatty success! # fd-open=3 # set done! # please input: # 此处等待用户输入(如45 3A F7 98) #终端1接收到终端2输入的数据(如45 3A F7 98) |
2.RS485串口测试
1.系统启动检查测试目的
验证 RK3588 设备的 RS485 串口(映射为系统设备/dev/ttyS0)与电脑端 UART Assist 工具的双向数据通信功能,确保串口硬件、驱动及链路的可用性。
2.测试环境
| 设备 / 工具 | 配置信息 |
|---|---|
| RK3588 设备 | 系统:嵌入式 Linux(如 Armbian) RS485 串口: /dev/ttyS0(波特率 115200、8N1) |
| 电脑端 | 工具:UART Assist(串口调试助手) 硬件:USB 转 RS485 模块(如 CH340+MAX485) |
| 链路 | RS485 接线:RK3588 的 RS485_A 接模块 A、RS485_B 接模块 B、共地(GND) |
3.硬件接线
4.测试步骤
| 代码块 | ||||
|---|---|---|---|---|
| ||||
cat /dev/ttyS0 | ||||
| 代码块 | ||||
| ||||
# 1. 检查UART设备节点
ls -l /dev/ttyS* # 或 /dev/ttyAML*
# 应看到ttyS2(对应UART2)
# 2. 查看dmesg中UART初始化信息
dmesg | grep -i "uart\|serial\|485"
# 正常输出示例:
# [ 2.560000] febc0000.serial: ttyS2 at MMIO 0xfebc0000 (irq = 45, base_baud = 1500000) is a 16550A
# [ 2.560100] febc0000.serial: RS485 enabled
# 3. 检查GPIO控制引脚
cat /sys/class/tty/ttyS2/rs485
# 正常输出应显示RS485配置 |
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 安装串口测试工具 sudo apt-get update sudo apt-get install -y minicom picocom screen # 安装Python测试库(可选) pip install pyserial |
...
三、显示与视频接口测试
1.HDMI/DP输出测试
1.规格说明:
| 接口 | 核心规格 | 关键限制 |
|---|---|---|
| HDMI 2.1 | 单接口、支持 8K@30Hz/4K@60Hz、HDCP2.3 | 需 HDMI2.1 认证线缆,最大带宽 48Gbps |
| DP 1.4a(4Lane) | 单接口、支持 4K@60Hz、HDCP2.3 | 8K 仅支持 30Hz,4K 可满帧 60Hz |
1.显示接口及分辨率列表查询
...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
执行命令: cat /sys/class/video4linux/video0/name 输出结果: stream_hdmirx 说明: stream_hdmirx 表示这是一个视频流 HDMI 接收设备(hdmirx = HDMI Receiver) |
| 设备节点 | 设备类型 | 功能说明 | 权限 / 设备号 |
|---|---|---|---|
| /dev/video0 | 字符设备(c 开头) | HDMI 输入视频采集设备(核心) | root/video 组可读写;主设备号 81,次设备号 0 |
| /dev/video-dec0 | 普通文件 | 系统视频解码设备 | root/video 组可读写 |
| /dev/video-enc0 | 普通文件 | 系统视频编码设备 | root/video 组可读写 |
3.查询设备驱动信息:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
readlink -f /sys/class/video4linux/video0/device/driver |
...
| 异常现象 | 可能原因 | 排查方法 |
|---|---|---|
| 终端提示 “No such device” | /dev/video0 节点不存在 | 1.检查 HDMI IN 驱动是否加载:lsmod grep rk_hdmirx
|
| 显示屏无播放窗口 | DISPLAY 环境变量配置错误 | 执行 echo $DISPLAY 确认值为 :0.0,或切换到本地终端执行命令 |
| 画面卡顿 / 花屏 | 信号源分辨率不兼容 | 将 HDMI 信号源输出分辨率调整为 1080P@60Hz 后重新测试 |
3.视频硬解码性能测试
1.测试环境(MPP 视频硬解码设备)
基于 Rockchip MPP(Media Process Platform)框架的硬解码工具信息:
| 项目 | 详情 |
|---|---|
| 工具名称 | ppvidedec |
| 工具版本 | 1.14.4 |
| 依赖库路径 | /usr/lib/aarch64-linux-gnu/gstreamer-1.0/libgstrockchipmpp.so |
| 支持编码格式 | HEVC/H.265、AVC/H.264、VP8、VP9 |
| 解码类型 | 硬件加速解码 |
| 最大解码能力 | 8K 10-bit 视频解码,支持 8K 60Hz 视频输出 |
2.测试步骤:
2.1.准备测试视频:
| 代码块 | ||||
|---|---|---|---|---|
| ||||
#1.本地测试视频路径: C:\Users\Administrator\Desktop\test_video\4K_60fps.mp4 # 2.通过 ADB 将视频推送至开发板: adb push "C:\Users\Administrator\Desktop\boot\4K_60fps.mp4" /tmp/ |
...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
#
top - 06:01:06 up 17:57, 1 user, load average: 2.10, 2.61, 2.56
Tasks: 276 total, 2 running, 274 sleeping, 0 stopped, 0 zombie
%Cpu(s): 3.8 us, 6.0 sy, 0.0 ni, 90.2 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 3899.3 total, 91.5 free, 822.6 used, 2985.2 buff/cache
MiB Swap: 0.0 total, 0.0 free, 0.0 used. 1694.6 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1981 root 20 0 4747336 266284 215960 R 50.0 6.7 877:37.20 Xorg
2456 blueber+ 20 0 1839264 74872 56884 S 12.5 1.9 60:46.06 xfwm4
2513 blueber+ 20 0 314400 39220 29936 S 12.5 1.0 44:54.98 xfce4-p+
38043 root 20 0 529528 23188 11316 S 12.5 0.6 0:13.87 gst-lau+
38263 root 20 0 9048 3400 2712 R 6.2 0.1 0:00.02 top
1 root 20 0 165012 9932 7220 S 0.0 0.2 5:17.56 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.45 kthreadd
3 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_gp
4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_par+
8 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 mm_perc+
9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_tas+
10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_tas+
11 root 20 0 0 0 0 S 0.0 0.0 0:04.57 ksoftir+ |
3.3状态分析
| 监控项 | 结果 | 说明 |
|---|---|---|
| CPU 整体负载 | 用户 3.8% + 系统 6.0% + 空闲 90.2% | 空闲占比超 90%,CPU 资源冗余充足;当前高占比进程为桌面服务(Xorg、xfwm4),属于系统基础负载 |
| 内存状态 | 总 3899MB,已用 829MB,可用 2968MB | 内存剩余充足,无内存不足风险 |
| 关键进程 CPU 占比 | 桌面服务(Xorg)占 50%,终端(tilda)占 12.5% | 若此时运行视频播放进程,需重点关注其 % CPU 值(硬解码生效时通常<10%) |
| 内存占用 | 已用 829MB,缓存占 2864MB | 内存缓存占比高,系统数据读写效率有保障 |
3.4测试结论:视频功能播放正常,无卡顿、花屏现象;CPU 占用率低(硬解码加速生效),系统资源负载符合预期。
...
card编号 | 设备名称 | 硬件接口 | 功能说明 |
|---|---|---|---|
0 | rockchiphdmi0 | HDMI0 | 第一个HDMI接口音频输出 |
| 1 | rockchipdp0 | DisplayPort0 | 第 1 路 DP 接口(仅支持视频输出,不支持音频) |
| 2 | rockchipdp1 | DisplayPort1 | 第 2 路 DP 接口(仅支持视频输出,不支持音频) |
| 4 | rockchipes8388 | ES8388 Codec | 板载音频接口(3.5mm 4 节接口,支持:耳机输出、扬声器输出、MIC 输入) |
...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 步骤1:通过adb连接设备(确保设备已开启调试模式) adb shell # 步骤2:推送测试音频文件到设备(电脑端执行) adb push C:\Users\Administrator\Desktop\test.wav /test.wav # 步骤3:查看设备音频输出列表(确认card编号对应关系) aplay -l # 步骤4:HDMI0音频输出测试 aplay -D plughw:0,0 /test.wav # 预期现象:HDMI连接的显示设备播放音频 # 步骤5:板载音频(耳机)输出测试 aplay -D plughw:4,0 /test.wav # 预期现象:3.5mm耳机播放音频 # 步骤6:硬件功能验证(正弦波测试,排除文件本身问题) speaker-test -D hw:4,0 -t sine -f 1000 -c 2 -l 2 # 预期现象:耳机输出1000Hz双声道正弦蜂鸣声 |
测试项 | 操作命令 | 预期结果 |
|---|---|---|
HDMI0 音频输出 | aplay -D plughw:0,0 /test.wav | 显示设备正常播放音频 |
| 板载耳机输出 | aplay -D plughw:4,0 /test.wav | 耳机正常播放音频 |
| 硬件正弦波测试 | speaker-test -D hw:4,0 -t sine -f 1000 -c 2 -l 2 | 耳机输出蜂鸣声 |
2.音频输入功能验证
1.列出所有音频采集设备
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 查看系统音频设备列表(重点关注“Capture”(输入)设备) arecord -l |
...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
**** List of CAPTURE Hardware Devices **** card 3: rockchiphdmiin [rockchip,hdmiin], device 0: rockchip,hdmiin i2s-hifi-0 [rockchip,hdmiin i2s-hifi-0] Subdevices: 1/1 Subdevice #0: subdevice #0 card 4: rockchipes8388 [rockchip-es8388], device 0: dailink-multicodecs ES8323.3-0010-0 [dailink-multicodecs ES8323.3-0010-0] Subdevices: 1/1 Subdevice #0: subdevice #0 |
| 设备类型 | 关键信息 & 用途 | 状态 | 说明 |
|---|---|---|---|
| card 3: rockchiphdmiin device 0 | HDMI-IN 音频采集卡 | 对应 Rockchip 芯片的 HDMI 输入音频通道 用于采集 HDMI 信号中的音频流 | 正常识别(Subdevices: 1/1) |
| card 4: rockchipes8388 device 0 | 板载音频编解码芯片 | ES8388/ES8323 是低功耗音频 Codec 用于板载麦克风 / 扬声器的音频采集 / 播放 | 正常识别(Subdevices: 1/1) |
4.录音测试(实时采集+播放)
| 代码块 | ||||
|---|---|---|---|---|
| ||||
# 功能:实时采集音频输入(hw:4,0)并输出到音频输出(hw:0,0) # 参数说明: # - arecord端: # -D hw:4,0:指定音频输入设备(需根据实际`arecord -l`结果调整) # -r 48000:采样率48000Hz(适配多数音频设备) # -c 2:立体声采集(若MIC为单声道,可改为-c 1) # -f s16_le:16位小端音频格式(通用兼容格式) # -t raw:以原始格式传输(避免文件编码开销) # - aplay端: # -D hw:0,0:指定音频输出设备(如HDMI/板载扬声器) # - 其余参数与arecord保持一致(确保格式匹配) # - &:后台运行(避免终端阻塞) arecord -D hw:4,0 -r 48000 -c 2 -f s16_le -t raw | aplay -D hw:0,0 -r 48000 -c 2 -f s16_le -t raw & |
...
| 代码块 | ||||
|---|---|---|---|---|
| ||||
[ 5] local 192.168.1.10 port 5001 connected to 192.168.1.20 port 5201 [ ID] Interval Transfer Bitrate Jitter Lost/Total Datagrams [ 5] 0.00-10.00 sec 119 MBytes 100 Mbits/sec 0.035 ms 0/85000 (0%) # 丢包率:0% |
6.常见场景测试
| 测试目标 | 命令示例 |
|---|---|
| 长连接稳定性(1 小时) | iperf3 -c [IP] -t 3600 |
| 多线程并发测试 | iperf3 -c [IP] -P 4(4 线程) |
| 限制带宽测试 | iperf3 -c [IP] -b 500M(限制为 500Mbps) |
2.蓝牙连接测试
...
