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

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

3天内不再提示

如何对TinyUSB上游仓库进行移植

科技绿洲 来源:RTThread物联网操作系统 作者:RTThread物联网操作 2022-05-06 11:26 次阅读

TinyUSB 是一个用于嵌入式系统的开源跨平台 USB Host/Device 协议栈,其为了内存安全而设计,没有动态分配,同时也是线程安全的,所有中断事件都会被推迟,然后在非 ISR 任务函数中处理,支持多种 MCU。目前 TinyUSB 的源代码托管在 GitHub 上。

在社区成员谭丰伟的努力下,通过对 TinyUSB 上游仓库进行 移植,目前已成为 RT-Thread 软件包。

支持情况

目前软件包仅支持 USB Device 协议栈。同时希望能有更多的社区伙伴能参与到 MCU 的适配中。

设备类

CDC

MSC

HID

MCU

STM32: F0, F1, F2, F3, F4, F7, H7, L0, L1, L4

NRF52840

HPM6000 系列

开始使用

启用软件包

1、ENV软件包在 ENV 包管理器中的路径为:

pYYBAGJ0lPeAdixMAABxyKmsD4w146.png

Keil MDK 中使用时,请选择 ARM Clang 编译器,或手动在编译选项中选中 GNU Extensions。

pYYBAGJ0lQOAJp7xAADrXg621JY080.png

2、RT-Thread Studio在 RT-Thread Studio 中,搜索 TinyUSB 即可将软件包添加至工程。

pYYBAGJ0lRKAKsnBAABqeI7jx5Y550.png

软件包配置

这里我们使用 CDC 虚拟串口,以及软件包提供的示例来进行演示。首先在配置中启用 USB 设备,然后依次选中 CDC 和 CDC 设备的示例,保存关闭设置界面,软件包便会自动下载添加到项目中。

pYYBAGJ0lSaAb7Q-AACdj_PsUkg845.png

在编译完成后,将程序烧录至芯片中。将 USB OTG 口连接上电脑后,我们可以在设备管理器中看到对应的端口

poYBAGJ0lTaABHlkAACmDNh0Wx8380.png

pYYBAGJ0lUCAQOk2AABTgRoHgwk312.png

在 Putty 或 MobaXterm 中分别打开 FinSH 和 CDC 对应的端口,在控制台中输入 cdc_example ,即可在 CDC 的端口中输入任意字符(不超过 32 个字符),按下回车后,会显示刚刚输入的字符。

pYYBAGJ0lUqAR2AEAABFflKGtfc388.png

用户手册

用户手册已经在 RT-Thread 文档中心上线(链接请复制至外部浏览器打开):https://www.rt-thread.org/document/site/#/rt-thread-version/rt-thread-standard/packages-manual/tinyusb-docs/introduction

问题反馈

Issue: RT-Thread-packages/tinyusb

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

    关注

    60

    文章

    7897

    浏览量

    264000
  • 软件包
    +关注

    关注

    0

    文章

    101

    浏览量

    11584
  • RT-Thread
    +关注

    关注

    31

    文章

    1273

    浏览量

    39924
