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

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主板


第四章 Ubuntu系统功能测试

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

4.1 系统启动

命令行终端显示如下,进入root用户

4.2 系统信息查询

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

uname -a

查看操作系统信息:

cat /etc/issue

查看环境变量信息:

env

4.3 背光测试

背光的亮度设置范围为(0--255),255 表示亮度最高,0 表示关闭背光亮度。进入系统后在终端输入 如下命令进行背光测试。

输入以下命令查看当前屏幕背光值

cat /sys/class/backlight/backlight/brightness

输入以下命令设置背光熄灭

echo 0 >/sys/class/backlight/backlight/brightness

输入以下命令设置背光亮起

echo 200 >/sys/class/backlight/backlight/brightness

4.4 按键测试

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

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

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

4.5 有线网测试

首先准备一个千兆路由器,一根千兆网线,如下图所示,这俩个网口都可以连接外网,将网口通过网线连接到路由器的千兆口。

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

ifconfig eth1 //查看网口1的IP

ifconfig eth0 //查看网口0的IP

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

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

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

4.6 WiFi测试

iTOP-RK3588开发板里面烧写Ubuntu64位系统,本章节将对此系统进行功能测试。将通过两种方式来连接wifi,分别为可视化界面的方式和命令行的方式。

4.6.1 图形界面连接wifi

ubuntu系统桌面启动后点击右上角的wifi设置,如下图所示连接wifi。

输入密码点击connect连接,如下图所示:

wifi连接好后,打开浏览器,说明联网成功,如下图所示:

4.6.2 命令行连接wifi

iTOP-3588开发板里面烧写64位的Ubuntu系统,系统启动后,如下图所示:

输入以下命令查看网络设备,如下图所示

nmcli dev

输入以下命令开启wifi

nmcli r wifi on

输入以下命令扫描wifi

nmcli dev wifi

输入以下命令连接wifi

nmcli dev wifi connect "wifi名" password "密码"

作者连接公司的wifi,输入以下命令:

nmcli dev wifi connect "2701" password "topeet2015"

然后输入以下命令安装ping工具

apt-get install iputils-ping

输入以下命令发现可以ping通百度,说明WiFi联网成功。

ping www.baidu.com

输入一下命令:nmcli dev 如下图所示,显示WiFi已经连接。

4.7 U盘测试

将U盘插入对应的USB接口之后,ubuntu系统默认没有打印信息,使用"fdisk -l"命令来查看disk设备信息如下图所示:

可以看到的U盘设备为/dev/sda1,然后使用以下命令来对u盘设备进行挂载:

mount /dev/sda1 /mnt/

使用命令查看U盘内的文件信息如下图所示:

使用命令"df -h"命令来查看挂载信息,如下图所示:

可以看到/dev/sda1设备已经挂载到了mnt目录下。至此U盘测试就完成了。

4.8 TF卡测试

将TF卡插入对应的接口之后,ubuntu系统默认没有打印信息,使用"fdisk -l"命令来查看disk设备信息如下图所示:

可以看到TF卡设备为/dev/mmcblk2p1,然后使用以下命令来对TF卡设备进行挂载:

mount /dev/mmcblk2p1 /mnt/

然后使用命令查看U盘内的文件信息如下图所示:

最后使用命令"df -h"命令来查看挂载信息,如下图所示:

可以看到/dev/mmcblk2p1设备已经挂载到了mnt目录下。至此TF卡测试就完成了。

4.9 Linux 485 测试

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

4.9.1 485硬件连接

485电路图如下图所示:

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

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

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

4.9.2 测试485

默认波特率为115200!

将"iTOP-3588开发板\02_【iTOP-RK3588开发板】开发资料\09_系统外设功能测试\02_Ubuntu系统测试配套资料\01_485测试配套资料"路径下的uarttest.c文件通过TF卡或者U盘的方式拷贝到开发板的opt目录下,拷贝完成如下图所示:

然后使用gcc进行编译

gcc -o uarttest uarttest.c

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

./uarttest /dev/ttyS0 send 123456789

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

./uarttest /dev/ttyS0 send 123456789

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

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

./uarttest /dev/ttyS0 recv

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

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

485测试完毕。

4.10 4G模块测试

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

iTOP-3588开发板上预留了一个 Mini PCIE 的 4G 接口,可以连接迅为提供的 EC20 模块(全网通)。首先准备一个 EC20 4G 模块连接到iTOP-3588开发板的 Mini PCIE 接口上,然后准备一个 4G天线,接到 EC20 模块的天线座上面,然后插入一张能联网的 SIM 卡,如下图所示:

拷贝网盘资料"iTOP-3588开发板\02_【iTOP-RK3588开发板】开发资料\09_系统外设功能测试\02_Ubuntu系统测试配套资料\02_4G模块测试配套资料"目录下的quectel-CM脚本到开发板上,如下图所示:

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

./quectel-CM &

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

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

ping www.baidu.com

4.11 can测试

Ubuntu默认是没有can工具的,开发板联网之后,输入以下命令安装can工具。

sudo apt-get update

sudo apt-get install can-utils

这样can测试工具就安装完成了。下面开始测试:

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

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

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

ifconfig -a

输入以下命令关闭CAN。

ip link set can0 down

设置 can0 的波特率为 1000000,输入以下命令:

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

打印can0信息,输入以下命令:

ip -details link show can0

打开 can0 通道,输入以下命令:

ip link set can0 up

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

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

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

