通过代码配置PlatformIO生成HEX文件

  如果要通过串口给51或者32等单片机烧写程序,很多时候需要HEX文件。Keil软件中就有输出HEX文件的设置,勾选一下就行,但是,PlatformIO好像还没这么方便的操作,下面我以STM32工程为例,介绍一下如何通过代码配置PlatformIO生成HEX文件。
在这里插入图片描述
首先,在工程目录下新建extra_script.py文件(和platformio.ini在同一目录下),代码如下:

Import("env")

env.AddPostAction(
    "$BUILD_DIR/${PROGNAME}.elf",
    env.VerboseAction(" ".join([
        "$OBJCOPY", "-O", "ihex", "-R", ".eeprom",
        "$BUILD_DIR/${PROGNAME}.elf", "$BUILD_DIR/${PROGNAME}.hex"
    ]), "Building $BUILD_DIR/${PROGNAME}.hex")
)

然后,在VS Code左侧项目列表打开platformio.ini文件,在最后一行增加如下代码:

extra_scripts = extra_script.py

我的platformio.ini完整如下:

[env:genericSTM32F103C8]
platform = ststm32
board = genericSTM32F103C8
framework = arduino
extra_scripts = extra_script.py

OK,配置完成,可以点击VS Code底部的“对勾”按钮进行编译了,编译成功就会生成HEX文件,生成路径如下:
在这里插入图片描述

  • 7
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
配置VSCode进行STM32开发环境并生成hex文件,可以按照以下步骤进行操作: 1. 首先,确保你已经安装了VSCode编辑器和必要的软件工具,如Mingw、OpenOCD和GCC等。可以参考引用中的资源获取和前期准备来获取和安装这些软件工具。 2. 安装STM32CubeMX,该软件可以帮助你生成STM32的代码。你可以使用STM32CubeMX来生成你的项目框架和初始化代码,并将其导出到VSCode中。这样,你就可以在VSCode中编写和编辑你的代码。详细的安装和使用步骤可以参考引用和引用。 3. 在VSCode中配置编译和下载工具链。你需要安装ARM GCC编译器,并配置VSCode的任务(tasks)来执行编译操作。另外,你还需要安装OpenOCD仿真工具,并配置VSCode的调试(debug)功能来下载代码到STM32芯片。具体的配置步骤可以参考引用和引用中提供的方法。 4. 编写你的STM32代码并进行编译和下载。在VSCode中打开你的项目文件夹,创建和编辑你的代码文件。使用配置好的编译和下载工具链,执行编译任务生成hex文件,并使用OpenOCD仿真工具下载代码到STM32芯片。具体的编译和下载操作可以参考引用和引用提供的方法。 通过按照以上步骤进行操作,你可以配置VSCode进行STM32开发环境,并生成hex文件。这样你就可以在VSCode中方便地进行STM32的开发工作了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [VSCode搭建STM32开发环境](https://blog.csdn.net/ciqujinnian_/article/details/129115305)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [VSCode 搭建 STM32 开发环境](https://blog.csdn.net/qq_45396672/article/details/123600472)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值