百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

Banana Pi BPI-W3 瑞芯微RK3588开发板从入门到精通,开发文档

haoteby 2025-01-23 17:18 7 浏览

Banana Pi BPI-W3单板计算机由Banana Pi 生态成员ArmSoM团队为专业和企业用户设计和开发,搭载Rockchip RK3588 SoC四核ARM Cortex-A76和四核Cortex-A55,由八核CPU处理器组成,动态频率扩展至2.4兆赫。内嵌高性能3D、2D图像加速模块,AI加速器NPU内置6TOPS算力。

Banana Pi BPI-W3(ArmSoM-W3) 高达 32GB 64 位 LPDDR4X 内存、高达 8K@60 HDMI OUT、HDMI IN、MIPI DSI、MIPI CSI、带麦克风的 3.5mm 插孔、USB 端口、2.5GbE LAN、PCIe 3.0 x4、PCIe 2.0x2、40-引脚扩展接头、RTC、POE、SD 卡、DC 电源、typec。

开始使用

您需要的必需品

在开始使用 ArmSoM-W3 之前,请准备好以下物品

  • ArmSoM-W3
  • 电源(三选一)
  1. 通过直流电源 12 伏 @2/3A
  2. USB C PD 充电器(15W 及以上)
  3. 12 伏 PoE
  • 如果您想从SD卡启动:MicroSD卡/TF卡:Class 10或以上,至少8GB SDHC

我们测试的 TF 卡

参考:TFCardsWeTested

我们测试的PD电源适配器

参考:我们测试的PD电源适配器

配置串口参数

使用以下串行参数:

波特率

1500000

数据位

8

奇偶校验

没有任何

停止位

1

流量控制

没有任何

安装操作系统

将操作系统安装到 eMMC

请查看本指南,在Windows/Linux/MacOS PC下安装rockchip flash工具。

访问下载链接以下载图像文件和实用程序。

图像文件

armsom-w3-emmc-Android12-rkr12-20230420.img.xz

Android 12 镜像文件,内核版本 5.10.y

armsom-w3-emmc-AndroidTv12-rkr12-20230420.img.xz

Android TV 镜像文件,内核版本 5.10.y

armsom-w3-emmc-buildroot-20230420.img.xz

buildroot,内核版本 5.10.y

armsom-w3-emmc-debian-bullseye-xfce4-arm64-20230420.img.xz

debian bullseys xfce4,内核版本 5.10.y

安装操作系统到TF

请查看本指南,在Windows/Linux下安装rockchip tf工具。

图像文件

Armbian_23.05.0-trunk_Armsomw3_bullseye_legacy_5.10.110_gnome_desktop.img.xz

Armbian、debian 11、内核 5.10、桌面

Armbian_23.05.0-trunk_Armsomw3_bullseye_legacy_5.10.110.img.xz

Armbian、debian 11、内核 5.10

Armbian_23.05.0-trunk_Armsomw3_bookworm_legacy_5.10.110_cinnamon_desktop.img

Armbian、debian 12、内核 5.10、桌面

Armbian_23.05.0-trunk_Armsomw3_bookworm_legacy_5.10.110.img

Armbian、debian 12、内核 5.10

Armbian_23.05.0-trunk_Armsomw3_jammy_legacy_5.10.110_gnome_desktop.img.xz

Armbian、Ubuntu 22.04、内核 5.10、桌面

Armbian_23.05.0-trunk_Armsomw3_jammy_legacy_5.10.110.img.xz

Armbian、Ubuntu 22.04、内核 5.10

启动板子

  • (可选)如果使用SD卡启动,需要插入板上的插槽。
  • (可选)使用 USB 转 TTL 串行电缆在 PC 和 ArmSoM-w3 板之间建立连接。
  • 通过具有 C 型端口或 PoE 或直流电源的适配器为 ArmSoM 供电
  • ArmSoM-w3 将启动且绿色电源 LED 亮起。过了一会儿,另一个蓝色 LED 开始闪烁,红色 LED 用户控制

接口使用

从主机 PC/笔记本电脑访问

选项 1:HDMI 显示器和鼠标

您可以在 HDMI 显示器上打开终端并在键盘上输入命令。

选项 2:串行控制台

请参阅串行控制台

选项 3:亚行

使用RK提供的烧录工具,在底部看不到“Found an MSC device”这一行。使用 USB-typeC 电缆将计算机连接至开发板。在Windows页面,使用“Windows+R”组合键打开命令终端,输入adb shell可以看到“root@linaro-alip:/#”。

