查看: 2322|回复: 9

[原创] 移植CherryUSB 到LPC55S69

[复制链接]

该用户从未签到

37

主题

327

帖子

1

高级会员

Rank: 4

积分
886
最后登录
2023-7-19
发表于 2022-12-23 09:41:26 | 显示全部楼层 |阅读模式
CheeryUSB 最近挺火, 协议栈比较全,而且代码写的清晰,甚至有点“教学”。
资料,文档都很齐全。

CheeryUSB 项目地址:https://github.com/sakumisu/CherryUSB
CheretUSB 文档地址:https://cherryusb.readthedocs.io/zh_CN/latest/index.html



这个仓库是我在LPC55S69上移植FS USB device的一个例子,实现了USB 鼠标的功能。(Host暂时还没有做)。
https://gitee.com/yandld/lpc55-s69_-cheery-usb, 具体的底层移植文件就是  usbd_dc_lpc3511.c
简单记录下移植过程:
1. CherryUSB作为一个小开源项目,文档还算可以了,而且是中文的。但是其中有关移植部分写的比较少,他的底层核心接口函数并不多,最核心的就3个:

  • 首先复制一份从 port/template 复制一份 usb_dc.c 并参与编译,保证能编译过。

  • 实现 usb_dc_init 保证能进入中断

  • 在中断中判断 reset 中断并能够正常触发 reset 中断,在 reset 中断中调用 usbd_event_reset_handler,如果可能,还需要启动读取 setup 包。

  • 在中断中判断 setup 中断并能够正常触发 setup 中断,然后将读取的数据传入 usbd_event_ep0_setup_complete_handler

  • 实现 usbd_ep_start_write (类似于串口的DMA TX)并能够触发发送完成中断

  • 实现 usbd_ep_start_read (类似于串口的DMA RX)并能够触发接收完成中断






回复

使用道具 举报

  • TA的每日心情
    慵懒
    15 小时前
  • 签到天数: 1941 天

    [LV.Master]伴坛终老

    61

    主题

    1万

    帖子

    3

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    17301
    最后登录
    2024-4-26
    发表于 2022-12-23 09:59:08 | 显示全部楼层
    CheeryUSB 不错,移植过其他MCU。
    学习学习55S69移植。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    昨天 13:48
  • 签到天数: 839 天

    [LV.10]以坛为家III

    5

    主题

    5711

    帖子

    1

    金牌会员

    Rank: 6Rank: 6

    积分
    6944
    最后登录
    2024-4-26
    发表于 2022-12-23 10:00:53 | 显示全部楼层
    感谢分享,学习学习
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    前天 09:35
  • 签到天数: 270 天

    [LV.8]以坛为家I

    31

    主题

    2994

    帖子

    38

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    5316

    活跃会员

    最后登录
    2024-4-26
    发表于 2022-12-23 10:32:08 | 显示全部楼层

    CheeryUSB 不错,移植过其他MCU。
    学习学习55S69移植。
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    昨天 22:46
  • 签到天数: 1211 天

    [LV.10]以坛为家III

    22

    主题

    4765

    帖子

    0

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    8085

    活跃会员

    最后登录
    2024-4-26
    发表于 2022-12-23 20:44:49 | 显示全部楼层
    谢谢分享
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 23:45
  • 签到天数: 1318 天

    [LV.10]以坛为家III

    124

    主题

    2832

    帖子

    31

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    7575
    最后登录
    2024-4-27
    发表于 2022-12-24 21:23:54 | 显示全部楼层
    谢谢分享!            
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    昨天 09:34
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    1

    主题

    12

    帖子

    0

    中级会员

    Rank: 3Rank: 3

    积分
    286
    最后登录
    2024-4-26
    发表于 2022-12-28 13:44:56 | 显示全部楼层
    谢谢分享!
    打卡打卡!今天天气不好!
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2023-2-7 17:40
  • 签到天数: 21 天

    [LV.4]偶尔看看III

    0

    主题

    80

    帖子

    0

    注册会员

    Rank: 2

    积分
    136
    最后登录
    2023-2-7
    发表于 2022-12-29 09:20:39 | 显示全部楼层
    感谢分享干货知识,值得学习
    脚踏实地,坚持不懈!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    1

    帖子

    0

    新手上路

    Rank: 1

    积分
    7
    最后登录
    2023-7-9
    发表于 2023-1-5 14:25:11 | 显示全部楼层
    感谢分享,我是cherryusb 的作者,NXP 系列的话我这边没有板子,所以就没有做移植,LPC 系列每款好像都不太一样。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    6 小时前
  • 签到天数: 484 天

    [LV.9]以坛为家II

    8

    主题

    1356

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2916
    最后登录
    2024-4-27
    发表于 2023-1-5 16:48:57 | 显示全部楼层
    不错,学习一下LPC55S69移值
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-27 15:44 , Processed in 0.126576 second(s), 27 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表