keil编译时生成时间戳_可以自动创建KEIL、IAR、makefile工程的工具

533cb2617b0fd338a93fe1181138ab0f.png

今天给大家推荐个好工具,可以用来自动生成mdk、iar、makefile工程。比如我项目的的源码最开始是别人用makefile来实现编译的,但是我比较熟悉keil或者iar,想重新创建这两个工程是不是要重新再分别建立一个keil工程和iar工程。然后手动把依赖的源码和头文件分别再添加到工程里面去。

实际上不用那么麻烦,给大家推荐个工具:project-generator。这个是arm开发的一个python工具,你只需要根据他的格式写出来yaml文件(这个文件格式比makefile容易理解的多,格式很简单),然后就可以一劳永逸,想生成makefile、mdk、iar工程都可以。

它目前支持生成如下这么多种工程:

uVision4 and uVision5IARMakefile (GCC ARM)Makefile (ARMCC)Cmake (GCC ARM)CoIDE (GCC ARM)Eclipse (Makefile with GCC ARM)Sublime (Makefile with GCC ARM)Visual studio (Makefile with GCC ARM)

这个工具是需要python的,所以使用之前需要先安装python。之后执行:pypi - project generator用来安装该工具。

这个工具支持有5个常用的命令,每个命令下又会有一些子命令,如下所示:

inti:为一个目录创建project record,即自

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是的,这些头部信息通常是由 Keil MDK 编译自动生成的。Keil MDK 编译器支持使用 scatter 文件来描述应用程序在 Flash 和 RAM 中的布局和分配。在 scatter 文件中,可以通过添加特殊的符号和段来定义应用程序的头部信息。 一般来说,应用程序的头部信息需要包括以下几个部分: 1. 版本信息:表示应用程序的版本号和发布日期等信息。 2. 应用程序的起始地址:表示应用程序在 Flash 中的起始地址。 3. 应用程序的大小:表示应用程序的大小,以字节为单位。 4. 应用程序的校验和:表示应用程序的校验和,用于检测应用程序是否正确烧写到 Flash 中。 在 Keil MDK 编译器中,可以通过在 scatter 文件中添加特殊的符号和段来定义这些头部信息。例如,可以通过添加一个名为 `APP_INFO` 的符号和一个名为 `APP_INFO` 的段来定义应用程序的头部信息。在应用程序的 C 代码中,可以通过引用 `APP_INFO` 符号来获取应用程序的头部信息,例如: ``` extern uint32_t __APP_INFO[]; #define APP_START_ADDRESS __APP_INFO[0] #define APP_SIZE __APP_INFO[1] #define APP_CHECKSUM __APP_INFO[2] ``` 在这个例子中,`__APP_INFO[]` 是一个名为 `APP_INFO` 的段的起始地址,`APP_START_ADDRESS`、`APP_SIZE` 和 `APP_CHECKSUM` 分别表示应用程序的起始地址、大小和校验和。在编译和链接Keil MDK 编译器会将 `APP_INFO` 段的地址和大小写入应用程序的头部中,从而生成一个包含头部信息的可执行文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值