引领

在 ArmSoM-W3 上,三色 LED 被配置为 LED 类设备。当蓝色 LED 未激活时,绿色 LED 将显示,指示电路板已通电。您可以通过写入 /sys/class/leds/blue:status/trigger 来控制蓝色 LED 的行为模式。默认情况下,只有 root 用户可以写入设备。蓝色 LED 的默认模式是心跳。

linaro@linaro-alip:/home/linaro# sudo su // linaro 密码
root@linaro-alip:/home/linaro# 回显计时器 > /sys/class/leds/blue:status/trigger
root@linaro-alip:/home/linaro# echo 活动 > /sys/class/leds/blue:status/trigger

您可以在触发器属性上使用 cat 来列出所有可用的 LED 模式。括号中的值是当前活动模式。

root@linaro-alip:/home/linaro# cat /sys/class/leds/blue:status/trigger
无 rfkill-any rfkill-无 kbd-scrolllock kbd-numlock kbd-capslock kbd-kanalock kbd-shiftlock kbd-altgrlock kbd-ctrllock kbd-altlock kbd-shiftllock kbd-shiftrlock kbd-ctrlllock kbd-ctrlrlock tcpm-source-psy-4 -0022-在线 mmc2 mmc1 计时器 oneshot 磁盘活动 磁盘读取磁盘写入 ide-磁盘 mtd nand-磁盘 心跳背光 gpio cpu cpu0 cpu1 cpu2 cpu3 cpu4 cpu5 cpu6 cpu7 mmc0 [活动] 默认开启瞬态闪光火炬恐慌 netdev rfkill0

在 None 模式下,写入 /sys/class/leds/blue:status/brightness 可以手动控制蓝色 LED 的状态。

root@linaro-alip:/home/linaro# echo none > /sys/class/leds/blue:status/trigger
root@linaro-alip:/home/linaro# echo 1 > /sys/class/leds/blue:状态/亮度
root@linaro-alip:/home/linaro# echo 0 > /sys/class/leds/blue:状态/亮度

红灯相同,类设备/sys/class/leds/red:status/trigger

实时时钟设备

ArmSoM-w3配备1个RTC IC hym8563

首先,插入RTC电池,给RTC IC供电。请注意,我们应将 RTC 电池保留在 RTC 连接器中。

其次,检查驱动是否加载成功。

root@linaro-alip:~# dmesg | grep 实时时钟
[3.149263]rtc-hym8563 6-0051:rtc信息有效
[3.154624]rtc-hym8563 6-0051:注册为rtc0
[3.155646]rtc-hym8563 6-0051:将系统时钟设置为2021-01-01T12:00:05 UTC (1609502405)

最后检查是否可以查看和设置时间。

root@linaro-alip:~# hwclock -r
2022-08-07 13:38:24.370866+00:00
root@linaro-alip:~# 日期
2022年08月07日 星期日 13:38:41 UTC
root@linaro-alip:~# hwclock -w

以太网

ArmSoM-w3配置1个2.5G以太网接口。您可以使用网线将ArmSoM-w3连接到网络(一端连接到外部网络端口或路由)。ArmSoM-w3 会自动配置网络以供您访问互联网。

使用 ifconfig 命令检查以太网是否正常工作,该命令显示网卡 eth0 或 enP4p65s0 以及以太网 IP 地址。另外,您还可以使用ping工具来测试网络连通性。

如果配置
ping www.google.com

如果连接了网线,则不会为该节点分配 IP 地址。

dhclient eth0
或者
dhclient enP4p65s0

无线网络/蓝牙

ArmSoM-w3 不配备板载 WiFi/BT。目前,ArmSoM-w3 已测试并支持以下 WiFi 卡。

1.RTL8852BE

2.AP6256

要测试WIFI性能,我们需要按照以下步骤进行:

# 1.切换到超级用户模式
root@linaro-alip:/# sudo su
# 2.打开WIFI
root@linaro-alip:/# nmcli r wifi 打开
# 3.扫描WIFI
root@linaro-alip:/# nmcli 开发 wifi
# 4.连接WIFI网络
root@linaro-alip:/# nmcli dev wifi 连接“wifi_name”密码“wifi_password”

声音的

查看系统中的声卡。

