RYMCU
CH32V USB 设备中断处理函数解析 USB
这段代码是 CH32V 系列微控制器的 USB 设备中断处理函数(USBD_IRQHandler),主要负责处理 USB 传输事件、设置请求和连接状态变化。以下是详细解析:一、函数概述​功能​:处理 USB 设备端的各种中断事件,包括传输完成、设置包接收和连接状态变化。​核心逻辑​:读取中断标志寄存器(INT_FG)判断中断类型。根据不同中断类型执行相应处理:传输完成(USBHS_TRANSFER
Hugh 57 分钟前
USB传输组成 USB
看起来很难,其实一点也不简单。USB 传输 Transfer.xmind
Hugh 9 小时前
DAPLink与USB主机、目标设备之间的数据交互异步处理流程 USB
这段代码实现了 USB DAP 协议的核心功能:​请求接收​:通过 OUT 端点回调(dap_out_callback)将数据存入环形队列,队列满时暂停接收(USB_RequestIdle),处理完成后恢复。​请求处理​:主函数(chry_dap_handle)循环处理队列中的请求,生成响应,并协调队列状态。​响应发送​:通过 IN 端点回调(dap_in_callback)将响应发送回主机,队列
Hugh 9 小时前
星允派(NEBULA PI) [二] 基于STM32CUBEMX的FreeRtos移植 星允派F103
简介在上一篇文章中我们使用了 HAL 函数进行了 IO 的驱动, 然后我查看官方手册的时候发现并没有一个文档是基于 FreeRTOS 的移植. 因此稍微花了一点时间将第一篇文章中的 toggle LED 改成了 FreeRtos 的版本.步骤如下首先还是像上文一样创建项目然后按照上图从中间件和软件包中选择 RTOS 的支持.选择 CMSIS_V1 和 V2 都可以(V1 为基础版)在任务和队列中配
御坂10032号 10 小时前
DAPLink的USB数据发送过程 USB
DAP 数据发送过程:1)当 USB 配置完成后,根据协议 DAP 主机发来 IN 事务,表示要从下载器获取数据,若 DAP 没有数据需要发送,则在数据阶段发送 NAK 告诉主机数据还没准备好;2)当 DAP 有数据需要发送时,在主函数中调用 usbd_ep_start_write(DAP_IN_EP, USB_Response[n], USB_RespSize[n]);,作用为:给 USB DM
Hugh 10 小时前
星允派(NEBULA PI) [一] 开箱和Mac下环境搭建 星允派F103 软件工具链与开发体验优化
简介前一段时间看到社区举办了星允派的公测活动, 并且幸运的成为了一名公测的用户. 经过了漫长的快递等待之后也是终于拿到了这块开发板. 希望能在本次测评的周期之内和大家一起来分享体验的经验. 那么首先我们来对这块开发板进行开箱.正文外包装打开外包装之后呢便是开发板的主体,其主控主要是采用的 STM32F103VET6,其中和采用了一颗 WCH 的 CH32V203C8T6 作为 DAPl like
御坂10032号 11 小时前
USB IN/OUT 事务中 ACK 的发送方及数据传输确认机制 USB
一、IN 事务(设备 → 主机数据传输)1. 事务流程​主机发送 IN 令牌包​:通知设备准备发送数据。​设备响应​:若数据准备好:发送数据包(DATA0/DATA1)。若未准备好:发送 NAK 握手包。若设备错误:发送 STALL 握手包。​主机确认​:成功接收数据后,向设备发送​ACK 握手包​,表示 “数据已收到”。若接收数据错误(如 CRC 校验失败),不返回任何握手包,设备需重试。2.
Hugh 11 小时前
DAPLink的USB数据接收过程 USB
DAP 数据传输过程:1)首先进入枚举阶段,在 USB 配置完成中断(USBD_EVENT_CONFIGURED)中第一次调用 usbd_ep_start_read(DAP_OUT_EP, USB_Request[0], DAP_PACKET_SIZE); 目的为:初始化端点接收缓存;2)当主机 DAP 端点发来数据时,OUT 事务完成时,此时数据已经通过 DMA 放到 USB_Request[0
Hugh 2 天前
USB描述符 USB
USB 描述符文件分析该文件定义了一个 USB 设备的描述符数组 cmsisdap_descriptor,用于描述 USB 设备的各种属性和配置。下面将详细分析这个描述符数组。整体结构USB 描述符是一种数据结构,用于向 USB 主机描述设备的特性和功能。描述符通常由多个部分组成,每个部分都有特定的用途。这个描述符数组包含了设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符和设备限定符等
Hugh 7 天前
关于我用500大洋买了LDO设计的惨痛经验教训 待分类
1.项目需求一套板子上需要将 6-18V 电压转换成 5V 电压,且工作电流不大 100mA 左右。2.芯片选型于是从网上搜得线性稳压器 LDO 一枚如下:工作电压达到 20V,满足我 6-18V 指标要求。输出电流 500mA,远大于 100mA 实际需求,关键是还便宜,批量只需要几毛钱。似乎一切都很完美。于是果断的添加到板子上,花了 500 大洋打样了。3.调试测试板子拿回来后果断加 12V
Hugh 21 天前
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 30