【北京迅为】《iTOP-3588开发板快速测试手册》第三章 Buildroot系统功能测试

RK3588是一款低功耗、高性能的处理器,适用于基于arm的PC和Edge计算设备、个人移动互联网设备等数字多媒体应用,RK3588支持8K视频编解码,内置GPU可以完全兼容OpenGLES 1.1、2.0和3.2。RK3588引入了新一代完全基于硬件的最大4800万像素ISP,内置NPU,支持INT4/INT8/INT16/FP16混合运算能力,支持安卓12和、Debian11、Build root、Ubuntu20和22版本系统。了解更多信息可点击迅为官网

【粉丝群】824412014

【实验平台】:迅为RK3588开发板

【内容来源】《iTOP-3588快速测试开发板手册》

【全套资料及网盘获取方式】联系淘宝客服加入售后技术支持群内下载

【视频介绍】:【强者之芯】 新一代AIOT高端应用芯片 iTOP -3588人工智能工业AI主板


第三章 Buildroot系统功能测试

烧写buildroot系统镜像,buildroot系统镜像在网盘资料"iTOP-3588开发板\01_【iTOP-RK3588开发板】基础资料\06_iTOP-RK3588开发板Linux镜像\01_Buildroot镜像"目录下,本小节测试buildroot系统。

3.1系统启动

Buildroot系统启动后,串口如下图所示:

如果连接了屏幕,是可以看到系统桌面的,桌面显示如下图所示,默认已经支持wayland桌面环境及一些QT应用。

3.2多路视频播放测试

多路视频播放器用于测试设备的多路视频播放能力,显示能力以及硬件解码能力,点击启动桌面上的"multivideoplayer"应用会自动循环播放九路视频的demo,如下图所示:

3.3 GPU测试

glmark2是一个用于测试图形处理单元(GPU)性能的开源基准测试工具。它基于OpenGL API,并使用了一系列的渲染场景和特效来评估GPU的性能表现。点击桌面上的"glmark2"应用,启动后将进行GPU测试,测试过程如下图所示:

测试完成之后可以在终端得到相应的得分,如下图所示:

3.4系统信息查询

查看内核和 cpu 信息,输入如下命令:

uname -a

查看操作系统信息:

cat /etc/issue

查看环境变量信息:

env

3.5 U盘测试

当插入 U 盘以后,U 盘的格式必须为 FAT32 格式,大小在 32G 以下(底板上 4 个 USB 接口都可以插入U 盘),如下图所示。

方法一:

1 将U盘(U盘的格式必须为FAT32格式,大小在32G以下)插到开发板的usb接口,串口打印信息如下所示,U盘的设备节点是/dev/sda1。U盘的设备节点不是固定的,根据实际情况来查看设备节点。

2 在buildroot系统下,U盘会自动挂载到/mnt/udisk目录下,可以通过"df -h"命令查看挂载路径,如下图所示:

如下图所示:

方法二:

Buildroot 支持自动挂载外部存储设备,连接屏幕以后,打开桌面上的"qfm"APP,依次点击"USB Disk",就会进入U盘挂载目录。U 盘挂载路径:/udisk ,如下图所示:

3.6 TF卡测试

方法一:

1 将TF卡(TF 卡的格式必须为FAT32格式,大小在32G以下)插到开发板的TF 卡插槽,正常情况下串口打印信息如下图所示:

2 默认情况下TF卡挂载到 /mnt/sdcard目录下,输入以下命令查看挂载目录:

df -Th

方法二:

Buildroot 支持自动挂载外部存储设备,连接屏幕,打开桌面上的"qfm"APP,依次点击"SD Card",进入TF卡挂载路径,如下图所示:

3.7 USB鼠标键盘测试

将USB鼠标和键盘接入iTOP-3588开发板的usb接口,串口终端的打印信息如下图所示:

此时在屏幕上出现箭头光标,鼠标和键盘已可正常使用。

当拔掉usb鼠标和键盘时,串口终端打印如下:

此时屏幕上箭头光标消失,鼠标已成功去除。

3.8 Linux 485 测试

本章节配套资料在网盘资料" iTOP-3588开发板\02_【iTOP-RK3588开发板】开发资料\09_系统外设功能测试\01_buildroot系统测试配套资料\01_485测试配套资料"目录下。

3.8.1 485硬件连接

485电路图如下图所示:

由原理图可知,485使用的串口0,可以通过/dev/ttyS0来控制。接下来使用USB转RS485模块进行测试(需要自行准备)。USB转RS485模块如下图所示:

