0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何在RK3568开发板上实现USBNET模式?

冬至子 来源:飞凌嵌入式 作者:飞凌嵌入式 2023-09-15 17:17 次阅读

本文将借助飞凌嵌入式OK3568-C开发板为大家介绍实现USBNET模式的方法,在这之前需要先知道什么是USB Gadget——USB Gadget是指所开发的电子设备以USB从设备的模式通过USB连接到主机。

举个例子:将手机通过USB线插入PC后,手机就是USB Gadget。同理,在本文的操作中就是将手机替换成了OK3568-C开发板。

Gadget框架提出了一套标准API,在底层,USB设备控制器(UDC) 驱动则实现这一套API,不同的UDC(通常是SoC的一部分) 需要不同的驱动, 甚至基于同样的UDC的不同板卡也需要对代码进行修改。

我们想要实现USBNET也需要驱动,它的名字叫做RNDIS。RNDIS驱动在内核中是存在的,只需要找到配置项并编译进内核即可。

首先进入源码kernel目录,进入menuconfig图形配置界面:

进入menuconfig时需要指定环境,不然直接执行make menuconfig进入的图形配置界面为X86架构。如下图进入的为ARM架构是正确的图形配置界面:

按 /,可以进入搜索界面:

直接搜索rndis,找到写有USB Gadget字样的目录,可以看到有多个路径,可以直接进入USB Gadget目录下去看,那个就是配置RNDIS的选项。

经过寻找最终路径如下图所示:

将RNDIS驱动开启,并选中一些网络协议配置,如下图圈中所示:

找到USB Gadget precomposed configurations,将RNDIS编译进内核(如果选择编译成模块,单独编译内核不会生成 .ko文件,为了省去繁琐挂载步骤,本篇就将RNDIS编译进内核)。

配置完成,选择Exit按键直到退出,“是否保存”选择yes即可:

返回源码目录进入build.sh脚本,注释掉defconfig生成.config文件的命令,使menuconfig配置生效,注释位置如下:

保存退出,单独编译内核,在源码目录下执行./build.sh kernel。编译完成之后会在kernel目录下生成boot.img文件。

单步更新镜像使用瑞芯微官方提供的烧写工具—— RKDevTool 。按住Recovery键按Reset,直到烧写工具显示发现一个LOADER设备后松开Recovery键。

替换图中位置,点击设备分区表,完成后,点击执行,设备重启后,即为烧录完成,右侧也会有烧录进度。开发板重启后,ifconfig -a查看可以看到生成usb0节点。

利用Linux USB Gadget设备驱动可以实现一些比较有意思的功能:

1. 一个嵌入式产品中的某个存储设备,或是一个存储设备的某个分区,可以作为一个U盘被PC识别;

2. 一个嵌入式设备通过USB连接到PC后,在PC端会出现一个新的网络连接,在嵌入式设备上也会有一个网卡设备,你可以配置它们的IP地址,并进行网络通讯,俗称USBNET。

此次使用的是USB3.0接口,因此需要detect激活Type-C 5V转3.3V Type-A,硬件改动为p40的pin1连接c23的正极。将播码开关拨至ON,插入双公头USB线;

强制使USB输出为device

echo peripheral > /sys/devices/platform/fe8a0000.usb2-phy/otg_mode

打印信息如图所示:

可以在设备管理器网络适配器上看到这个节点,配置一个IP

查看网络连接可以看到一个未识别网络,将这个也配置上IP,注意需要跟OK3568-C开发板配置的IP在同一网段:

使用OK3568-C开发板去ping刚才电脑配置的IP,发现可以ping通。

通过以上信息可以看出,OK3568-C开发板已实现USBNET功能,实现网络共享。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 驱动器
    +关注

    关注

    51

    文章

    7310

    浏览量

    142972
  • 嵌入式系统
    +关注

    关注

    40

    文章

    3431

    浏览量

    128225
  • USB控制器
    +关注

    关注

    1

    文章

    34

    浏览量

    11791
  • ARM架构
    +关注

    关注

    14

    文章

    167

    浏览量

    35992
  • RK3568
    +关注

    关注

    4

    文章

    433

    浏览量

    4135
  • 飞凌嵌入式
    +关注

    关注

    0

    文章

    68

    浏览量

    54