root@linaro-alip:/# aplay -l
**** 播放硬件设备列表 ****
卡 0:rockchipdp0 [rockchip,dp0],设备 0:rockchip,dp0 spdif-hifi-0 [rockchip,dp0 spdif-hifi-0]
 子设备:1/1
 子设备#0:子设备#0
卡 1:rockchipes8316 [rockchip-es8316],设备 0:fe470000.i2s-ES8316 HiFi es8316.7-0011-0 [fe470000.i2s-ES8316 HiFi es8316.7-0011-0]
  子设备:1/1
  子设备#0:子设备#0
卡3:rockchiphdmi0 [rockchip-hdmi0],设备0:rockchip-hdmi0 i2s-hifi-0 [rockchip-hdmi0 i2s-hifi-0]
  子设备:1/1
  子设备#0:子设备#0
卡4:rockchiphdmi1 [rockchip-hdmi1],设备0:rockchip-hdmi1 i2s-hifi-0 [rockchip-hdmi1 i2s-hifi-0]
  子设备:1/1
  子设备#0:子设备#0

指定播放音频文件的声卡。

aplay -D hw:0,0 /mnt/test.wav

MIC

root@linaro-alip:/root# arecord -D hw:1,0 -f S16_LE -t wav -c2 -r 16000 -d 3 t.wav
录音 WAVE 't.wav':带符号 16 位 Little Endian,速率 16000 Hz,立体声
root@linaro-alip:/root# aplay t.wav
播放 WAVE 't.wav':带符号 16 位 Little Endian,速率 16000 Hz,立体声

储存设备

支持三种类型的存储设备

微型SD卡

/dev/mmcblk1

多媒体卡

/dev/mmcblk0

NVME M.2 SDD

root@linaro-alip:/home/linaro# mkdir temp
root@linaro-alip:/home/linaro# mount /dev/nvme0n1 temp

相机

1.MIPI-CSI

摄像头采用IMX415模组,摄像头模组连接并上电后可以查看启动日志。

root@linaro-alip:/# dmesg | grep IMX415
[2.547754]imx415 3-001a:驱动程序版本:00.01.08
[2.547767]imx415 3-001a:获取 hdr 模式失败!默认没有 hdr
[2.547819]imx415 3-001a:无法获取电源gpios
[2.547826]imx415 3-001a:无法获取默认引脚状态
[2.547831]imx415 3-001a:无法获得睡眠引脚状态
[2.547850]imx415 3-001a:未找到供应DVDD,使用虚拟调节器
[2.547918]imx415 3-001a:未找到电源 dovdd,使用虚拟调节器
[2.547945]imx415 3-001a:未找到供应avdd,使用虚拟调节器
[2.613843]imx415 3-001a:检测到imx415 ID 0000e0
[2.613890]rockchip-csi2-dphy csi2-dphy0:dphy0匹配m00_b_imx415 3-001a:总线类型5
[18.386174]imx415 3-001a:设置fmt:cur_mode:3864x2192,hdr:0
[18.389067]imx415 3-001a:设置曝光(shr0)2047 = cur_vts(2250)-val(203)

内核为相机分配设备信息描述文件。

grep "" /sys/class/video4linux/v*/name | | grep "" /sys/class/video4linux/v*/name | grep 主路径
/sys/class/video4linux/video11/name:rkisp_mainpath

验证相机的功能

抓一张照片

#v4l2-ctl -d /dev/video11 --set-fmt-video=宽度=3840,高度=2160,像素格式=NV12 --stream-mmap=3 --stream-skip=60 --stream-to=/ tmp/cif73.out --stream-count=3 --stream-poll

使用 gst-launch-1.0 在桌面上显示

# gst-launch-1.0 v4l2src 设备=/dev/video11 !视频/x-raw,格式=NV12,宽度=3840,高度=2160,帧率=30/1!xv图像接收器

2.USB3.0摄像头

连接usb3.0摄像头后,打开Qt V4L2 test Utility应用程序进行测试

然后打开视频节点:video21

然后点击相机按钮,您将看到相机屏幕

HDMI接收

ArmSoM-w3使用rk3588芯片内置的hdmi_in端口,可以使用v4l2命令测试hdmi in接口。

查看所有视频节点

ls /dev/视频*

查找 rk hdmirx 设备

执行v4l2-ctl -d命令指定vidoe节点。执行-D命令查看节点信息。使用驱动程序名称检查 rk_hdmirx 设备。