收藏 人收藏

    评论

    相关推荐

    ESP32S3 USB CDC TinyUsb TX卡死的原因?怎么解决?

    问题描述: 我使用tinyusb_cdcacm_write_queue()函数发送数据,每150ms调用一次,每次发送10256个数据。 一开始能正常发送,大概5分钟之后
    发表于 06-05 06:22

    menuconfig的tinyusb msc打开编译报错是什么原因导致的?

    : esp-idf/espressif__tinyusb/libespressif__tinyusb.a(msc_device.c.obj):(.literal.proc_builtin_scsi+0x10
    发表于 06-11 08:19

    如何在ESP32S3上使用TinyUSB,配置为Vendor Class设备?

    您好,请问如何再ESP32S3上使用TinyUSB,配置为Vendor Class设备,没找到参考例程
    发表于 06-17 06:43

    esp32s2用tinyusb编译不成功的原因?

    esp32s2 用tinyusb编译不成功 有教程指路吗 版本是4.4
    发表于 06-18 06:44

    在STM32F103VB上使用tinyusb完成配置之后没有反应是怎么回事

    尝试STM32F103VB上使用tinyusb,完成配置之后开始没有反应。调试后发现这个上拉电阻的实现需要手动实现控制:dcd_disconnectdcd_connect之后调试发现设备还是无法识别
    发表于 04-15 16:50

    stm32103VB tinyusb使用异常,无法识别描述符是为什么?

    尝试STM32F103VB上使用tinyusb,完成配置之后开始没有反应。调试后发现这个上拉电阻的实现需要手动实现控制:dcd_disconnectdcd_connect之后调试发现设备还是无法识别
    发表于 05-30 11:08

    如何使用计算机上的本地仓库以及GitHub上托管的远程仓库

    的名称。 例如,源仓库上游仓库是两种常见选择。远程仓库的新 URL。 例如:如果您要更新为使用 HTTPS,您的 URL 可能如下所示:如果您要更新为使用 SSH,您的 URL 可能
    发表于 06-22 16:57

    esp32如何直接通过lvgl主仓库进行使用的?

    example是直接执行了lv_init(),请问这个esp_lcd的工作原理是咋样的,他是如何直接通过lvgl主仓库进行使用的?
    发表于 02-17 08:11

    如何使用Class软件进行仓库规划仿真研究

    面临着巨大的挑战。仓库的建设是整个仓储活动的开端,对今后仓库活动的有效运行起着至关重要的作用。所以本文在对港区及北货站区基本运营情况进行调研的基础上,运用Class仓储仿真软件,针对郑州航空港机场国内货运站拟建
    发表于 01-15 14:45 10次下载
    如何使用Class软件<b class='flag-5'>进行</b><b class='flag-5'>仓库</b>规划仿真研究

    基于开源GSYRickText进行的OHOS化移植和开发

    项目介绍: 本项目是基于开源项目GSYRickText 进行OHOS化的移植和开发的。 移植版本:v2.0.2 项目名称:GSYRichText 所属系列:OHOS的第三方组件适配移植
    发表于 03-18 15:31 3次下载

    TinyUSB针对嵌入式系统的开源USB堆栈

    tinyusb.zip
    发表于 04-15 10:33 3次下载
    <b class='flag-5'>TinyUSB</b>针对嵌入式系统的开源USB堆栈

    wms仓库管理对企业的重要性

    一、什么是wms仓库管理? WMS是仓库管理系统的缩写,它提供了一个可视化、智能化的平台,帮助公司进行仓库作业的管理和优化。WMS系统可以支持各种类型的
    的头像 发表于 05-11 15:53 551次阅读

    TinyUSB基本介绍和移植例程

    TinyUSB是一个用于嵌入式系统的开源的跨平台USB协议栈,协议栈中包含了主机端及设备端的协议栈,由于不使用动态内存分配以及采用阻塞所有中断事件,在非ISR任务功能中处理中断事件的设计方式,所以此协议栈的内存安全性及线程安全性极高。
    的头像 发表于 07-14 09:38 9803次阅读
    <b class='flag-5'>TinyUSB</b>基本介绍和<b class='flag-5'>移植</b>例程

    基于MM32F0163D7P的USB接口TinyUSB应用:移植和新增设备(二)

    如果用户想增加一个device设备但是在TinyUSB class里面又没有参考示例,本次我们一起来移植一个CDC+printer复合设备。操作步骤还是和上篇一样,先将TinyUSB 从GitHub上克隆下来,将src 整个文件
    的头像 发表于 07-20 17:05 1161次阅读
    基于MM32F0163D7P的USB接口<b class='flag-5'>TinyUSB</b>应用:<b class='flag-5'>移植</b>和新增设备(二)

    Vision-Board 使用TinyUSB驱动Xbox游戏手柄

    Vision-Board社区有大佬搞新活了! 如果手上有XBOX手柄的话赶快掏出你的Vision-Board 体验下: 接下来看看KunYi大佬如何进行添加的Xbox支持的: 准备工作
    的头像 发表于 05-10 15:42 477次阅读
    Vision-Board 使用<b class='flag-5'>TinyUSB</b>驱动Xbox游戏手柄