瑞萨单片机-USB复合设备(HID+CDC)

开发环境

芯片:R5F111ADFL
e2 studio版本:
在这里插入图片描述

时钟配置

1、USB要工作,需要提供48MHZ的频率给到UCLK
在这里插入图片描述

时钟配置

USB配置

1、单独生成USB设备配置后,再将其拷贝到另一工程中
2、例如,我需要的是cdc+hid复合设备,因此将hid和cdc的配置拷贝放到一个工程中
3、修改后的工程目录如下所示
在这里插入图片描述

代码修改

1、包含路径,将usb相关路径包含进来
2、修改r_usb_basic_mini_config.h
(好像也不是必须的)
在这里插入图片描述

3、修改描述符
就是将HID的描述符和CDC的描述符组合到一起。bNumInterfaces修改为2(hid+cdc)

设备描述符

配置描述符
4、修改usb_main函数(我这将usb_main拆分为2个函数,一个usb_init,一个usb_task)
这个函数执行不同设备的处理。
我们修改主要是增加另一个设备类的处理。比如我是在cdc配置基础上增加的hid,因此需要在usb_main中增加hid部分的处理。
这个可以直接在hid项目中拷贝过来即可
在这里插入图片描述
5、修改main函数
增加usb的初始化和usb_task处理
主函数

运行效果

使用bushound显示如下。电脑成功识别到复合设备。并且hid发送和cdc收发正常
在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值