【经验】瑞萨RA系列USB外设通信功能配置使用说明
USB设备是项目中经常用到的外设,通常作为从机使用,瑞萨RA系列支持USB主从机设备,此文章主要介绍USB外围通信设备类驱动程序(PCDC)相关配置及使用方法。
r_usb_pcdc模块与r_usb_basic模块组合以提供USB外围通信设备类(PCDC)驱动程序。PCDC驱动程序符合USB通信设备类(CDC)规范的抽象控制模型,并允许与CDC主机设备进行通信。
可以通过New Stack > Middleware > USB > USB PCDC driver on r_usb_pcdc将该模块添加到“堆栈”选项卡中。
usb_event_info_t event_info;
usb_status_t event;
初始化处理,为参数g_basic0_ctrl中指定的USB模块供电:
g_usb_on_usb.open(&g_basic0_ctrl, &g_basic0_cfg);
while (1)
{
获取完成的USB相关事件(仅限无操作系统):
g_usb_on_usb.eventGet(&event_info, &event);
操作各类可能接收到的事件:
switch (event)
{
数据接收请求:
case USB_STATUS_CONFIGURED:
状态请求处理,接收类请求:
case USB_STATUS_REQUEST:
if (USB_PCDC_SET_LINE_CODING == (event_info.setup.request_type & USB_BREQUEST))
{
配置虚拟的UART设置,接收控制传输发送的数据:
g_usb_on_usb.periControlDataGet(&g_basic0_ctrl, (uint8_t *) &g_line_coding, LINE_CODING_LENGTH);
}
else if (USB_PCDC_GET_LINE_CODING == (event_info.setup.request_type & USB_BREQUEST))
{
发送虚拟的UART设置返回给主机,执行用于控制转移的转移处理:
g_usb_on_usb.periControlDataSet(&g_basic0_ctrl, (uint8_t *) &g_line_coding, LINE_CODING_LENGTH);
}
else
{
ACK响应所有其他的状态请求,设置对设置数据包的响应:
g_usb_on_usb.periControlStatusSet(&g_basic0_ctrl, USB_SETUP_STATUS_ACK);
}
break;
case USB_STATUS_WRITE_COMPLETE:
初始化完成,从主机获取数据,批量/中断数据传输和控制数据传输:
g_usb_on_usb.read(&g_basic0_ctrl, g_buf, DATA_LEN, USB_CLASS_PCDC);
break;
case USB_STATUS_READ_COMPLETE:
将收到的数据循环回主机,批量/中断数据传输和控制数据传输:
g_usb_on_usb.write(&g_basic0_ctrl, g_buf, event_info.data_size, USB_CLASS_PCDC);
break;
MCU低功耗处理:
case USB_STATUS_SUSPEND:
case USB_STATUS_DETACH:
break;
default:
break;
}
}
以上主要介绍USB外围设备通信类相关配置和使用方法,使用最小应用举例和相关配置使用说明,帮助大家快速的熟悉RA系列USB外设使用方法。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由Park_世强提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】如何在e2 studio编译环境下生成.bin或者.Hex档
Renesas RA系列MCU需要在e2 studio的编译环境下完成调试,该开发环境是可以支持在线Debug的,但是在调试完成后,需要量产的时候,还是需要生成.bin或者.hex档烧录到MCU里面去,下面来介绍如何在e2 studio的编译环境下生成.bin或者.hex档。
【经验】瑞萨RA系列MCU使用e2 studio的断点调试方法和注意事项
瑞萨RA系列MCU可以使用e2 studio等开发环境进行调试和下载程序,在使用e2 studio时我们经常会遇到一些异常现象,如没有办法下断点进行调试,无法debug观察寄存器状态等,本文将介绍一下e2 studio常见的断点调试方法和注意事项。
【经验】解析瑞萨RA家族MCU的主要区别及命名规则
目前瑞萨电子(Renesas)已经发布的RA产品家族MCU主要包括四个系列即RA2系列、RA4系列和RA6系列,以及计划发布的RA8系列。有很多客户不了解RA家族处理器的主要区别和命名规则,本文讲详细讲解。
Renesas Unveils the 1st Generation of Own 32-bit RISC-V CPU Core 32-bit Microcontrollers Ahead of Competition
Renesas has designed and tested a 32-bit CPU core based on the open-standard RISC-V ISA. The new RISC-V CPU core will complement Renesas’ existing IP portfolio of 32-bit microcontrollers, including the proprietary RX Family and the RA Family based on the Arm® Cortex®-M architecture.
【经验】瑞萨RA系列MCU在Keil开发环境下的开发介绍
本文主要介绍在Keil环境下如何新建瑞萨RA项目工程以及在已存在的RA醒目工程中如何通过图形化工具进行代码的底层配置。
【IC】瑞萨推出第一代32位RISC-V CPU内核,CoreMark/MHz性能达到了惊人的3.27
瑞萨电子宣布成功设计、测试并推出基于开放标准RISC-V指令集架构(ISA)的32位CPU内核。新的RISC-V CPU内核将扩充瑞萨现有32位微控制器(MCU)IP产品阵容,包括专有RX产品家族和基于Arm® Cortex®-M架构的RA产品家族。
【经验】瑞萨RA系列MCU低功耗唤醒功能测试
瑞萨RA系列MCU低功耗一共有三种模式,本次测试选择时钟为32.76kHZ,使用电容触摸按键唤醒,datasheet上描述芯片常温下功耗为0.55uA,用开发板实测功耗为60uA,经过检测,功耗主要来源于电容电阻,开发板中有一颗电阻功耗在30uA,并具体分析。
【经验】瑞萨RA系列MCU时钟系统解析
本文以瑞萨MCU RA6T2为例,如下XTAL是外接的主时钟,频率为8到24M范围内任意可选。连接到单片机的XTAL和EXTAL引脚,HOCO:是片上高速振荡器,他不可以随意设置,比如RA6T2,他的HOCO为16,18,20M三选一。
收购一周年:瑞萨通过Reality AI软件重新定义AI解决方案组合
Mohammed与我们分享了他对收购Reality AI的看法,解读这一举措如何助力公司将AI技术集成到新工具以及系统级解决方案中,从而改善开发流程,让客户的生活更轻松。
【经验】瑞萨RA系列MCU的底层配置之ICU配置和使用方法
本文以RA2E1为例介绍RA系列产品的ICU(外部中断)外设以及其软件配置、使用方法。RA系列在Keil、IAR或者E2 Studio均基于瑞萨FSP插件完成底层代码的生成,故其配置、使用方法在不同平台上均使用相同的操作,下面我们以E2 Studio为例介绍ICU的配置和使用。
【技术】瑞萨RA系列如何通过定时器+ELC实现串口通信空闲中断
介绍串口空闲中断主要是在数据接收过程中出现接收不到连续数据的现象时,用来触发给主函数流程的。一般会用在不定长的数据包接收或者需要实时数据接收反应的场合。RA虽然没有集成硬件的串口空闲中断功能,但是可以通过定时器+ELC,在不做任何硬件修改的情况下实现串口通信空闲中断功能。
Renesas’ New Ultra-High Performance MCUs RA8 Series are Industry’s First Based on Arm Cortex-M85 Processor
RENESAS‘ new RA8 Series MCUs are the industry’s first to implement the Arm® Cortex®-M85 processor, enabling the new devices to deliver industry-leading 6.39 CoreMark/MHz1 performance. They are available now, along with the FSP software.
【经验】瑞萨RA调试中使用RTT Viewer,无需单独开启串口调试
在项目调试中我们经常用到串口调试的功能,但串口调试会占用我们的硬件资源,还要外接串口小工具,量产MCU时还要关闭串口功能,使用起来不是那么方便,而在调试瑞萨RA系列MCU的时候,因芯片本身支持JLink调试,在JLink调试工具中就有RTTViewer这个上位机软件,不必在MCU上面单独再开启一个串口调试,如下介绍RTTViewer的连接使用方法:1、首先在RA项目例程中,多数已经加入了这个工具的
【经验】浅析Renesas RA系列32位MCU命名规则
灵活的Renesas Advanced (RA) 32位MCU是采用Arm® Cortex®-M33、-M23和-M4处理器内核,并经过PSA认证的、行业领先的32位MCU。RA可提供更为强大的嵌入式安全功能、卓越的CoreMark®性能和超低的运行功率。
电子商城
现货市场
登录 | 立即注册
提交评论