返回列表 发新帖我要提问本帖赏金: 30.00元(功能说明)

[G32R] 【G32R501 Micro-EVB测评】:基于VS-CODE+Makefile+pyocd软件工程模板

[复制链接]
194|2
suncl110 发表于 2026-1-5 20:07 | 显示全部楼层 |阅读模式
#申请原创# #申请开发板#【G32R501 Micro-EVB测评】基于VS-CODE+Makefile+pyocd软件工程模板


一,加载本DEMO所需要的所有源代码文件,如下

启动程序文件
24222695ba668d618e.png
板上使用的程序文件
91411695ba678ec6fc.png
驱动程序文件及头文件
16196695ba68bb54ab.png

点灯文件
33934695ba69ac01dd.png
二,Makefile文件设置
18329695ba6b252ae9.png
参数含义如下:TARGET :=G32R501-demo /*本工程名称,以后生成的HEX文件名*/
           CHIP     := G32R501       /*指定芯片型号*/
           CPU      := --cpu=Cortex-M52.no_pacbti.no_se/*指定内核为M52*/
FPU      := --fpu=VFPv5_d16/*V5版浮点格式*/
MCU      := $(CPU) $(FPU) /*MCU为以上CPU+FPU组合*/
############################
## IAR编译器优化等级
#  1.**`-On`(默认优化)   **- 默认优化级别 - 平衡代码大小和执行速度
#  2.**`-Ol`(低优化)    **- 最小化编译时间- 减少优化程度- 主要用于调试目的
#  3.**`-Om`(中等优化)   **- `-On`更保守的优化- 在某些版本中可用
#  4.**`-Oh`(高性能优化) **- 专注于提高执行速度- 可能增加代码大小- 适用于对性能要求高的应用
#  5.**`-Oz`(尺寸优化)   **- 专注于减小代码大小- 可能牺牲一些执行速度- 适用于内存受限的应用
#  6.**`-Ox`(最大优化)   **- 应用所有可用的优化技术- 编译时间最长- 可能产生最难调试的代码
OPT        := -On        /*代码优化等级设定*/
############################
############################  
#链接文件路径和名称
ICF_LINKER := $(PROJECT_ROOT)/link/g32r501dxyx7_cpu0_cbus_flash.icf
13600695ba6cb6e85b.png
指定哪些C代码加入至本工程内,注意“\”后边不能有空格,TAB等任何隐形符号
57579695ba6e35b47d.png
定义本项目中所使用的全局宏,注意”D”是关键字,不是宏本身,D后一般不应有空格
58286695ba6f3a5452.png
定义本项目所用的头件路径
# Project paths
OUTPUT_DIR = $(PROJECT_ROOT)/build /*编译输出路径,HEX等也在此文件夹内*
OBJ_DIR    = $(OUTPUT_DIR)/Obj
LST_DIR    = $(OUTPUT_DIR)/List
23415695ba7086dec7.png
定义IAR工具名称:依次是C编译器,汇编编译器,链接工具,输出目标文件工具
(即输出.elf.hex.bin等用于调试和烧录的文件)
其中 WIN_IAR_PATH  := "D:/ProgramFile/IarV9"
是我的电脑IAR安装的路径,可以根据实际情况做更改
22627695ba71ba5325.png
这里的指令就是用于编译&生成.elf.srec.hex.bin文件实际指令
三.执行编译
在VS-CODE的终端或超级终端中输入”make”或“make –f iar.mk”后编译此工程如下:
87717695ba73588c49.png
生成调试用的.elf和烧录用的.hex如下:
79123695ba74e98612.png
或者在项目文件夹中直接打开终端
93354695ba75bc8b5f.png
输入make指令并按确定:
71136695ba781bb4d8.png
四,使用PYOCD调试:
81753695ba78fa6c51.png
63739695ba7a1203a3.png
在setting.json中设置好PYOCD的具体目录,根据实际需要,请自行设置基正确路径
41081695ba7c707113.png 17757695ba7c872c48.png
在launch.json中设置好相关调试参数,其中:
"executable": "./build/G32R501-demo.elf",  
需要调试的文件,即编译后生成的.elf文件
"request": "launch",
//"request":"attach",
launch”表示烧录&运行        “attach”表示只运行调试
"serverArgs": ["--script=D:/SourceCode/geehy/pyocd/g32r501/pyocd_user.py"],
重点注意:--script参数是表示芯片解密指令,即烧录前需要注入芯片flash的那个指令
15202695ba7e986922.png
点击debug按钮,如上图成功进入调试模式,全速运行
65288695ba802c3b6e.png

以下是源码及工程
游客,如果您要查看本帖隐藏内容请回复
游客,如果您要查看本帖隐藏内容请回复




98708695ba73dadc86.png

G32R501-demo.zip

2.72 MB, 下载次数: 3

打赏榜单

21ic小管家 打赏了 30.00 元 2026-02-04
理由:极海评测奖励

不想起床喵星人 发表于 2026-1-20 18:10 | 显示全部楼层
感谢分享!我一直在使用VS-CODE进行开发,但是对Makefile的配置一直不太熟悉,这篇文章给了我很多启发。
LweiH 发表于 2026-1-26 20:07 | 显示全部楼层
感谢分享,对于习惯了VSCODE开发的人很有帮助!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

21

主题

226

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部
0