收藏 人收藏

    评论

    相关推荐

    何在RK3568开发板实现USBNET?——飞凌嵌入式/USB Gadget/USB-NET/网络

    本文将借助飞凌嵌入式OK3568-C开发板为大家介绍实现USBNET模式的方法
    的头像 发表于 09-15 15:34 628次阅读
    如<b class='flag-5'>何在</b><b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>上<b class='flag-5'>实现</b><b class='flag-5'>USBNET</b>?——飞凌嵌入式/USB Gadget/USB-NET/网络

    何在RK3568开发板上面运行OpenHarmony标准系统

    1、RK3568开发板丝滑体验OpenHarmony标准系统  瑞芯微 RK3568 芯片是一款定位中高端的通用型 SOC,采用 22nm 制程工艺,集成 4 核 arm 架构 A5
    发表于 08-31 17:06

    RK3568开发板如何支持NFS服务呢

    硬件平台:OK3568-C开发板 操作系统: Linux4.19.206本文硬件平台采用飞凌嵌入式RK3568开发板,主要讲解RK3568
    发表于 11-25 16:04

    RK3568开发板Linux系统如何修改异显呢

    本文硬件平台采用飞凌嵌入式RK3568开发板,主要讲解Linux系统 RK3568开发板如何修改异显。RK3568 Linux 修改异显使用
    发表于 12-13 17:14

    在瑞芯微RK3568开发板实现USBNET模式的方法

    本文将借助飞凌嵌入式OK3568-C开发板为大家介绍实现USBNET模式的方法,在这之前需要先知道什么是USB Gadget——USB Ga
    发表于 09-18 16:40

    RK3568开发板数据手册

    RK3568 开发板主控采用的是瑞芯微 A55 64 位四核处理器 RK3568,其主频高达 2.0 GHz。集成了 Mali G52 2EE 图形处理器,支持 4K 解码和 1080P 编码
    发表于 08-30 11:56 23次下载

    【ROC-RK3568-PC开发板试用体验】Firefly ROC-RK3568-PC开发板初探

    本文来源电子发烧友社区,作者:ouxiaolong, 帖子地址: https://bbs.elecfans.com/jishu_2303714_1_1.html ROC-RK3568-PC开发板
    的头像 发表于 10-18 16:11 3054次阅读
    【ROC-<b class='flag-5'>RK3568</b>-PC<b class='flag-5'>开发板</b>试用体验】Firefly ROC-<b class='flag-5'>RK3568</b>-PC<b class='flag-5'>开发板</b>初探

    瑞芯微rk3568开发板原理图

    瑞芯微rk3568 开发板 原理图工程文件AD格式
    发表于 04-24 14:12 66次下载

    瑞芯为RK3568开发板搭建NFS服务器

    瑞芯为RK3568开发板搭建NFS服务器
    的头像 发表于 05-24 14:10 810次阅读
    瑞芯为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>搭建NFS服务器

    迅为RK3568开发板实现的NVR/XVR方案

    迅为RK3568开发板实现的NVR/XVR方案
    的头像 发表于 06-14 18:00 812次阅读
    迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板实现</b>的NVR/XVR方案

    【教程上新】基于迅为iTOP-RK3568开发板的OpenCV开发手册

    【教程上新】基于迅为iTOP-RK3568开发板的OpenCV开发手册
    的头像 发表于 02-08 15:22 550次阅读
    【教程上新】基于迅为iTOP-<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>的OpenCV<b class='flag-5'>开发</b>手册

    瑞芯微RK3568主板开发板PET_RK3568_P01简述

    瑞芯微RK3568主板开发板PET_RK3568_P01简述
    的头像 发表于 08-08 11:41 1769次阅读
    瑞芯微<b class='flag-5'>RK3568</b>主板<b class='flag-5'>开发板</b>PET_<b class='flag-5'>RK3568</b>_P01简述

    迅为RK3568开发板GPIO之外接模块

    迅为RK3568开发板GPIO之外接模块
    的头像 发表于 08-24 17:41 670次阅读
    迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>GPIO之外接模块

    迅为RK3568开发板实现多屏异显控方案

    迅为RK3568开发板实现多屏异显控方案
    的头像 发表于 07-15 17:30 1331次阅读
    迅为<b class='flag-5'>RK3568</b><b class='flag-5'>开发板</b>可<b class='flag-5'>实现</b>多屏异显控方案

    RK3568开发板规格书

    RK3568开发板规格书
    发表于 03-23 15:28 64次下载