沁恒CH57x蓝牙(RISC-V)开发记录

画了块ch571f和ch579m二合一的开发板,ch571是risc-v的芯片,ch579是m0的。之前一直用的stm32,刚接触risc-v开发还是碰到许多需要琢磨半天的问题。(本文档持续更新)

目录

运行官方示例

 首先是安装开发软件:MounRiver Studio

USB直接烧录软件:WCHISPTool_Setup.exe - 南京沁恒微电子股份有限公司

然后下载官方的资料和示例程序:CH573EVT.ZIP - 南京沁恒微电子股份有限公司

开发软件安装好之后打开,然后直接导入就行:

编译输出文件可以打开或者更改

 编译没有错就可以下载了

下载​编辑

遇到问题

1,在示例程序基础上修改,使用了新的.c文件,编译报错undefined reference to​编辑

 2,报错 relocation truncated to fit: R_RISCV_JAL against symbol `TMR0_IRQHandler' defined in(23/06/08)


板子在立创有开源: 蓝牙ch579m+ch571f - 嘉立创EDA开源硬件平台

运行官方示例

 首先是安装开发软件:MounRiver Studio

USB直接烧录软件:WCHISPTool_Setup.exe - 南京沁恒微电子股份有限公司

 烧录软件基本上沁恒的芯片都可以下载,右边选择芯片系列后,按住芯片的boot按键然后上电,软件会自动识别usb以及芯片型号,然后选择hex文件,点下载就可以了(进入boot长时间不下载会自动退出)

然后下载官方的资料和示例程序:CH573EVT.ZIP - 南京沁恒微电子股份有限公司

 示例程序包含这些

开发软件安装好之后打开,然后直接导入就行:

编译输出文件可以打开或者更改

 编译没有错就可以下载了

下载

 下载后自动运行

遇到问题

1,在示例程序基础上修改,使用了新的.c文件,编译报错undefined reference to

 同时工程列表中是部分灰色

1解决:灰色大概意思就是没有包含到工程里,而头文件又包含了,就只是一个函数声明,但没有实现,调用就会报错。

只需要右键需要的文件,点include/exclude....把文件包含或者取消包含到工程编译中就行了

 2,报错 relocation truncated to fit: R_RISCV_JAL against symbol `TMR0_IRQHandler' defined in(23/06/08)

 错误原因是我注释了官方的一段代码(似乎是汇编)

 取消注释即可

具体什么问题我也不是很懂,知乎上看到有相关的:浅谈RISC-V GCC之:链接脚本学习笔记(二) - 知乎

....持续更新中

猜你喜欢

转载自blog.csdn.net/hhcgn/article/details/131104940