project generator 简单使用

本文介绍了Progen,一个基于Python的项目生成器,用于在不同嵌入式开发工具间实现代码的跨工具移植。文章详细讲解了如何安装、添加自定义目标、替换CMake模板以及创建Progen项目的过程,并探讨了其在多项目协作和代码复用方面的优势。

1 progen 资源

  • 0)简介:progen(project-generator,项目生成器)是 ARM 编写的,基于 Python 的,让我们的项目跨工具的神器。所谓跨工具,类比一下 Java 的跨平台,即代码编写完成后,可以生成为基于 uVision、IAR、Makefile(cmake)等编译工具的项目。

  • 1)官网:

    • progen: https://pypi.org/project/project-generator/
    • progendef: https://github.com/project-generator/project_generator_definitions
  • 2)官方示例:

    • https://github.com/project-generator/project_generator_frdm_boards_example
    • https://github.com/project-generator/project_generator_mbed_examples
  • 3)本例:

    • 学习 B 站 UP 主 “江协科技” STM32 视频(https://jiangxiekeji.com/)
    • 基于光子物联的 STM32G431CBT6 开发板
    • ll 库代码:https://gitee.com/luyaocf/demo-jxtech_stm32g4_ll.git

2 使用简介

  • 1)progen 的几个组件:

    • (1)Record:基于 YAML 语法的配置文件,有 3 种:

      • 项目列表文件 projects.yaml,声明配置项、模块、项目等
      • 项目定义文件,即主工程文件,其中定义工程名称,开发板,等
      • 模块文件,定义模块的头文件与源文件
    • (2)Tool:泛指嵌入式开发工具,如 uVision、IAR、CoIDE、Makefile(gcc/armcc/cmake)等等

    • (3)Target:泛指 mcu。其内部指定 MCU 的 RAM、ROM、CPU 内核、SFD、烧录算法等令牌。progen 根据 target 生成指定 tool 的工程文件,如 Keil5 的 .uvprojx、IAR 的 .ewp 等

  • 2)progen 的几个命令:

    • (1)init:将当前项目初始化为 progen 项目。当你已经有一个 uVision5 项目时,可以在其根目录直接使用该命令,将该项目变成一

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值