cansend can0 123#DEADBEEF

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

至此,can功能测试完毕。

4.12 SATA硬盘测试

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

SATA线如下图所示:

电源线如下图所示:

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

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

4.13 M2接口固态硬盘测试

磁盘驱动器的速度是以一个单位时间内读写数据量的多少来衡量的。DD 命令是一个简单的命令行工具,它可用对磁盘进行任意数据块的读取和写入,同时可以度量读取写入的速度。 iTOP-3588 开发板支持 M.2 接口的固态硬盘,这里以爱国者固态硬盘 P2000 为例,启动前将固态硬盘插入 M.2 接口(在开发板的背面),如下图所示:

输入以下命令显示所有的 pci 设备信息。pci 是一种总线,而通过 pci 总线连接的设备就是 pci 设备。

lspci

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

ls /dev/nvme0*

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

mkdir nvme

mount /dev/nvme0n1 nvme/

cd nvme/

ls

挂载完成之后,使用df -h命令如下图所示:

df -h

4.14 HDMI测试

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

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

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

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

4.15 RTC时钟测试

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

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

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

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

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

也可以使用"hwclock -w"命令把当前系统的时间同步到硬件时钟里面,运行结果如图所示:

4.16 UVC摄像头测试

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

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

由上图可知,查看设备结点,可见/dev/video21和22 为 USB 摄像头结点

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

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

ubuntu系统默认已经安装了"cheese"摄像头测试软件。在终端输入"cheese"命令打开该工具,就可以显示摄像头的摄像信息了如下图所示:

4.17 OV5695/OV13850摄像头测试

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

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

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

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

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

4.18看门狗测试

配套资料在网盘资料的"iTOP-3568开发板\02_【iTOP-RK3568开发板】开发资料\09_系统外设功能测试\02_Ubuntu系统测试配套资料\04_看门狗测试资料"目录下。

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

在测试之前需要安装Ubuntu系统的编译器gcc,安装命令如下:

apt-get update

apt-get install gcc

安装完成之后,将配套资料里面的watchdog.c文件通过U盘拷贝到开发板上,拷贝完成如下图所示:

然后使用以下命令对watchdog.c进行编译,编译完成如下图所示:

gcc -o watchdog watchdog.c

并赋予权限,如下图所示:

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

./watchdog /dev/watchdog 5

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

4.19耳机测试

耳机测试资料在网盘资料"iTOP-3588开发板\02_【iTOP-RK3588开发板】开发资料\09_系统外设功能测试\02_Ubuntu系统测试配套资料\05_耳机测试配套资料"目录下。

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

将测试音频通过U盘拷贝到开发板目录下,如下图所示:

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

aplay 1.wav

可以按"ctrl + c"来停止

4.20麦克风测试

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

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

4.21喇叭测试

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

将测试音频通过U盘拷贝到开发板的目录下,如下图所示:

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

aplay 1.wav

可以按"ctrl + c"来停止

4.22 emmc测试

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

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

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

4.23 蓝牙测试

然后进入到Ubuntu的图形界面中,点击右上角的蓝牙图标,选择Devices选项,对外部蓝牙设备进行连接,如下图所示:

点击Search搜索蓝牙,如下图所示:

右击蓝牙设备选择Connect进行连接,如下图所示:

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

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

如果要进行文件传输,需进行以下设置,如下图所示:

如果要进行文件传输,需进行以下设置,如下图所示:

点击Advanced Settings,弹出如下界面,输入密码:topeet

再次点击Advanced Settings,弹出如下界面选择User Privileges,勾选Send and receivefaxs,如下图所示:

配置完就可以进行文件传输了,至此,蓝牙测试完成。

4.24 HDMI IN测试

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

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

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

v4l2-ctl --list-devices

按照下图路径,打开Qt V4L2 test Utility应用:

点击左上角蓝色文件夹图标,选择video20打开,如下图所示:

打开后,点击左上角绿色运行图标即可显示HDMI桌面

桌面显示如图所示:

4.25 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

4.26蜂鸣器测试

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 的占空比来控制蜂鸣器发出声音的大小。

4.27 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/syslog监控输出,如下图所示:

调用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/syslog监控输出,如下图所示:

相关推荐
冬瓜~16 分钟前
STM32实现看门狗(HAL库)
stm32·嵌入式硬件·mcu·cubemx·看门狗·iwdg·wwdg
coisini.cn39 分钟前
基于CentOS Stream 9平台搭建RabbitMQ3.13.4以及开机自启
linux·运维·服务器·rabbitmq·centos stream 9
易板1 小时前
ES7210高性能四通道音频ADC转换模拟麦克风为IIS数字咪头
单片机·嵌入式硬件·iis·音视频·麦克风
苦藤新鸡1 小时前
用网络编程完成windows和linux跨平台之间的通信(服务器)
linux·网络·windows
是梅梅森2 小时前
STM32-01 推挽输出-点亮LED
stm32·单片机·嵌入式硬件
JIAWAP2 小时前
Linux环境安装Maven
java·linux·centos·maven
luckyme_2 小时前
STM32-I2C
stm32·单片机·嵌入式硬件
luckyme_2 小时前
STM32-ADC+DMA
stm32·单片机·嵌入式硬件
biaobiao_hust3 小时前
芯片封装简介
单片机·嵌入式硬件
真果粒wrdms3 小时前
【SQLite3】常用API
linux·服务器·c语言·jvm·数据库·oracle·sqlite