Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

优化CDC-UART兼容性

Pre-release
Pre-release
Compare
Choose a tag to compare
@talpachen talpachen released this 16 Oct 14:48
· 59 commits to master since this release

测试场景:通过CDC-UART为ESP32芯片下载固件

固件后缀说明:
***_bootloader_12KB.bin:仅Bootloader部分
***_app.bin:仅APP部分,用于DFU更新
***_full.bin:Bootloader + APP整合

补充说明:
关于同时启用双路串口后,CDC-UART无法正常完成ESP32下载操作的问题分析:
GD32F350/E103仅提供4个逻辑端点,而一个CDC接口便需要占用两个端点,在启用双路串口后,会将用不着的cdc notify端点设为4或更高。
在理想情况下,notify端点将一直保持NAK,但实际情况并非如此。
由于ESP32下载操作基于Pyserial,而Pyserial在通讯过程中频繁通过控制端点操作,进而导致notify端点与控制0端点数据上出现了一些干涉,这种干涉一旦出现,USB数据便立即出错,下载操作进而失败。
此问题在C开发端很难处理,后续基于GD32E103的固件默认将关闭CDC-SHELL。