【经验】瑞萨RA系列USB复合模式PCDC+PCDC功能设计
瑞萨RA系列MCU支持USB全速和高速模式,在USB项目中,我们经常需要用到一些外围通信设备类驱动程序即PCDC的传输例程,但是在实际项目中对于既需要数据传输又需要控制逻辑的USB接口,这样的操作要求设计起来就相对较为麻烦,这时候瑞萨RA系列中USB的复合模式PCDC+PCDC的方法刚好可以帮助我们解决这个问题,我们可以通过其中一路PCDC来传输数据,另外一路PCDC来传输控制逻辑,这样将数据传输和控制逻辑分开操作,便于主从设备间的交互,以下主要介绍项目中设置USB复合模式的方法:
1、首先需要在e2 studio中增加usb_composite模块,如下图所示:
添加模块后添加PCDC+PCDC功能,参考如下:
2、传输例程参考代码如下:
/*打开USB实例*/
R_USB_Open (&g_basic0_ctrl, &g_basic0_cfg);
/*获取USB类方式*/
R_USB_ClassTypeGet (&g_basic0_ctrl, &g_usb_class_type);
/*获取模块号*/
R_USB_ModuleNumberGet(&g_basic0_ctrl, &g_usb_module_number);
while(1)
{
/* 获取USB相关事件*/
R_USB_EventGet (&g_basic0_ctrl, &usb_event);
/* 判断事件类别*/
switch (usb_event)
{
case USB_STATUS_CONFIGURED:
{
/*获取USB复合模式中的数据信息*/
R_USB_Read (&g_basic0_ctrl, c_cfg_data, 8, USB_CLASS_PCDC);
R_USB_Read (&g_basic0_ctrl, c_cfg_data, 8, USB_CLASS_PCDC2);
break;
}
case USB_STATUS_REQUEST :
{
/* 接收类请求*/
/* 检查特定的 CDC 类请求 ID */
break;
}
case USB_STATUS_WRITE_COMPLETE:
{
/*判断USB复合模式数据写完之后,执行读操作*/
R_USB_Read(&g_basic0_ctrl, p_data, 1, USB_CLASS_PCDC);
R_USB_Read(&g_basic0_ctrl, c_data, 1, USB_CLASS_PCDC2);
break;
}
case USB_STATUS_READ_COMPLETE:
{
/*判断USB复合模式数据读完之后,执行写操作*/
/*获取USB复合模式中PCDC的管道号,以判断输入信号的类别*/
if(g_basic0_ctrl.pipe == 2)/*根据实际的管道号*/
{
R_USB_Write(&g_basic0_ctrl, p_data, WRITE_BUF_SIZE, USB_CLASS_PCDC);
}
else if(g_basic0_ctrl.pipe == 4)
{
R_USB_Write(&g_basic0_ctrl, c_data, COMM_BUF_SIZE, USB_CLASS_PCDC2);
}
break;
}
default:
{
break;
}
}
}
以上内容介绍USB复合模式中PCDC+PCDC的设置方法和参考代码例程,代码例程中特别要注意的是获取管道号判断数据源的操作,这样可以区分传输的是数据信息还是控制信息,以上对USB复合模式中的双路PCDC操作进行了简单的介绍,帮助大家快速的了解瑞萨RA系列中USB复合模式PCDC+PCDC的操作方法。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由Park_世强提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关研发服务和供应服务
相关推荐
【经验】雅特力AT32 MCU USB设备库的架构和使用方法
本文主要介绍雅特力MCU AT32 USB设备库的结构和库的使用方法,AT32 USB是基于USB2.0全速设备,不支持USB2.0高速设备。这里库的作用是用来管理USB外设和实现USB的基本协议,使开发者能够更快的上手开发。
设计经验 发布时间 : 2023-03-04
【经验】如何使用雅特力AT32 MCU主机库快速开发USB相关应用
本文主要介绍雅特力MCU AT32 USB主机库的结构和库的使用方法,AT32 USB支持全速和低速,不支持USB2.0高速设备。这里库的作用是用来管理USB外设和实现USB的基本协议,使开发者能够更快的上手开发。
设计经验 发布时间 : 2023-01-18
【经验】如何使用雅特力MCU AT32F415 USB HOST接U盘进行固件升级
本文将为您详细介绍如何使用雅特力MCU AT32F415 USB HOST接U盘进行固件升级。AT32F415支持USB Host,因此可以可以挂载U盘,通过FAT32文件系统读取U盘里面的BIN文件,直接做固件升级。
设计经验 发布时间 : 2022-07-06
沁恒基于青稞RISC-V内核的MCU和自研PHY的USB/蓝牙/以太网接口芯片,适用于计算机手机周边、工业控制、物联网
型号- CH32X035F8U6,CH32X035G8R6,CH32V303RCT6,CH32V103R8T6,CH32V103C6T6,CH32F203K8T6,CH32V203F8U6,CH32F205RBT6,CH32F203C8T6,CH32V203G8R6,CH532,CH531,CH545,CH547,CH546,CH549,CH548,CH32V208WBU6,CH32V208RBT6,CH32F103R8T6,CH32V003J4M6,CH32F103C6T6,CH32F203RCT6,CH32V305RBT6,CH32L103,CH541,CH543,CH32V003F4P6,CH32F103C8U6,CH32X035C8T6,CH32V303RBT6,CH32V208GBU6,CH32V307RCT6,CH32V203K8T6,CH32L103F8P6,CH592,CH32V203C8T6,CH591,CH32V307WCU6,CH32X035F7P6,CH522,CH525,CH527,CH32C035,CH32V203G6U6,CH32V307,CH32F203C8U6,CH32V203C8U6,CH32V203F6P6,CH521,CH32V203RBT6,CH578,CH32V303VCT6,CH577,CH579,CH32F203CBT6,CH32V103C8T6,CH32V003A4M6,CH32X033F8P6,CH32L103F7P6,CH32F203C6T6,CH571,CH573,CH32F103C8T6,CH32V103C8U6,CH32X035G8U6,CH32V003F4U6,CH32L103K8U6,CH32L103C8T6,CH32F208RBT6,CH32V208,CH581,CH583,CH32F203VCT6,CH32F208WBU6,CH582,CH32X035R8T6,CH32V208CBU6,CH555,CH558,CH557,CH559,CH32V303CBT6,CH32L103F8U6,CH32V305FBP6,CH32V203K6T6,CH32V203C6T6,CH552,CH32V307VCT6,CH551,CH554,CH567,CH569,CH568,CH32L103G8R6,CH32F207VCT6,CH561,CH563,CH32V203F8P6
雅特力AT32F405高速USB MCU荣获“年度最佳MCU”
3月28-29日,由AspenCore主办的2024国际集成电路展览会暨研讨会在上海张江科学会堂圆满举行。2024年中国IC设计Fabless100排行榜也在同期举行的中国IC领袖峰会发布,雅特力AT32F405荣获“中国IC设计成就奖之年度最佳MCU”。
原厂动态 发布时间 : 2024-04-12
【选型】ROHM(罗姆)LAPIS 8/16/32bit微控制器(MCU)选型指南(英文)
目录- Microcontrollers introduction 16bit General-Purpose MCUs 16bit Low Power MCUs 8bit Low Voltage MCUs 8bit Audio Playback MCUs 32bit USB Inter Face and Security Fanction MCUs 8bit/16bit MCU Development Support System MCUs Specification and Part Number Explanation
型号- ML62Q1713,ML610Q419C-NNNTBXXXX,ML62Q1714,ML610Q409P,ML62Q1557,ML62Q1711,ML62Q1712,ML62Q1555,ML62Q1556,ML62Q1710,ML62Q1723C,ML62Q1553,ML610Q429,ML62Q1554,ML62Q1551,ML62Q1552,ML62Q1550,ML62Q1300 GROUP,ML610Q431,ML610Q438,ML620Q503H,ML610Q439,ML610Q436,ML610Q435,ML62Q1704,ML610Q432,ML62Q1724,ML610Q408P,ML62Q1725,ML62Q1722,ML62Q1723,ML62Q1323,ML62Q1566,ML62Q1720,ML62Q1567,ML62Q1721,ML62Q1734C,ML62Q1325,ML62Q1564,ML610Q418,ML62Q1324,ML62Q1565,ML610Q419,ML62Q1563,ML610Q436A,ML62Q1544C,ML62Q1700 GROUP,ML610Q409A,MWU16,ML610Q306,ML610Q428,ML610Q412P,ML610Q304,ML610Q426,ML610Q305,ML610Q300,ML620Q504H,ML610Q421,ML610Q422,ML62Q1533,ML610Q409,ML62Q1733C,ML62Q1534,ML62Q1531,ML610Q407,ML62Q1532,ML610Q408,ML62Q1543C,ML62Q1530,ML610Q435A,ML610Q407D,ML610Q419C,ML610Q407A,ML610Q411P,ML610Q412,ML610Q411,ML610Q407P,ML62Q1702,ML62Q1703,ML620Q500,ML62Q1700,ML62Q1701,YQPACK064SA,ML62Q1544,ML62Q1300,ML62Q1542,YQPACK064SD,ML610Q407PA,ML62Q1543,ML62Q1540,ML62Q1554C,ML62Q1541,ML610Q418C,MODEL308,ML62Q1800 GROUP,ML610Q482,ML62Q1000 SERIES,ML610Q422P,ML610Q400,ML62Q1878,ML62Q1879,MODEL404E+,ML630Q400,MODEL400E+,ML62Q1553C,MODEL408E+,EASE1000 V2,NQPACK064SA,ML610Q421P,ML610482,ML610400,ML610Q411PA,ML62Q1748,ML62Q1869,ML62Q1749,LEXIDE-U16,MODEL416E+,ML62Q1800,ML62Q1366,ML610Q432A,ML62Q1367,ML62Q1714C,ML62Q1000,ML62Q1365,ML62Q1564C,ML62Q1500 GROUP,ML62Q1735,ML62Q1736,ML62Q1733,ML62Q1734,ML62Q1335,ML62Q1577,TEC-064SD-KC,ML610Q431A,ML630Q464,ML62Q1333,ML62Q1575,ML62Q1713C,ML62Q1334,ML62Q1576,ML630Q466,ML62Q1573,ML62Q1574,ML62Q1563C,DR.1000,ML62Q1728,ML62Q1729,ML62Q1726,ML610Q439P,ML62Q1727,ML62Q1746,ML62Q1747,ML62Q1868,ML610482P,ML62Q1744,ML62Q1745,ML62Q1346,ML62Q1500,ML62Q1347,ML62Q1743,ML62Q1724C,ML62Q1345,TEC-064SA-KC,ML610Q426C,DR1000-FLQ-64,ML610Q482P,MODEL400E+SERIES,NQPACK064SD-ND,ML62Q1739,ML62Q1737,ML62Q1858,ML62Q1738,ML62Q1859
【IC】雅特力AT32F402/F405系列高速USB MCU新品发布
雅特力领先业界研发USB OTG产品拓展其功能性,推出了主流型AT32F402和AT32F405系列MCU,集成独立的HS USB OTG(内建PHY,仅F405支持)与FS USB OTG(设备模式均支持无晶振Xtal-less)。本次研讨会将详细讲述AT32F402/F405产品规格、功能,聚焦应用与市场,以及开发生态与成功案例!
产品 发布时间 : 2024-01-12
C8051F340/1/2/3/4/5/6/7/8/9/A/B/C/D Full Speed USB Flash MCU Family
型号- C8051F34B-GQ,C8051F34B-GM,C8051F34D-GQ,C8051F34A,C8051F341-GQ,C8051F34C,C8051F34B,C8051F343-GQ,C8051F34D,C8051F346-GM,C8051F348-GQ,C8051F343-GM,C8051F349,C8051F34X,C8051F348,C8051F346-GQ,C8051F341,C8051F340,C8051F343,C8051F342,C8051F345,C8051F344,C8051F347,C8051F346,C8051F34C-GQ,C8051F34A-GQ,C8051F34A-GM,C8051F340-GQ,C8051F342-GQ,C8051F349-GM,C8051F344-GQ,C8051F347-GM,C8051F342-GM,C8051F349-GQ,C8051F347-GQ,C8051F345-GQ
沁恒USB蓝牙以太网,全栈MCU让连接更简单
型号- CH390,CH592,CH591,CH9121,CH9143,CH571,CH395,CH573,CH397,CH9120,CH9142,CH9141,CH32X035,CH569,CH32V208,CH32V307,CH182,CH581,CH32V305,CH583,CH32V303,CH582,CH32V103,CH32V203,CH565,CH32V003
【经验】解析AT32 MCU如何使用USB MSD进行IAP升级
关于IAP您有了解吗?IAP在线升级的原理是怎样的?AT32 MCU又应如何使用USB MSD进行IAP升级呢?本文雅特力将就上述问题为您进行详细介绍。
设计经验 发布时间 : 2022-05-27
【经验】Silicon Labs 8位USB MCU EFM8UB系列产品USB功能调试方法
在USB程序开发及调试的过程中工程师需要对程序进行调试,通常使用USB协议分析仪是最好的方法,但由于这一设备价格较贵并不是每家公司都备有这样的仪器,那在有限的条件下如何对USB的程序进行调试分析?
设计经验 发布时间 : 2019-03-16
【技术】灵动MM32F0163D7P系列MCU的USB接口如何移植和新增设备?
本文基于灵动微电子MCU MM32F0163D7P,介绍USB接口如何移植和新增设备应用指南。新增一个class里面没有参考示例的设备,如果用户想增加一个device设备但是在TinyUSB class里面又没有参考示例。
技术探讨 发布时间 : 2023-07-25
【经验】国民技术MCU N32L406RBT6的USB开发历程
国民技术的N32L406RBT6的USB支持USB HID、USB转串口、USB储存设备等功能。由于USB的协议比较复杂,因此国民技术配置了开发历程,将历程编译下载到单片机就可以实现简单的USB功能。
设计经验 发布时间 : 2023-03-28
【应用】芯海OTP MCU CSU8RP3215用于USB台灯,休眠模式下的电流小于1μA
USB台灯通常采用USB 5V供电,通过MCU输出PWM波开启和关闭LED来改变正向电流的导通时间,以达到亮度调节的效果。对于这类简单应用,芯海OTP MCU CSU8RP3215可以说是非常适合这类应用的。
应用方案 发布时间 : 2022-11-30
电子商城
现货市场
服务
可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。
最小起订量: 1000 提交需求>
可烧录IC封装SOP/MSOP/SSOP/TSOP/TSSOP/PLCC/QFP/QFN/MLP/MLF/BGA/CSP/SOT/DFN;IC包装Tray/Tube/Tape;IC厂商不限,交期1-3天。支持IC测试(FT/SLT),管装、托盘装、卷带装包装转换,IC打印标记加工。
最小起订量: 1pcs 提交需求>
登录 | 立即注册
提交评论