summaryrefslogtreecommitdiff
path: root/docs/source/quick_start/rt-thread
diff options
context:
space:
mode:
authorxiaowine <[email protected]>2026-08-12 18:35:59 +0800
committersakumisu <[email protected]>2026-08-12 18:50:04 +0800
commit639a4760f7e1222a41cca5a7f296f681e0d258ff (patch)
treeed0ec20c393791407fbfdd9d6ee0c1c7a914e6a9 /docs/source/quick_start/rt-thread
parenta6adc3b1fec70f7bc84a17d7db6ee04dd059d1f1 (diff)
fix(ch32fs): SETUP 中断固定 NAK EP0,支持 CH32L103
CH32FS IP 的 SETUP 中断触发时,INT_ST 端点字段不总为 0(在 CH32L103 和 CH32V203 上实测约 50% 为 4,来自上一次批量事务的残留)。原代码 USB_SET_RX_CTRL(ep_idx, NAK) 会写错 UEP{ep_idx} 寄存器,导致 EP0 停留在 ACK 状态,Windows 存储栈挂载设备前会卡约 20 秒。 (可能影响所有使用 CH32FS IP 的 MCU,但仅在 CH32L103/CH32V203 上验证) 改为固定 NAK EP0(索引 0),并同时 NAK TX 和 RX。其中 TX NAK 一行对 CH32L103 是必需的,缺少会导致设备枚举失败(Windows 设备管理器 Code 10); WCH CH32FS IP 的 MCU 官方 EVM 代码也都是同时两行 NAK,且官方 SETUP 处理代码同样固定使用 EP0(索引 0)。 同时在支持列表中加入 CH32L103(使用 USBFS)。CH32V20X 有两个 USB IP: USBD(用 fsdev,与 F103 相同)和 USBFS(用 ch32fs),已在 port/ch32/README.md 中说明。
Diffstat (limited to 'docs/source/quick_start/rt-thread')
0 files changed, 0 insertions, 0 deletions