本文目的
wch的蓝牙芯片一般推荐是使用isp方式去烧录,usb-isp的下载体验尚可,但是uart-isp的下载体验似乎不尽人意,原因有下
- wch的isp下载的前提需要是对芯片进行上电复位,但是一般的串口工具TX是推挽输出,这种情况下会通过TX给芯片灌电,导致芯片产生不了上电复位,进而进不到isp模式
- wch的蓝牙芯片串口下载上电后默认是支持40ms的握手窗口的,但是其上位机并不支持某种方式控制芯片的电源
笔者最近因为一些原因,项目的板子只留了串口进行下载接口出来,只能通过串口下载,但是串口下载过于痛苦,于是基于ch571/ch573平台 实现了一个wch-isp的串口下载辅助器,将目标芯片的uart下载交互数据转到辅助器的usb上.
后续有计划将工程开源以方便大家修改和移植到手中的开发板上.
支持芯片
支持的目标芯片
- ch571/ch571
- ch58x
- ch59x
如何使用
给辅助器下载固件
将本文章末尾附件中的固件下载到ch573的开发板中(也支持ch571)
连接辅助器与目标板子
将辅助器 和目标板子 按下面方式连接
CH573开发板 目标芯片
GND-------------->GND
PB7-------------->PA8(RX1)
PB4-------------->PA9(TX1)
PA4_PA5---------->3.3
USB插入电脑
进入下载模式
- 电脑打开wchisptool或者wchispstudio
- 按下辅助器的reset按键,辅助器会通过PA4/PA5(两个IO增大供电能力) 重新给目标芯片上电,并让其进入下载模式,如果一切顺利这时电脑上的wchisp工具将会发现目标芯片的芯片信息,这时候我们就可以按照usb下载的方式去下载对应的芯片了
注意事项
- 本辅助器需要用到"串口免按键功能"
- 本工具串口使用了115200作为基础波特率,6M作为协商波特率, 不符合这两个条件的芯片都不支持,如下:
* ch55x,ch54x系列,基础波特率通常为57600,不支持串口波特率协商
* ch577/ch578/ch579 不支持6M波特率
* 一些不支持串口波特率协商的芯片/bootloader版本,如ch569和boot版本在v2.7以下的ch573
附件
https://gitee.com/iot-fan/iot-fan_at_cnblogs/tree/master/CH571_CH573/FW/ch573_isp_uart_to_usb