#打卡不停更#【RISC-V 开发板】芯来科技CM32M433R-START快速上手 原创
最近对芯片架构领域的linux——RISC-V比较感兴趣,于是搞了一块芯来科技RISC-V架构的MCU开发板CM32M433R-START来玩,这款开发板搭载的CM32M433R  MCU芯片已经移植适配了OpenHarmony轻量系统,目前待原厂开源策略。

(ps:赛昉科技的RISC-V架构的VisionFive 2开发板也正在适配OpenHarmpony标准系统,感兴趣的小伙伴也可以搞一块来玩一玩)
@toc
CM32M433R-START介绍
CM32M433R-START是一款基于中国移动芯昇科技CM32M433R MCU的RISC-V生态开发板,提供板载仿真器。使用USB与外部电源供电的接口,可应对不同的电流需求。提供指示灯、用户按键以及RESET按键等人机交互资源,且具备标准的Arduino兼容接口,可方便地连接外设扩展板。


CM32M433R-START快速上手,打印出一句“Hello,OpenHarmony”
Nuclei Studio的下载及运行
访问芯来科技公司官方网站的“文档与工具”页面(https://nucleisys.com/download.php)下载对应Windows或Linux的Nuclei Studio压缩包。

下载完成后,解压压缩包,随后运行NucleiStudio文件夹下面的可执行文件 (免安装的)

第一次启动Nuclei Studio IDE后,将会弹出对话框要求设置Workspace目录路径,该目录将用于存放后续创建的项目工程文件,用户可自行选择存放地址。

设置好Workspace目录之后,单击“Launch”按钮,将会启动Nuclei Studio。第一次启动后的Nuclei Studio界面如下图所示。

导入CM32M4xxR SDK
在Nuclei Studio菜单栏选择“RV-Tools —> Nuclei Package Management”

勾选”sdk-cm32m4xxr”,点击“Download”,即可导入CM32M4xxR SDK,完成后会显示其状态为“Installed”。

新建Hello,OpenHarmony工程
在Nuclei Studio菜单栏选择“File —> New —> New Nuclei RISC-V C/C++ Project”


在弹出对话框中选择“CM32M433R_START”栏目下的“sdk-cm32m4xxr”,点击“Next”

进入新建工程设置界面,如下图所示,在“Project Name”栏输入项目名“printf”,在“Project Example”下拉栏中选择“Printf @app-START Printf”,其他配置选项可保持不变,点击“Finish”即可完成Printf例程的创建

项目创建完成后,界面如下图所示,从图中左侧Project Explorer栏中可以看到,创建好的项目已经包含了CM32M4xxR SDK的支持。

工程介绍
查看main函数可知,该项目主要功能为
- 串口初始化设置
 - 打印“Hello,OpenHarmony”
 
注意:
- 对于Printf函数的实现,是通过底层Newlib C运行库中的桩函数write函数进行的字符逐个输出,write函数最终调用_write函数,而该函数被实现在CMIOT.CM32M4xxR_Library/SoC/CM32M4xxR/Common/Env/Stubs/write.c文件中
 
工程编译
新创建完成的工程已经设置好编译链接相关的配置选项,可单击Nuclei Studio IDE菜单上的“锤子”按钮直接进行编译。
若编译成功,则显示如下图所示,能够看到所生成可执行文件的代码大小,包括text段、data段和bss段,以及总大小的十进制和十六进制数值,编译生成的可执行文件存放在Debug目录下。

工程运行
首先需要进行硬件的连接,通过一根Micro USB电缆线将CM32M433R-START开发板与PC进行连接,线缆连接好后,板上的红色电源灯会点亮

第一次使用CM32M433R-START开发板,需要为其安装驱动。对于Windows系统环境,驱动点击此处下载,双击即可安装,如下图所示。

注意:
- 此处无需勾选JLink支持包的安装。
 - 板载调试器还包含了“将MCU的UART转换成USB输出”功能,因此将CM32M433R-START开发板与PC连接后,将被主机识别成一个COM串口,可通过PC的设备管理器查看该串口端口号。
 
然后设置PC端串口调试工具。Nuclei Studio IDE中集成了串口工具,在其菜单栏中选择“Window—>Show View—>Terminal”,如下图所示,点击“Terminal”窗口中的“显示器”图标按钮,打开串口工具配置界面。

弹出窗口如下图 所示,对串口通信相关参数进行设置,具体为115200 baud, 8 bits data, no parity, 1 stop bit (115200-8-N-1)。其中的串口端口号,需要将CM32M433R-START开发板与PC主机进行正确连接后,可通过PC主机的设备管理器进行查看。

在Nuclei Studio IDE菜单栏下方的“Launch Bar”中设置模式为“Run”,配置为“printf_cmlink_openocd”,如下图所示。

设置完成后,点击绿色“运行”按钮即可开始下载程序至CM32M433R-START开发板,并运行示例工程,printf示例运行后打印结果如下图所示。























上哪里搞板子,我来适配Py4OH!
RISC-V开发板_专业RISC-V处理器IP及解决方案公司 (nucleisys.com)
芯昇科技有限公司携手优博终端首次共同完成开源鸿蒙系统移植 (qq.com)
感谢附件中对资料的整理