CH32F203系列微控制器作为COTEX-M3的成员,是市面难得的一款同时兼顾价格优势和兼容市面XXX32功能的国产微控制器产品,它足以让我们不必为价贵而烦恼,不必为货缺而担忧,基于此,本次浅谈如何快速上手CH32F203。
一、硬件基础
CH32F203虽然在功能上比XXX32F103有所增加和加强,但其外设和硬件在设计上还是兼容市场上主流的微控制器xx32F103, 比如: CH32F203RCT6的引脚数量、内存空间、焊接封装和XXX32F103RCT6完全一致,且都是工业级产品, CH32F203C8T6 和XX32F103C8T6之间的关系也是如此。因此在常用功能上(加强功能点击 CH32F203与其它COTEX-M3的差异)硬件上可以零改动,直接用CH32F203微控制器替换XXX32F103实现快速生产是可能的。CH32F203的主频最高可支持144M,性能上可以远超同后缀的XXX32F103的72M主频。
二、软件代码
由于CH32F203其外设和硬件兼容了XXX32F103,所以在不使用增强功能的情况下,完全可以直接使用原来的XXX32F103代码,虽然CH32F203有自己的库,但用XXX32F103代码在CH32F203微控制器上运行XXX32F103原来的功能完全不在话下,笔者直接下载XXX32F103的Hex文件,直接就正常运行。 因此只要不涉及到特殊功能(点击 CH32F203与其它COTEX-M3的差异),在CH32F203上运行XXX32F103的代码上可以实现零改动,当然CH32F203也提供了自身的软件库方便客户使用。
三、FLASH算法和调试(KEIL下SWD调试)
CH32F203系列支持SWD,可支持WCH-Link等仿真器最好选在keil环境下下载,CH32F203与仿真器的SWD引脚连接是SWCLK-SWCLK、SWDIO-SWDIO、GND-GND、3V3-3V3(有的仿真器需要连接)
CH32系列MCU可以使用keil下载和调试之前XXX32F103的代码,首先需要将keil下CH32F203设置算法,即点击下载“CH32F2_CH57X_FLM”将“CH32F2xx.FLM”文件拷贝到Keil(或相应安装目录)\ARM\Flash,如下图所示:

首先确认WCH-Link(建议使用)调试仿真器在电脑设备管理器端口(COM和LPT)中显示 WCHDapLink SERIAL(COM?),表示当前为Cotex-M3调试仿真器,可直接进行下面的操作,如果显示为WCH-LinkRV SERIAL(COM?)表明当前为RISC-V的调试仿真器,需要短接仿真器的TX和GND引脚后重新插到电脑(这种方式可以切换WCH-LinkRV和WCHDapLink),识别为WCHDapLink SERIAL(COM?)方可进行CH32F203的SWD仿真下载。


其次选择
“Options for Target”进入到如下界面,选择自己对应的调试工具如本次以WCH-Link点击Setings,如下图所示:

然后点对话框的Debug如下图界面,选择SW模式(该芯片只能选SW模式),当SW Device的IDCODE出现后表示仿真器和设备已经连接正常,否则需要检查相应的仿真器和板子的状态。

进入如下界面后点击Flash Download,进入如下左侧界面后点击Add,出现下图右侧会话框后,选择点击CH32F2xx.FLM后点Add即完成了CH32微控制器Flash的设置。
特别注意“RAM for Algorithm”的Size设置(SRAM为20K填0x5000、SRAM为32K填0x8000、SRAM为64K填0x10000),例如:之前的Size 0x800或0x1000,一定要改到0x5000或以上,F203C8T6的SRAM为20K(0x5000)。

如果Programming Algorithm还有其它多余型号的Flash算法驱动,请用上图“6 Add”右边的“Remove”去掉多余的FLASH算法驱动,结果如下图:

四、ISP下载方式(支持USB和串口下载)
使用点击下载“WCHISPTool下载软件”mcu下载工具下载程序,支持USB 和串口两种方式。MCU对应的串口管脚PA9(TX)、PA10(RX),USB管脚查看相应型号对应可用于下载的USB引脚。
1) BOOT0接VCC,BOOT1接地,将MCU通过串口或USB连接到电脑。
2) 打开WCHISPTOOl工具,选择相应的MCU系列、对应型号、下载方式、勾选下载配置等点下载。
3) BOOT0接地,重新上电,开始运行代码。
WCHISPTOOL工具操作流程如下图所示
注意事项1:以下第4步适用于Flash+RAM=220K的MCU型号例如:“CH32F203RCT6”和“CH32F203VCT6”可以选择配置RAM和ROM的空间。
注意事项2:当成功下载一次后,希望后续连续下载到多个目标板,只需要重复下图的8,9,10,11的步骤即可。

五、J-FLASH下载(有时不是很好用)
CH32系列MCU可以支持J-FLASH(V6以上版本)下载,可以点击下载“支持CH32F/CH579的JLINK FLASH的软件和方法”查看具体操作,里面包含软件和详细的使用说明,可供您参考,如果之前的低版本(V6以下)不支持该功能,请卸载重新安装本次下载的软件(永远只保留一个可用的J-flash软件),为保证项目进行顺利请建议直接使用WCH-Link调试使用脱机烧录量产。
六、脱机烧录
脱机烧录可以使用官方的32位专用脱机烧录器,可以点击下载“WCH 脱机烧录下载工具和说明”查看具体操作方法,可直接咨询浩然电子相关销售人员或浩然的线上商城购买脱机烧录下载器。
七、使用CH32F203的软件库
备注: 目前兼容推荐的有CH32F203C8T6、CH32F203CBT6、CH32F203RCT6、CH32F203VCT6、CH32F207VCT6(网络)、CH32F208RBT6(蓝牙),CH32F203完美兼容CH32F103的功能,优化了CH32F103的潜在问题,且货源充足,价格实惠,所以CH32F103不推荐使用。
从长远考虑更推荐直接使用开源没有版权限制的RISC-V架构(你懂得)的 CH32V103C8T6、CH32V103R8T6、CH32V203C8T6、CH32V303C8T6、CH32V303CBT6、CH32V303RBT6、CH32V303RCT6、CH32V303VCT6、CH32V307VCT6(网络)、CH32V208RBT6(蓝牙)等, V系列与F系列软硬件兼容,只需Mounriver 开发环境配专用WCH-LINK调试工具即可轻松切换 。
。