由原理图可知,开发板底板上1号引脚是B,2号引脚是A ,4号引脚连接地,然后将 1 2引脚连接到 USB转RS485模块上,A接A,B接B,如下图所示:

USB转RS485模块的usb端口连接到电脑上。

3.8.2 测试485

开发板发送数据测试:

注意,默认波特率为115200!

进入到测试例程目录下,如下图所示:

在电脑上打开串口助手,选择对应的串口号和波特率,注意:默认波特率为115200!

打开串口,如下图所示:

输入以下命令运行测试程序发送数据,发送的数据为123456789,数据信息可以自定义

./uarttest /dev/ttyS0 send 123456789

电脑端接收到信息,如下图所示:

输入以下命令开发板接收数据,如下图所示:

./uarttest /dev/ttyS0 recv

电脑端发送数据,如下图所示:

开发板收到数据,如下图所示:

485测试完毕。

3.9 wifi连接测试

方法一

qsetting 是系统设置工具,其中可以设置 WiFi 连接。进入桌面"qsetting",点击WiFi后,点击右上角开关打开 WiFi ,设备将自动搜索周围WiFi。

点击想要连接的WiFi名,输入密码完成连接,如下图所示:

方法二

除此之外也可以使用命令进行连接wifi。进入到/topeet_test/02_wifi/目录下,如下图所示:

在测试wifi之前,将有线关闭,输入以下命令:

ifconfig eth0 down

ifconfig eth1 down

运行wifi_sta_connect.sh脚本,连接wifi,如下图所示,输入选择连接的wifi名称和密码。

wifi连接好后,ping下百度检查是否链接成功。

ping www.baidu.com

链接成功如下图所示:

3.10 蓝牙测试

首先烧写buildroot系统,然后使用以下命令运行bluetoothctl交互命令,如下图所示:

bluetoothctl

使用命令power on打开蓝牙,蓝牙默认是关闭的,并且重启系统之后默认也会关闭。输入以下命令:

power on

使用命令agent on选择要连接的设备类型或者去选择一个特定的类型,输入以下命令:

agent on

如果你在agent命令之后按下俩次tab键,可以看到一些可以使用的类型列表,比如DisplayOnly,KeyboardDisplay等等,如下图所示:

使用default-agent 命令去确认并完成要连接的设备类型

default-agent

使用advertise on命令尝试打开BLE广播包,来确认Bluez的BLE模块是否初步正常, 显示如下所示即正常。

然后使用以下命令进行蓝牙扫描,一段时间之后使用第二条命令打印扫描到的设备信息,如下图所示:

scan on

使用devices命令去获得想要去配对的设备MAC地址

devices

使用命令pair MAC_address 去配对设备(使用Tab键可以自动补全MAC地址),作者连接A4:46:B4:D5:95:E6,这里作者已经连接过了。

使用命令 connect MAC_address 去连接设备。作者连接A4:46:B4:D5:95:E6。

使用命令 connect MAC_address 去连接设备。作者连接A4:46:B4:D5:95:E6。

配对成功之后,手机的显示如下图所示:

在手机中播放一首歌曲,在开发板上连接上耳机,便可以播放音乐。

至此,在buildroot系统下的蓝牙测试成功。

3.11 千兆以太网测试

首先准备一个千兆路由器,一根千兆网线,开发板俩个网口都可以连接外网,将网口通过网线连接到路由器的千兆口。

在串口终端也可以查看IP地址,可以根据自己的需求选择连接的网口并使用命令查看网口的IP,如下图所示:

ifconfig eth0 //查看网口0的IP

输入以下命令对网口的连通性测试,俩个网口都支持连接外网。

ping -I eth0 -c 10 www.baidu.com

3.12 4G模块测试

配套资料在网盘资料"iTOP-3588开发板\02_【iTOP-RK3588开发板】开发资料\09_系统外设功能测试\01_buildroot系统测试配套资料\02_4G模块测试配套资料"目录下。

iTOP-3588开发板上预留了一个4G /5G接口,可以连接迅为提供的 EM05-CE模块(全网通4G模块)。

首先准备一个 EM05-CE模块连接到iTOP-3588开发板的 PCIE 接口上,然后准备一个 4G天线,接到 EM05-CE模块的天线座上面,然后插入一张能联网的 SIM 卡,如下图所示:

然后进入到/topeet_test/03_4g/目录下,如下图所示:

然后执行以下命令运行连接脚本,如下图所示:

./quectel-CM &

输入命令"ifconfig"会有 wwan0 出现,如下图所示:

然后输入以下命令,ping一下百度的ip,可以看到已经能上网了,如下图所示:

ping -I wwan0 www.baidu.com

