画了块ch571f和ch579m二合一的开发板,ch571是risc-v的芯片,ch579是m0的。之前一直用的stm32,刚接触risc-v开发还是碰到许多需要琢磨半天的问题。(本文档持续更新)
目录
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 - 南京沁恒微电子股份有限公司

示例程序包含这些
开发软件安装好之后打开,然后直接导入就行:

240801:新版本的软件选项不一样

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

编译没有错就可以下载了

240801:新版本图标有改变

下载
下载后自动运行
遇到问题
1,在示例程序基础上修改,使用了新的.c文件,编译报错undefined reference to
同时工程列表中是部分灰色的
1解决:灰色大概意思就是没有包含到工程里,而头文件又包含了,就只是一个函数声明,但没有实现,调用就会报错。
只需要右键需要的文件,点include/exclude....把文件包含或者取消包含到工程编译中就行了
240801:新版本选项改变:勾选或者取消勾选

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

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

取消注释即可
具体什么问题我也不是很懂,知乎上看到有相关的:浅谈RISC-V GCC之:链接脚本学习笔记(二) - 知乎
CH571F基于官方模版创建工程_wch ch571f-CSDN博客
....持续更新中最新240801
博主分享了使用沁恒CH57x蓝牙芯片(包括RISC-V的CH571和M0的CH579)进行开发的经历,详细记录了从安装开发软件MounRiverStudio和烧录软件WCHISPTool,到下载官方资料和示例程序的过程。文章还提到了在开发过程中遇到的编译错误及解决方案,如undefined reference和relocation truncated to fit等问题。
开发记录&spm=1001.2101.3001.5002&articleId=131104940&d=1&t=3&u=a6546c18cb0949fa8a9fa20ed1bcaa41)
6726

被折叠的 条评论
为什么被折叠?



