触觉智能RV1126B核心板配置USB复合设备(下)

本文基于触觉智能RV1126B核心板&开发板,为大家介绍配置USB复合设备配置实现,本章节将介绍ACM和UMS两种USB复合设备。

ACM

USB ACM(Abstract Control Model,抽象控制模型)设备是USB通信设备类(CDC,Communication Device Class)的一个子类,核心功能是模拟传统串行端口(UART),让计算机或其他主机通过USB接口与设备通信,就像物理串口一样。它广泛用于USB转串口、嵌入式调试、移动设备通信等场景,是"USB虚拟串口"的技术实现基础。

  • 内核编译配置

在以下文件,

<SDK_TOP_PATH>/kernel-6.1/arch/arm64/configs/rockchip_linux_evb1126b_v1_defconfig

添加配置内容(触觉智能RV1126B开发板出厂固件默认已支持):

复制代码
CONFIG_USB_ACM=y
CONFIG_USB_F_ACM=y

编译内核生成驱动镜像,命令如下:​​​​​​​

复制代码
cd <SDK_TOP_PATH>
./build.sh kernel

编译成功后如下图,会生成boot.ing,再将镜像烧录进开发板。

完成烧录后,执行以下命令,开启ACM功能:​​​​​​​

复制代码
echo usb_acm_en > /etc/init.d/.usb_config
/usr/bin/usbdevice restart

完使能成功后,可以再开发板识别如下节点:

  • ACM功能测试

打开PC端的串口调试工具,可以识别出一个USB串行设备,如下:

开发板可以通过以下命令设置串口波特率(当前仅支持9600)并发送数据到PC,命令如下:

复制代码
stty -F /dev/ttyGS0 9600

PC端接收数据:

UMS

USB UMS(USB Mass Storage,即USB大容量存储)是USB-IF定义的一种存储设备类协议。它允许U盘、移动硬盘、SD卡读卡器等大容量存储设备通过USB接口与主机连接,并进行数据交换。

  • 内核编译配置

在开发板

<SDK_TOP_PATH>/kernel-6.1/arch/arm64/configs/rockchip_linux_evb1126b_v1_defconfig文件中,增加如下配置:​​​​​​​

复制代码
CONFIG_USB_CONFIGFS_MASS_STORAGE=y
CONFIG_USB_F_MASS_STORAGE=y

成功添加后重新编译内核,命令如下:​​​​​​​

复制代码
cd <SDK_TOP_PATH>
./build.sh kernel

编译成功后,会生成boot.ing,烧录此内核镜像进开发板中:

执行以下命令,开启UMS功能:​​​​​​

复制代码
echo usb_ums_en > /etc/init.d/.usb_config
echo "ums_block=/dev/block/by-name/userdata" >> /etc/init.d/.usb_config
/usr/bin/usbdevice restart

成功后,可以在PC上看到一个新的盘符,由于磁盘分区格式默认是ext4格式,Windows系统无法正常挂载,提示格式化如下:

格式成exFAT格式:

  • UMS功能测试

格式化后的磁盘,新建一个测试文件test.txt。

执行如下命令取消默认的userdata分区挂载,以exFAT格式挂载userdata分区:​​​​​​

复制代码
umount /userdata/
mount -t exfat /dev/mmcblk0p9 /userdata/ 

在开发板系统上,可以访问到Windows电脑端创建的测试文件:

教程完成 更多资料请关注触觉智能CSDN

相关推荐
Deepoch3 天前
Deepoc具身模型开发板:重塑银发科技关怀的智慧核心
人工智能·科技·开发板·智能·具身模型·deepoc·居家机器人
Tronlong创龙4 天前
RK3562 单板机多媒体开发完全手册:视频输入输出与 GStreamer 案例详解(一)
开发板·嵌入式开发·硬件开发·工业控制
暮雪倾风5 天前
【软件安装】VSPD(Virtual Serial Port Driver)虚拟串口软件安装及使用
单片机·串口
普中科技9 天前
【普中STM32F1xx开发攻略--标准库版】-- 第 34 章 RTC 实时时钟实验
stm32·单片机·嵌入式硬件·开发板·rtc·实时时钟·普中科技
CheungChunChiu9 天前
USB‑C PD 充电系统完整解析(SC8886 + FUSB302)
linux·usb·type-c·充电
普中科技9 天前
【普中51单片机开发攻略--基于普中-2&普中-3&普中-4】-- 第 22 章 串口通信实验
单片机·嵌入式硬件·51单片机·串口通信·开发板·普中科技
Deepoch23 天前
无人机升级不用改!Deepoc 开发板即插即享智能飞行
人工智能·无人机·开发板·具身模型·deepoc·智能无人机
Tronlong创龙24 天前
RK3562 单板机 Linux 应用开发实战手册:LED/CAN/TCP/UART 案例与 Python 开发(一)
开发板·嵌入式开发·硬件开发·工业控制
Deepoch24 天前
一块Deepoc具身模型开发板破解轮椅出行难题 让无障碍出行更有温度
人工智能·科技·开发板·具身模型·deepoc·智能轮椅
蓝天居士1 个月前
RS485在Linux内核(驱动)及全志T113平台上的实现(7)
串口·rs485·设备驱动