如果发现只能 ping 通 IP 不能 ping 通网址,是因为 DNS 没有设置对,在 etc 下有一个文件 resolv.conf。

vi resolv.conf

配置以下为可用的 DNS。

nameserver 8.8.8.8

nameserver 202.99.160.68

nameserver 221.130.33.52

nameserver 221.130.33.60

nameserver 192.168.1.1

nameserver 114.114.114.114

编辑完保存,即可发现可以 ping 通外网。

3.13 can测试

iTOP-3588开发板支持can接口,底板上can接口如下图所示:

本次测试使用了 usbcan 调试分析仪作为测试设备,将 usbcan 调试分析仪通道一的 L 连到开发板的L, 将通道一的 H 连到开发板的H,如下图所示:

输入以下命令,查询当前网络设备,如下图所示:

ifconfig -a

输入以下命令关闭CAN,如下图所示:

ip link set can0 down

输入以下命令,设置 can0 仲裁段1M波特率,数据段3M波特率如下图所示:

ip link set can0 type can bitrate 1000000 dbitrate 3000000 fd on

输入以下命令,打印can0信息,如下图所示:

ip -details link show can0

输入以下命令打开 can0 通道,如下图所示:

ip link set can0 up

自此开发板的基础配置就完成了,然后是模式的选择。 首先将iTOP-3588开发板作为接收端,使用如下命令:

candump can0 &

然后在 PC 端 usbcan 的上位机发送数据如下图所示:

上位机的数据发送后,开发板的终端会收到相应的数据,如下图所示:

接下来将iTOP-3588开发板作为发送端,使用如下命令发送相应的数据:

cansend can0 123#DEADBEEF

然后在 usncan 的 Windows 上位机会返回如下信息:

至此,can功能测试完毕

3.14 SATA硬盘测试

iTOP-3588开发板使用SATA硬盘时需要用到SATA线和电源线(默认不提供,需要自行准备),注意: 为防止烧坏的情况发生,板子请先断电再接上SATA硬盘。

SATA线如下图所示:

电源线如下图所示:

iTOP-3588开发板连接硬盘如下图所示:

硬件接好后,开发板上电,会产生对应的设备,使用相同的命令进行挂载即可。如果进入了图形界面,系统会对硬盘自动进行挂载。

3.15 M2接口固态硬盘测试

磁盘驱动器的速度是以一个单位时间内读写数据量的多少来衡量的。DD 命令是一个简单的命令行工具,它可用对磁盘进行任意数据块的读取和写入,同时可以度量读取写入的速度。将会使用 DD 命令来测试 SSD 磁盘的读取和写入速度。

iTOP-3588开发板支持M.2接口的固态硬盘,这里以爱国者固态硬盘P2000为例,启动前将固态硬盘插入 M.2 接口(在开发板的背面),如下图所示:

pci是一种总线,而通过pci总线连接的设备就是pci设备。PC上常用的设备很多都是采用pci总线,如:网卡、存储等。输入以下命令显示所有的pci设备信息。

lspci

输入以下命令查看生成的设备节点

ls /dev/nvme0*

输入以下命令挂载固态,将固态硬盘挂载到/nvme/目录下,挂载目录可以随意指定,如下图所示:

mkdir nvme

mount /dev/nvme0n1 /nvme/

挂载完,如下图所示:

3.16 HDMI测试

开发板支持HDMI接口,首先准备一个HDMI接口的屏幕,如下图所示:

开发板上的hdmi接口如下图所示,连接上下图中的任意一个HDMI TX接口均可显示:

然后使用购买开发板配套的hdmi线,将这俩接口连接起来,屏幕便可显示。

如果将两个HDMI 接口同时接上屏幕,默认会双屏同显。

3.17 按键测试

首先启动开发板,通过调试串口登录到开发板上,如下图所示:

然后在串口终端输入"cat /proc/bus/input/devices"命令,查看Linux系统的输入设备,如下图就是用户按键设备信息所示:

从上图可以看到用户按键的事件号是event2(如果有接触摸屏,用户按键的事件号有可能会是event3),然后在串口终端输入"od -x /dev/input/event2"命令,接着按下开发板上的按键(VOL+或者VOL-或者HOME或者BACK),可以看到获取到的按键上报数据(十六进制方式),运行结果如下图所示:

3.18 RTC时钟测试

Linux系统下分为系统时钟和硬件时钟。分别使用 date 和 hwclock 命令查看。系统时钟在系统断电以后会丢失,硬件时钟在有纽扣电池的情况下,系统断电,时钟不会丢失。在系统每次启动的时候,系统时钟会和硬件时钟进行同步。

