触觉智能RK3562开发板配置USB复合设备(下)

作者:chy123|分类:财富资讯

本文基于触觉智能RK3562开发板,为大家介绍配置USB复合设备方法,本章节将介绍UMS和ACM复合设备数据交互。

文章配图-1

触觉智能RK3562核心板系列即将升级,新增板对板连接器封装版本,将内置无线WiFi蓝牙模组,进一步提升集成性!

UMS是什么?

UMS是USB协议体系中定义大容量存储设备通信规范的标准化协议,通过批量传输协议实现主机与存储设备间的数据交换,给Host设备提供⼤容量外挂存储。兼具兼容性强、即插即用、传输稳定的特点,UMS与MTP有以下区别:

● UMS以Block为单位⼯作; MTP则以⽂件为单位⼯作。

● UMS⼯作时, ⽬标Block为独占⼯作,多⽤⼾操作同⼀Block将会出现错误; MTP⽀持多⽤⼾操作。

  • 内核编译配置

在/kernel-5.10/arch/arm64/configs/rockchip_linux_defconfig文件中,增加如下配置:

CONFIG_USB_CONFIGFS_MASS_STORAGE=y CONFIG_USB_F_MASS_STORAGE=y

成功添加后重新编译kernel,命令如下:

cd ./build.sh kernel

编译成功后,会生成boot.img,通过电脑烧录工具烧录。

执行以下命令,开启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系统无法正常挂载,提示格式化如下:

在格式化后的磁盘新建任意文件,进行验证:

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

umount /userdata/ mount -t exfat /dev/mmcblk0p6 /userdata/

在板卡系统上可以访问到Windows端PC创建的测试文件,即表示配置成功:

文章配图-1

ACM

ACM全称Abstract Control Model 抽象控制模型, 是 USB-IF 定义的通信设备类(CDC)子协议,核心功能是让USB设备模拟成串口设备,在主机(Host)和设备(Device)两端生成 TTY(Teletypewriter)字符设备节点,实现全双工的数据交互。

  • 内核编译配置

在/kernel-5.10/arch/arm64/configs/rockchip_linux_defconfig文件中,文件中添加如下配置内容(说明:出厂固件默认已支持如下配置):

# cdc-acm CONFIG_USB_ACM=y CONFIG_USB_F_ACM=y

成功添加后重新编译kernel,命令如下:

cd ./build.sh kernel

编译成功后,会生成boot.img,通过电脑烧录工具烧录即可。

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

echo usb_acm_en > /etc/init.d/.usb_config /usr/bin/usbdevice restart

完成后,可以在开发板识别如下节点:

文章配图-1
  • ACM功能测试验证

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

文章配图-2

开发板可以通过以下命令,查看usb串口波特率。另外,串口波特率可通过microcom等工具设置波特率:

root@rk3562:/# stty -F /dev/ttyGS0 speed 9600 baud; line = 0; -brkint -imaxbel root@rk3562:/# stty -F /dev/ttyGS0 9600 root@rk3562:/# cat /dev/ttyGS0

文章配图-1

开发板与PC端收发测试:

文章配图-2

看到数据回传就表示ACM功能配置完成。关注触觉智能,为您带来更多技术干货与工业嵌入式解决方案。

09 06月

2026-06-09 11:00:22

浏览4760
返回
目录
返回
首页
千年窑火不息,长沙窑何以走向新生? “指尖星图”游戏创新大赛・优秀作品游戏展及路演交流会即将召开