# v4l2-ctl -d /dev/video0 -D
司机信息:
驱动程序名称:rk_hdmirx
卡类型:rk_hdmirx
总线信息:fdee0000.hdmirx-controller
驱动程序版本:5.10.66
能力:0x84201000
多平面视频捕捉
流媒体
扩展像素格式
设备能力
设备上限:0x04201000
多平面视频捕捉
流媒体
扩展像素格式

查询分辨率和图像格式

查询当前分辨率和图像格式:

# v4l2-ctl -d /dev/video17 --get-fmt-video
多平面视频捕捉格式:
宽度/高度:3840/2160
像素格式:“NV16”
字段:无
飞机数量 : 1
标志:预乘-alpha,000000fe
色彩空间:未知 (1025fcdc)
传递函数:未知 (00000020)
YCbCr 编码:未知 (000000ff)
量化:默认
平面 0 :
每行字节数:3840
图片尺寸:16588800

抓取图像文件

将镜像文件保存到设备,adb pull到PC,通过7yuv等工具查看:

v4l2-ctl --verbose -d /dev/video17 \
--set-fmt-video=宽度=3840,高度=2160,像素格式='NV16' \
--stream-mmap=4 --stream-skip=3 \
--stream-to=/data/4k60_nv16.yuv \
--stream-count=5 --stream-poll

查询HDMI接收状态

查询当前HDMI RX的状态,包括信号锁定、图像格式、Timings信息、Pixl Clk等。

# 猫 /d/hdmirx/状态
状态:插件
Clk-Ch:锁定 Ch0:锁定 Ch1:锁定 Ch2:锁定
Ch0-Err:0 Ch1-Err:0 Ch2-Err:0
颜色格式:YUV422 存储格式:YUV422(8 位)
模式:3840x2160p60 (4400x2250) hfp:172 hs:92 hbp:296 vfp:8 vs:10 vbp:72
像素时钟:594024000

扇子

echo 0 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/export
echo 10000 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/period
回声 5000 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/duty_cycle
回声反转> /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/极性
echo 1 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/enable
#echo 0 > /sys/devices/platform/fd8b0010.pwm/pwm/pwmchip*/pwm0/enable


在论坛上发布您的问题:forum.armsom.org

其他的

NPU使用情况

准备工具

1. 使用Ubuntu18.04/Ubuntu20.04操作系统(OS)。

2. 一块W3-PRO板

准备程序

首先确保你的Ubuntu系统上安装了docker,如果没有,参考网上安装教程

我们提供源码以及安装环境的docker镜像:docker image

在PC服务器上创建rknpu文件夹,将固件复制到该文件夹中

rknpu/rknn-toolkit2-1.4.0/docker$ ls
md5sum.txt rknn-toolkit2-1.4.0-cp36-docker.tar.gz rknn-toolkit2-1.4.0-cp38-docker.tar.gz

运行以下命令来运行 docker 镜像。Docker镜像运行后,显示镜像的bash环境

docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb rknn-toolkit2:1.4.0-cp38 /bin/bash

通过附加“-v <host srcfolder>:<image dstfolder>”参数将示例代码映射到 Docker 环境,例如:

docker run -t -i --privileged -v /dev/bus/usb:/dev/bus/usb -v /your/rknn-toolkit2-1.xx/examples:/examples rknn-toolkit2:1.xx /bin /bash

映射后代码同步

rknn服务需要运行在开发板上

BOARD ARCH对应64位Linux系统上的aarch64目录和32位系统上的armhf目录

1. adb 将 Linux/rknn server/${B0ARD_ ARCH}/usr/bin/ 中的所有文件推送到 /usr/bin
2. adb Push Linux/librknn api/${BOARD ARCH}/librknrnt。所以到 /usr/1ib
3、访问板子串口终端,执行以下命令
 chmod +x /usr/bin/rknn 服务器
 chmod +X /usr/bin/start_rknn.sh
 chmod +X /usr/bin/restart rknn.sh
 重新启动_rknn。嘘

运行程序

先在docker镜像中执行adb devices,记住adb ID号

转到 /examples/onnx/yolov5 并更改 test.py

ret = rknn.init_runtime(target='rk3588', device_id=DEVICE_ID, perf_debug=True,eval_mem=True)
输出 = rknn.inference(输入=[img])
ret = rknn.eval_perf(输入=[img], is_print=True)
cv2.imwrite("结果.jpg", img_1)

相关推荐

Python的RSA操作(私钥与公钥)(python rsa 公钥解密)

