工作这几年单片机主要就接触过 Atmel、Renesas、Microchip、ST 这些厂家的,最近几年因为内部外部的各种因素单片机的价格和供应都挺不稳定的,将来会发生什么也不好说。另外这些年国内的单片机发展也挺快的。所以准备试试国产的单片机。
这里准备使用南京沁恒的CH32V307为基础进行介绍,这是一款RISC-V架构内核的单片机。我看中它的主要是自带高速 USB PHY 和 ETH PHY ,同时价格也很便宜,某宝上散买十块出头。
图片是R的,V的可用引脚要多些。
这个芯片官方是有开发板的(CH32V307-EVT-R1沁恒RISC-V模块MCU赤兔评估板),某宝官方店铺七十多块钱吧,还送两片芯片。
沁恒的单片机可以使用 WCH-Link 进行调试与下载,如果买官方开发板的话有的开发板是自带WCH-Link的。
芯片详情页:https://www.wch.cn/products/CH32V307.html
沁恒RISC-V产品总览:https://special.wch.cn/zh_cn/RISCV_MCU_Index/
沁恒的芯片比较大的好处是资料几乎都是有中文的。
CH32V303_305_307 数据手册:https://www.wch.cn/downloads/CH32V307DS0_PDF.html
CH32FV2x_V3x 系列应用手册:https://www.wch.cn/downloads/CH32FV2x_V3xRM_PDF.html
CH32V307评估板说明及参考应用例程:https://www.wch.cn/downloads/CH32V307EVT_ZIP.html
WCH-Link 使用说明:https://www.wch.cn/downloads/WCH-LinkUserManual_PDF.html
烧录软件(USB、串口):https://www.wch.cn/downloads/WCHISPTool_Setup_exe.html
烧录软件(WCH-Link):https://www.wch.cn/downloads/WCH-LinkUtility_ZIP.html
沁恒的单片机目前官方推荐的是使用 MounRiver Studio ,这是一款 Eclipse 开发的IDE,支持Windows、Linux、MacOS。
MounRiverStudio官网:http://www.mounriver.com/
下载安装完成后(软件初次启动很慢)可以从菜单选择设置为中文:
沁恒RISC-V单片机开发调试烧录等相关内容可以参考下面几处:
对于IDE的使用也可以参考官方视频:https://www.bilibili.com/video/BV1yL411H7La
使用MounRiverStudio进行开发,新建工程选择合适的模板:
新建工程后默认就会包含开发所需的所有库文件,之后只需要按照功能需求编写相应代码即可。
调试需要用到 WCH-Link (赤兔评估板是自带的),该工具使用可用参考上面的《WCH-Link使用说明》文档。
SWD接口用于下载和调试;CH32V307的UART1可以和WCH-Link的串口桥接以实现串口转USB功能,方便与电脑通讯。
对于 CH32V10x/CH32V20x/CH32V30x/CH32F10x/CH32F20x ,系列而言SWD接口的引脚对应关系通常为 SWDIO - PA13
SWCLK - PA14
。
调试方面和很多单片机差不多:
需要注意的是每次修改后需要编译后再进行调试。
这里直接以新建工程后自带的内容进行调试演示:
通过WCH-Link进行下载的话可以直接在 MounRiverStudio 中下载或者使用 WCH-LinkUtility 软件进行下载,没有需要特别注意的内容。
这里主要讲一讲使用 WCHISPStudio(WCHISPTool) 软件通过USB或串口进行下载。
使用该方式下载时需要调整 BOOT0
和 BOOT1
引脚外部电平以选择芯片上电时进入的工作模式。对于 CH32V2x 和 CH32V3x 系列而言其 启动配置(自举模式)模式 如下:
BOOT0 | BOOT1 | 启动模式 | 备注 |
---|---|---|---|
0 | 不关心 | 从程序闪存存储器启动 | 正常运行程序的模式 |
1 | 0 | 从系统存储器启动 | 下载使用的模式 |
1 | 1 | 从内部 SRAM 启动 |
对于CH32V307VC而言,USB下载管脚为 PA11 - DM
PA12 - DP
或 PB6 - DM
PB7 - DP
;串口下载管脚为 PA9 - TX
PA10 - RX
。
调整启动模式,连接设备,启动WCHISPStudio软件下载固件,固件为项目目录下的 obj 中的 .hex 格式文件。
下载完成后记得调整启动模式,然后复位设备以运行程序。
在开发测试时可以关闭读保护。如果使用串口下载的话可能无法通过板载的WCH-Link的USB转串口,需要使用另外的串口模块连接单片机相应引脚。
如果使用过程中有其它问题可以尝试重新插拔设备或是重启软件试试。
沁恒CH32V307单片机入门体验还是挺不错的,官方提供了完整的资料、例程,还有IDE可用。这个IDE本身感觉也不错,比同样基于Eclipse的STM32CubeIDE流畅多了。
更多入门内容可以查看接下来的文章《沁恒CH32V307单片机入门(02):官方库与工程模板介绍》:
https://blog.csdn.net/Naisu_kun/article/details/128771603