首先启动开发板,通过调试串口登录到开发板上,如图所示:

查看系统时钟在串口终端输入"date"命令,运行结果如图所示:

查看硬件时钟,在串口输入"hwclock -u"命令查看硬件时钟,运行结果如图所示:

也可以使用 date 命令来设置系统时间,例如置系统时间为2022 年 3月4号12:30:00,在串口终端输入命令"date -s "2022-3-04 12:30:00"",设运行结果如图所示:

然后使用"hwclock --systohc -u"命令把当前系统的时间同步到硬件时钟里面,然后使用"hwclock -u"命令查看硬件时钟。运行结果如图所示:

3.19 UVC 摄像头测试

iTOP-rk3588 支持 OV5695 MIPI 摄像头,同时也支持 UVC 摄像头。首先来测试一下UVC 摄像头,将USB 摄像头插入开发板,将自动安装 uvc 驱动。

|-------------------------|
| 摄像头识别检测 |
| v4l2-ctl --list-devices |

由上图可知,/dev/video21和22 为 USB 摄像头节点

|---------------------------------------------|
| 查看摄像头支持的格式 |
| v4l2-ctl --list-formats-ext -d /dev/video20 |

|-----------------------------|
| 摄像头采集格式查询 |
| v4l2-ctl -V -d /dev/video20 |

终端输入"qcamera",应用启动后将自动显示摄行头拍摄画面,如下图所示:

3.20 OV5695/OV13850摄像头测试

开发板默认支持摄像头接口。摄像头接口是一个20PIN,间距为2.0mm的双排插针,底板提供4个摄像头接口,默认可以使用J1接口,连接的时候需要摄像头朝向缺口处安装。

迅为提供的OV5695摄像头模块如下图所示。

|-------------------------|
| 摄像头识别检测 |
| v4l2-ctl --list-devices |

由上图可知,/dev/video11 为 USB 摄像头节点

|---------------------------------------------|
| 查看摄像头支持的格式 |
| v4l2-ctl --list-formats-ext -d /dev/video11 |

|-----------------------------|
| 摄像头采集格式查询 |
| v4l2-ctl -V -d /dev/video11 |

|-----------------------------------------------------------------------------------------------------------------------------|
| 摄像头图像预览 |
| gst-launch-1.0 v4l2src device=/dev/video11 ! \video/x-raw,format=NV12,width=800,height=1280,framerate=30/1 ! autovideosink |

也可以点击桌面上的"qcamera"应用对摄像头进行预览,启动后将自动显示摄行头拍摄画面,如下图所示:

3.21 看门狗测试

看门狗是嵌入式系统中经常使用的功能,iTOP-3588中看门狗的设备节点为/dev/watchdog。

首先来到/topeet_test/04_watchdog目录下,在该目录中存放了看门狗的测试程序,如下图所示:

测试程序第一个参数为看门狗设备节点,第二个参数为看门狗重启时间,输入以下命令运行程序。

./watchdog /dev/watchdog 5

程序执行之后,程序会先启动看门狗,然后喂狗,最后停止喂狗,开发板重启。表明看门狗开启喂狗,喂狗重启功能都是正常的。

3.22 耳机测试

iTOP-3588开发板板载耳机接口,如下图所示:

测试音频存放路径为/topeet_test/05_headphone/,如下图所示:

输入以下命令播放,可以听到耳机里面发出声音。

aplay 1.wav

3.23 麦克风测试

iTOP-3588开发板板载麦克风接口,如下图所示,将麦克风连接到此接口。

输入以下命令开始录音,录音时间为10秒钟,保存为"test.wav"。

arecord -d 10 -f cd -r 44100 -c 2 -t wav test.wav

参数解析

-d 指定录音的时长,单位时秒

-f 指定录音格式

-r 指定了采样率,单位时Hz

-c 指定channel 个数

-t 指定生成的文件格式

使用以下命令用耳机播放刚刚录制的声音,耳机会传来刚刚录制的声音。

aplay test.wav

至此,声卡、麦克风和耳机测试完毕。

3.24 喇叭测试

iTOP-3588开发板板载喇叭接口,如下图所示,将喇叭接到此接口。

测试音频仍旧使用/topeet_test/05_headphone目录下的1.wav,如下图所示:

然后输入以下命令播放,可以听到喇叭里面发出声音。

aplay 1.wav

3.25 屏幕背光调节

背光的亮度设置范围为(0--255),255表示亮度最高,0表示关闭背光亮度。进入系统后在终端输入如下命令进行背光测试。以下的测试命令适用于迅为的MIPI 7寸屏幕,LVDS7寸屏幕,LVDS10.1寸屏幕。

