当前位置: 首页 > news >正文

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

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

为了回馈大家对触觉智能的支持,关注触觉智能CSND公众号可获此开发板折扣。:、

RNDIS

RNDIS全称为Remote Network Driver Interface Specification,是USB设备类远程网络驱动程序接口规范中的一种。核心作用是将USB模拟成虚拟以太网适配器,让主机设备通过USB Host链路实现与主机的网络通信,如同连接物理网卡一样。广泛用于移动设备网络共享、嵌入式设备联网、虚拟网络接口等场景。

  • 内核编译配置

在以下文件,

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

添加配置内容:

CONFIG_USB_ETH=y CONFIG_USB_F_RNDIS=y CONFIG_USB_ETH_RNDIS=y

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

cd <SDK_TOP_PATH> ./build.sh kernel

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

cd <SDK_TOP_PATH> ./build.sh kernel

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

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

完成后,输入以下命令,可以看到开发板上多出一块网卡:

ifconfig

连接开发板的,PC端也能识别出新的网卡设备:

若网卡无法识别,则需先关闭PC端的防火墙:

  • RNDIS功能测试

将PC和开发板端新识别出的网卡,手动配置于同一网段-192.168.1.X。

开发板端,输入命令:

ifconfig usb0 192.168.1.11

PC端:

测开发板端和PC端互相能ping通网络:

看到有对应返回数据,说明已成功完成配置。

UAC

USB UAC(USB Audio Class,USB音频类)是USB设备类规范(USB-IF定义) 中专门针对音频设备的通信协议标准,用于规范USB接口的音频输入/输出设备(如麦克风、扬声器、耳机、声卡等)与主机的通信方式。UAC通过USB虚拟标准PCM接⼝给Host设备,实现Device和Host之间⾳频互传功能。

  • 内核编译配置

在开发板

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

CONFIG_USB_CONFIGFS_F_FS=y CONFIG_USB_CONFIGFS_F_UAC1=y CONFIG_USB_F_UAC1=y

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

cd <SDK_TOP_PATH> ./build.sh kernel

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

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

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

完成后,执行aplay -l可以识别如下声卡:

连接开发板的PC端也能识别出一个新的声音设备:

  • UAC功能测试

PC端向开发板端播放音频文件,选择输出设备,选中Device设备(⼀般识别为Source/Sink,设备名与Windows版本相关) , 并打开播放器,播放⾳乐 。

开发板端:执行以下命令,将UAC采样到的音频文件名称为test.wav:

arecord -D hw:1,0 -r 48000 -c 2 -f S16_LE test.wav

开发板接上扬声器,用触觉智能RV1126B开发板自带的8388声卡播放test.wav,查看采样是否正常:

PC端:选择输入设备:

开启PC端自带的录音软件开始录音:

开发板端播放音频文件,指定到UAC声卡,命令如下:

aplay -Dhw:1,0 ./test.wav

PC端通过自带扬声设备播放录音音频,查看音频是否正常:

http://www.jsqmd.com/news/290113/

相关文章:

  • 重塑智算存储范式:绿算技术NVMe-oF芯片解决方案全景剖析
  • 零基础搞懂大模型微调:入门必备知识点
  • 书目
  • 【通信】DPCM编码及2DPSK调制数字频带通信系统仿真【含Matlab源码 15019期】
  • Visual Paradigm AI 数据库建模工具全面指南
  • 【光学】水波在多个垂直薄板下的透射系数【含Matlab源码 15013期】
  • P14162 [ICPC 2022 Nanjing R] 完美匹配
  • RM赛事C型板九轴IMU解算(3)(姿态融合算法)
  • Lua基础语法(上篇)
  • 驱动千店销售转化提升10%:3C零售门店的人效优化实战方案
  • 破解出海管理“消耗战”:中企如何用数字化工具赢得海外团队信任?
  • 【通信】基于matlab DPCM编码及2DPSK调制数字频带通信系统仿真【含Matlab源码 15019期】
  • 【光学】基于matlab水波在多个垂直薄板下的透射系数【含Matlab源码 15013期】
  • 【图像加密】基于matlab双随机相位编码和压缩传感实现安全图像加密【含Matlab源码 15009期】
  • 2026年 不锈钢模块/不锈钢加工厂/不锈钢剪板折弯厂家推荐排行榜:匠心工艺与精密制造实力解析
  • 基于 Vue + VueUse 的 WebSocket 优雅封装:打造高可用的全局连接管理方案
  • AI赋能运营:数字化系统如何自动分配收益与激励?
  • ArcGIS大师之路500技---066DEM不进位保留一位小数
  • 从出题到成绩:在线笔试系统如何提升 HR 招聘效率?
  • 考试云:在线答题系统,构建一体化赛事解决方案
  • 如何通过接近开关降低误停机成本
  • 【AI】AI学习笔记:翻译langGraph 记忆概述(Memory)
  • 什么是动态ip/ 什么情况下使用动态ip
  • P8329 ZJOI2022 树 题解 / 容斥
  • ‌AI伦理测试框架:构建负责任软件的基石
  • 2026年 楼承板设备厂家推荐排行榜,钢承板/免浇筑/闭口/开口楼承板设备,十大楼承板成型机及压型设备实力品牌深度解析
  • AI测试工具快速上手指南:从零到精通的实战教程
  • 深度实践:从“手动排障”到“对话诊断”,构建基于 GenAI 的 K8s 智能运维平台
  • 测试了一下,AI扒MIDI谱子的效率很离谱
  • 测试框架整合AI:实现智能化的3步法