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

RK3568 usb gadget功能配置

文章目录

  • 1、前言
  • 2、目标
  • 3、USB RNDIS
    • 3.1、内核配置
    • 3.2、功能测试
  • 4、USB UMS
    • 4.1、内核配置
    • 4.2、功能测试

1、前言

硬件:飞凌ok3568-c开发板

软件:原厂rk356x sdk

2、目标

本文主要介绍如何配置usb rndis和usb ums两种功能。

3、USB RNDIS

USB RNDIS是一种通过USB实现网络通信的协议。Windows/Linux主机可以通过USB与嵌入式设备进行网络通信。

3.1、内核配置

 -> Device Drivers                                                                                                                                             │-> USB support                                                                                                                         │-> USB Gadget Support                                                                                                                  │[*] USB Gadget functions configurable through configfs[*]     Ethernet Control Model (CDC ECM)[*]     Ethernet Control Model (CDC ECM) subset[*] 		RNDIS[*]     Ethernet Emulation Model (EEM)[*]     Function filesystem (FunctionFS)

3.2、功能测试

先将你的usb切换成otg模式,并用一个usb线连接到你的电脑主机:

# 这是手动切换,如果你的硬件不能自动切换
echo peripheral > /sys/devices/platform/fe8a0000.usb2-phy/otg_mode

执行如下命令配置rndis功能:

echo usb_rndis_en > /etc/init.d/.usb_config

执行如下命令应用功能:

/usr/bin/usbdevice restart

应用成功后,ifconfig会出现一个新的网络节点:

给usb0配置ip:

ifconfig usb0 192.168.100.100

如果是你的电脑主机是windows系统,在网络适配器里会看到多出一个网卡,这个就是板卡通过usb虚拟出来的:

可以在windows下自行设置该网卡的ip,保证和刚刚在板卡里设置usb0的ip处于同一网段,即可实现电脑和板卡的网络通信。

4、USB UMS

USB UMS(USB Mass Storage,USB大容量存储)是一种通过USB接口将存储设备导出为U盘或移动硬盘的标准协议,广泛用于嵌入式系统、开发板和移动设备,使其可以通过 USB 被其他主机识别为标准存储设备。

4.1、内核配置

 -> Device Drivers                                                                                                                                             │-> USB support                                                                                                                         │-> USB Gadget Support                                                                                                                  │[*] USB Gadget functions configurable through configfs[*]     Mass storage

4.2、功能测试

先将你的usb切换成otg模式,并用一个usb线连接到你的电脑主机:

# 这是手动切换,如果你的硬件不能自动切换
echo peripheral > /sys/devices/platform/fe8a0000.usb2-phy/otg_mode

配置ums功能:

echo usb_ums_en > /etc/init.d/.usb_config
echo "ums_block=/rk3568.img" >> /etc/init.d/.usb_config
echo "ums_block_size=8" >> /etc/init.d/.usb_config
echo "ums_block_type=fat" >> /etc/init.d/.usb_config
echo "ums_block_auto_mount=on" >> /etc/init.d/.usb_config/usr/bin/usbdevice restart

此时,电脑端已经可以看到u盘:

可以往u盘里写入文件。

板卡可以通过挂载rk3568.img查看u盘里的文件。挂载前,windows先卸载u盘。

http://www.dtcms.com/a/249410.html

相关文章:

  • QCombobox设置圆角下拉列表并调整下拉列表位置
  • [每周一更]-(第144期):Go 定时任务的使用:从基础到进阶
  • github-mcp-server v0.5.0 发布详解:远程 GitHub MCP 服务器全新升级与最佳实践
  • Arduino入门教程:4-1、代码基础-进阶
  • PySpark 使用pyarrow指定版本
  • Android-Mod-Menu 使用教程
  • AlibabaCloud+SpringCloud简述
  • 基于Python学习《Head First设计模式》第十三章 现实世界中的模式
  • Python3 学习(菜鸟)-02基本数据类型
  • 基于Python学习《Head First设计模式》第十一章 代理模式
  • 使用Cursor + Devbox + Uniapp 一站式AI编程开发移动端(App、H5、小程序)
  • 分布式定时任务系列12:XXL-job的任务触发为什么是死循环?
  • 动态组件(component)的高级使用
  • 软件测试之简单基础的安全测试方法(另外包含软测面试题库)
  • 【Flutter】程序报错导致的灰屏总结
  • LangChain自动化工作流实战教程:从任务编排到智能决策
  • 计算机网络学习笔记:运输层概述UDP、TCP对比
  • IDEA高效快捷键指南
  • 刚学到一个使用共享软件而禁用弹窗的工具:微软电脑管家
  • 精益数据分析(104/126):免费移动应用的用户活跃率与付费转化优化策略
  • 项目拓展-Jol分析本地对象or缓存的内存占用
  • OCCT基础类库介绍:Modeling Data - 2D Geometry 3D Geometry Topology
  • ImportError: DLL load failed while importing win32api: 找不到指定的模块
  • 5G核心网Non-IP数据报文转发机制:Unstructured会话与协议栈解析
  • 每天一个前端小知识 Day 1
  • 【一】零基础--分层强化学习概览
  • Android音视频流媒体基础总结
  • nacos-作为注册中心与springcloud整合(三)
  • 【项目实训#09】智能代码文件助手模式前后端设计与实现
  • 安装laravel11和laravel12的一些报错问题解决