最近在尝试裸机驱动 F1C100s,有一些大神将全志 USB 代码提取到裸机上,但是这些框架代码都比较混乱,感觉并不好用。在其他很多单片机上我们都可以使用 TinyUSB 框架,那么我们能不能也在 F1C100s 上用这个框架呢?经过三天的研究,我成功将 TinyUSB 适配了 F1C100s 上的 musb 控制器,适配后的代码位于 t123yh/tinyusb。
我将适配后的框架放入了前辈做的 Keil RTX4 工程中,形成了一个完整可工作的串口 Loopback Demo,代码在 t123yh/F1C100s_RTX4_USB。如果大家希望移植其他的 USB 设备类,可以自己到 TinyUSB 的 Example 文件夹下面找,有很多现成的例子。
目前有一个小 bug:串口的 IN 和 OUT Endpoint 不能用同一个(即不能同时使用 Endpoint 2 作为 TX 和 RX,只能用两个不同的)。如果用同一个,则串口只能发送一次数据,再发送数据就无法接收了。这个不知道是软件的 bug 还是硬件本身不支持。如果有会玩 USB 的朋友可以告知或修复一下。
离线
流B,这块硬骨头,终于有人啃了,感谢开源
离线
它没有支持主机?
离线
文件不全
离线
文件不全https://whycan.com/files/members/7570/捕获_20211208-1937.jpg
更新子模块
离线
F1C100s_RTX4_USB
added msc example, but speed not good (12MB/s for RAM)
添加了 msc 示例,但速度不佳(RAM 为 12MB/s)
离线
F1C100s_RTX4_USB
added msc example, but speed not good (12MB/s for RAM)
添加了 msc 示例,但速度不佳(RAM 为 12MB/s)
如果能帮忙提升下速度就好了
离线
文件不全https://whycan.com/files/members/7570/捕获_20211208-1937.jpg
tinyusb 是个子模块,建议从 github 上面拉一下最新版
离线
优秀!
感谢楼主分享, 我顺手克隆了一份上传, 方便无法上github的朋友: tinyusb_20211201_git.7z
之前的版本有各种问题,要用的朋友还是从我的 github 上面获取最新版,修了好几个 bug
离线
资料下载了一下. 编译了有少许错误存在. 不过也是一个不错了资料了
离线
为啥我编译不了呢?
提示编译器版本不对
*** Target 'Product' uses ARM-Compiler 'V6.6' which is not available.
*** Please review the installed ARM Compiler Versions:
'Manage Project Items - Folders/Extensions' to manage ARM Compiler Versions.
'Options for Target - Target' to select an ARM Compiler Version for the target.
*** Rebuild aborted.
换编译器版本V5.06 update 7(build 960)
又提示
.\..\tinyusb\src\common/tusb_compiler.h(223): error: #35: #error directive: "Compiler attribute porting is required"
换工具链继续测试
根据 KEIL可以使用 GNU 工具链,但是只能使用指定那些工具链,不是所有的GNU工具链都可以用
还是无法编译
你们都是咋编译过的
最近编辑记录 视觉℡ (2022-02-19 16:24:06)
离线
厉害 ,不知道移植到RT-thread 需要注意啥
离线
太棒了,一直在搜集驱动,又要多一个USB驱动了,我的工程中的驱动慢慢的开始完善起来了。感谢大佬
离线
楼主是取消分享了吗
离线
支持USB-HOST吗
离线
一个芯片能玩出多少花样?汇总一下!
离线
@t123yh
在f1c100s上跑了下cdc_msc的demo,发现有点问题,用tud_cdc_write往pc虚拟串口发送64个字节数据时,发送不出来;在esp32s3上发送正常,应该是dcd_sunxi_musb.c的问题,大佬有空能否看下怎么解决?
离线
离线
谢谢楼上胸弟!
离线