|-----------------------------------------------|
| 查看当前屏幕背光值 |
| cat /sys/class/backlight/backlight/brightness |

|----------------------------------------------------|
| 背光熄灭 |
| echo 0 >/sys/class/backlight/backlight/brightness |

3.26 EMMC测试

下面简单测试 eMMC 的读写速度,以读写 ext4 文件系统为例。注意:为确保数据准确,请重启开发板后测试读取速度。

dd if=/dev/zero of=/test bs=1M count=500 conv=fsync//写入测试

dd if=/test of=/dev/null bs=1000M //读取测试

3.27 HDMI IN测试

注:主机不能同时接多个视频线,且不能使用转接头。

将HDMI_RX与电脑端口连接,如下图所示:

HDMI-IN 设备在内核中会被注册为video设备,生成的节点如:/dev/video20,输入以下命令查看hdmiin生成的设备节点:

v4l2-ctl --list-devices

打开桌面的Qt V4L2 test Utility应用,点击左上角蓝色文件夹图标,选择video20打开,如下图所示:

选择打开后,点击左上角绿色箭头图标即可开始运行,如图所示:

运行后,即可显示HDMI桌面。

3.28 NPU查询

查询NPU驱动版本

cat /sys/kernel/debug/rknpu/driver_version

查询NPU利用率

cat /sys/kernel/debug/rknpu/load

查询NPU电源状态

cat /sys/kernel/debug/rknpu/power

打开/关闭NPU电源

echo on > /sys/kernel/debug/rknpu/power

echo off > /sys/kernel/debug/rknpu/power

3.29蜂鸣器测试

PWM 提供了用户层的接口,在 /sys/class/pwm/ 节点下面,PWM 驱动加载成功后,会在 /sys/class/pwm/ 目录下产生 pwmchipX 目录,如下图所示:

设备树中打开了3个 PWM,系统会将已经打开的 PWM 按照 PWM 编号顺序放置在/sys/class/pwm 目录,此处 pwmchip0 对应的是 PWM1,pwmchip1 对应 PWM12,pwmchip2 对应 PWM15,其中蜂鸣器使用的是PWM15 ,我们进入到 pwmchip2 目录,如下图所示:

使用以下命令测试蜂鸣器:

echo 0 > /sys/class/pwm/pwmchip2/export

echo 366300 > /sys/class/pwm/pwmchip2/pwm0/period

echo 260000 > /sys/class/pwm/pwmchip2/pwm0/duty_cycle

echo 1 > /sys/class/pwm/pwmchip2/pwm0/enable //开启

echo 0 > /sys/class/pwm/pwmchip2/pwm0/enable //关闭

修改第二句和第三句命令中的参数以修改 pwm 的占空比来控制蜂鸣器发出声音的大小。

3.30 mpp测试

调用mpi_dec_test,解码视频,将h264转为yuv,如下图所示:

mpi_dec_test -i /oem/200frames_count.h264 -t 7 -n 250 -o /test.yuv -w 640 -h 480

使用命令tail -f /var/log/messages监控输出,如下图所示:

调用mpi_enc_test,编码视频,将yuv转为h264,如下图所示:

mpi_enc_test -i /test.yuv -t 7 -n 250 -o /test.h264 -w 640 -h 480 -fps 25

使用命令tail -f /var/log/messages监控输出,如下图所示:

相关推荐
xiaozhiwise几秒前
Linux ASLR
linux
wellnw几秒前
[linux] linux c实现共享内存读写操作
linux·c语言
飞凌嵌入式8 分钟前
飞凌嵌入式T113-i开发板RISC-V核的实时应用方案
人工智能·嵌入式硬件·嵌入式·risc-v·飞凌嵌入式
a_安徒生19 分钟前
linux安装TDengine
linux·数据库·tdengine
追风赶月、26 分钟前
【Linux】线程概念与线程控制
linux·运维·服务器
小字节,大梦想28 分钟前
【Linux】重定向,dup
linux
blessing。。1 小时前
I2C学习
linux·单片机·嵌入式硬件·嵌入式
2202_754421542 小时前
生成MPSOC以及ZYNQ的启动文件BOOT.BIN的小软件
java·linux·开发语言
运维&陈同学2 小时前
【zookeeper03】消息队列与微服务之zookeeper集群部署
linux·微服务·zookeeper·云原生·消息队列·云计算·java-zookeeper
嵌新程3 小时前
day03(单片机高级)RTOS
stm32·单片机·嵌入式硬件·freertos·rtos·u575