nczywq 发表于 2025-2-21 13:05

hc32f4a0系列cmake+mingw+pyocd开发第一弹(驱动篇)

本帖最后由 nczywq 于 2025-2-21 13:07 编辑

驱动源码https://github.com/nczyw/hc32f4a0-drivers
纯cmake写的,使用方法TopCmakeLists.txt中有详细例程。支持的功能
1:支持3种功能,1:bootloader;2:app;3:normal
2:可以配置为bootloader模式,此模式下flash的前64KB为boodloader空间,其余为app空间
下面是编译及下载成功并运行截图


保证驱动是没有问题,bootloader还在未完成,目前只是半成品,完成后会一并开源出来,目前仓库中已经有了。
这也算是完成了我多年来的心愿,学习嵌入式时,一直用的gcc和arm-none-eabi编译的程序,非常不喜欢keil这样的IDE,几年前就说要用arm-none-eabi来编译,当时是直接写的Makefile,直接写的Makefile发现灵活性太差了,就没有开源出来,也放弃了,今年,打算用cmake来重新构建,发现还是可以成功的,这样跨平台开发,就又多了一种方式,也是我最喜欢的方式

后续计划
1:这次说明写的不够详细,需要有一定cmake基础的人,才能看懂,以后有时候会完善说明
1:bootloader使用SD卡更新程序开发
2:app程序开发

yangxiaor520 发表于 2025-2-21 19:45

这种开发模式适合喜欢纯Linux环境开发的工程师

[鑫森淼焱垚] 发表于 2025-2-21 23:12

楼主高啊

nczywq 发表于 2025-2-21 23:41

yangxiaor520 发表于 2025-2-21 19:45
这种开发模式适合喜欢纯Linux环境开发的工程师

非常适合vscode开发的

xionghaoyun 发表于 2025-2-22 08:20

谢谢LZ 但我觉得keil界面好看

lulugl 发表于 2025-2-22 09:41

支持楼主的想法与行动,期待楼主大佬成功!

nczywq 发表于 2025-2-22 14:23

lulugl 发表于 2025-2-22 09:41
支持楼主的想法与行动,期待楼主大佬成功!

谢谢,其实已经成功了,只是在完善bootloader程序,当年和我一起学习的同学,他们用的mcu都只支持cmake了,连stm32cubemx也添加了对cmake的支持,如果这里有官方,能为他们以后支持cmake做个参考,因为cmake几乎跨了所有平台,代码从github下clone下来就可以随时修改,编译下载,及版本管理。

suncat0504 发表于 2025-2-26 23:14

佩服楼主的毅力。我是咋方便快速开发就咋来,不想提高学习成本。

地瓜patch 发表于 2025-2-28 12:24

这是高手

Louis-Lou 发表于 2025-6-9 16:40

你好,谢谢你分享的成果,但我在使用pyocd,daplink, 配置vscode插件cortex-debug,进行调试时,无法在断点处暂停,请求你遇到过吗?有什么解决办法,谢谢。这是我的launch.json文件内容:
{
    "version": "0.2.0",
    "configurations": [
      {
            "cwd": "${workspaceRoot}",
            "type": "cortex-debug",
            "request": "launch",
            "name": "pyocd-dap",
            "servertype": "pyocd",
            "executable": "./build/myproject.elf",
            "runToEntryPoint": "main",
            "svdFile": "${workspaceRoot}/drivers/cmsis/Device/HDSC/hc32f4xx/Source/GCC/svd/HC32F4A0.svd",
            "device": "hc32f4a0xi",
            "toolchainPrefix": "arm-none-eabi"
      },
    ]
}

guijial511 发表于 2025-6-10 08:51

这种开发模式会不会太复杂了

nczywq 发表于 2025-6-17 13:24

guijial511 发表于 2025-6-10 08:51
这种开发模式会不会太复杂了

不复杂啊,同样是全平台,可以用命令行,可以在github上面,使用CI/CD,来自动化编译和发布固件

sj8zw8 发表于 2025-6-23 01:02

修改链接脚本消除此警告不支持 11 版本以下编译器

9dome猫 发表于 2025-6-30 16:12

使用 Git 克隆:git clone https://github.com/nczyw/hc32f4a0-drivers.git
直接从 GitHub 下载压缩包。

9dome猫 发表于 2025-6-30 16:13

3 种运行模式:bootloader(引导加载程序)、app(应用程序)、normal(普通模式)。

远芳侵古道 发表于 2025-6-30 23:33

Flash 前 128KB 用于 bootloader,其余空间分配给 app。
页: [1]
查看完整版本: hc32f4a0系列cmake+mingw+pyocd开发第一弹(驱动篇)