RSA是1977年由罗纳德·李维斯特(RonRivest)、阿迪·萨莫尔(AdiShamir)和伦纳德·阿德曼(LeonardAdleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA...

RSA在日益互联的世界网络中安全性能如何?

KeyFactor公司(美国一家领先的安全数字身份管理解决方案提供商及网络安全行业权威机构)研究表明,许多物联网设备制造商正在生成不安全的RSA密钥,182个RSA证书里就有一个可能会被破解,由于不正...

让频谱分析更高效,澄清RSA使用中的一些误解

从事射频应用的研究人员、工程师和技术人员通常都能充分理解频谱分析仪的用途和优点,无论是传统的扫频分析仪(TSA)还是更现代的矢量信号分析仪(VSA)。他们熟练掌握这些重要射频仪器的关键规范和工作...

微软公告:Win10/Win11将不再支持短于2048位的RSA密钥证书

IT之家3月16日消息,微软近日发布公告,表示即将放弃短于2048位的RSA密钥证书。在公告中微软并未明确弃用时间,对于用户来说,这其实有利于构建更安全的上网环境。IT之家翻译微软公告...

目前已知的最强加密算法RSA(rsa加密算法的优点)

前面有人让我讲解一下RSA算法,今天我就用我所学的知识讲解一下,首先我们先了解一下RSARSA是一种非对称加密算法,1977年由罗纳德·李维斯特(RonRivest)、阿迪·萨莫尔(AdiSha...

韩国 CryptoLab 将在 2025年 RSA 大会发布加密人脸识别解决方案

据美通社4月23日报道,韩国同态加密网络安全企业CryptoLab宣布,将于4月24日在2025年RSA大会上,首次发布加密人脸识别(EFR)方案,为生物识别安全难题提供创新解法。当前,人脸识...

应对变化!盘点RSA2015十大热门产品

4月20日-24日,全球知名信息安全峰会RSAConference2015在美国旧金山召开。作为IT安全领域的权威科技大会,RSA大会不仅会邀请各地区著名安全专家出席与分享,更吸引汇集了全球众多顶...

RSA 2015主题:变化挑战当今的安全理念

1“变化”成为RSA2015主题4月20日-24日,全球知名信息安全峰会RSAConference2015在美国旧金山召开。作为IT安全领域的权威科技大会,RSA大会不仅会邀请各地区著名安全专家出...

非对称加密——一文看懂RSA(非对称加密详解)

非对称加密----RSA的使用"非对称加密也叫公钥密码:使用公钥加密,使用私钥解密"在对称密码中,由于加密和解密的密钥是相同的,因此必须向接收者配送密钥。用于解密的密钥必须被配送给...

RSA算法详解(rsa算法图解)

什么是RSA前面文章我们讲了AES算法,AES算法是一种是对称加密算法,本文我们来介绍一个十分常用的非对称加密算法RSA。非对称加密算法也叫公钥密码算法,通过生成的公私钥来对明文密文进行加密解密。R...

升级SSH后ssh-rsa失效?一文带你轻松解决!

背景今天刚给Linux桌面系统完成升级,结果SSH连接突然“罢工”了,还弹出了这个报错信息:...

历史回顾RSA大会:25年,十个瞬间(rsa conference)

国家安全局、Clipper芯片、苹果对决FBI、禁止ShowGirl——RSA大会都经历过。RSA需要你RSA这个词代表一家密码及安全厂商,也代表着世界上最大的网络安全展会,它今年在旧...

RSA 加密技术详解(rsa的加密原理是什么)

RSA的安全性基于数学难题的理论安全:RSA的安全性主要基于大质数分解和离散对数问题这两个数学难题。在RSA加密算法中,公钥包含一个大整数N,它是两个大质数p和q的乘积。攻击者如果想要破解RSA加密,...

「游戏开发」请别再说Unity不如Unreal:Unity室内场景 + 光照练习 3

关注“indienova”,挖掘独立游戏的更多乐趣引言上两节慢吞吞的补了很多技术实现的细节,感觉要是把用到的所有技术细节都过一遍可能还需要若干篇文章。所以决定先把整体的流程这篇好玩的写了,以后再慢慢补...

再做一个Android!Google发布第二代VR眼镜Cardboard

在去年的GoogleI/O上,Google向所有与会者发放了一款名为Cardboard的纸盒版虚拟现实眼镜,相比OculusRift等颇为酷炫的VR头盔,第一代Cardboard着实糙得很。不过,...