首页 > 其他分享 >VSCode配置STM32HAL库开发环境

VSCode配置STM32HAL库开发环境

时间:2024-09-20 14:47:34浏览次数:1  
标签:编译 VSCode 配置 STM32HAL https ninja com 环境变量 下载

1. 开发工具下载

  1. 下载STM32CubeMX:https://www.st.com.cn/zh/development-tools/stm32cubemx.html(可通过访客方式下载)

    安装时一直默认即可

  2. 下载stm32固件库:

    • 在线下载方式(需要登陆):安装好STM32CubeMX后,在菜单栏【Help】->【Manage Embedded Software Packages】里选择合适的固件库下载

    • 离线下载方式(以stm32f1系列为例):https://www.st.com.cn/zh/embedded-software/stm32cubef1.html?dl=redirect

      image-20240920134107090

      下载后,打开stm32cubemx,点击菜单栏【Help】->【Manage Embedded Software Packages】->左下角【From Local】,然后选择刚下载的zip文件即可

  3. 下载cmake:https://cmake.org/download/,然后解压到一个不含中文的路径,再把文件夹bin路径添加到环境变量

    image-20240920134611599

  4. 下载ninja:https://github.com/ninja-build/ninja/releases,选择一个路径创建ninja文件夹,把ninja.exe放进去,再把ninja文件夹添加到环境变量

  5. 下载gcc-arm-none-eabi:https://developer.arm.com/downloads/-/gnu-rm,解压后,把binarm-none-eabi/bin文件夹添加到环境变量

    image-20240920135324879

  6. 下载openOCD(用于在线调试):https://gnutoolchains.com/arm-eabi/openocd/,选择一个下载、解压、环境变量配置即可

cmake、ninja、openocd、gcc-arm-none-eabi下载完且配置好环境变量后,打开cmd或终端,输入以下命令确保安装和环境变量配置没问题:

image-20240920140952988

image-20240920141119664

  1. VsCode下载

    • 安装C++插件

    • 安装cmake tools插件

      image-20240920141419215

2. 创建项目

(1) 打开stm32cubemx

选择芯片、项目配置……参考文章:STM32CubeMX学习笔记(1)——搭建环境、编译烧写_stm32cubemx编译烧录-CSDN博客

注意在生成代码前,按照下面的方式配置:

image-20240920142157881

(2) 打开vscode

  1. 在vscode打开刚生成的stm32项目,输入快捷键 ctrl+ship+p,输入命令:cmake:select Configure,选择

    image-20240920143029392

  2. 然后继续输入命令进行配置

    image-20240920143223311

    配置成功输出:

    image-20240920144023070

  3. 左下角点击【生成】进行编译,编译后会生成build文件夹, 编译产生的文件都在里面

    image-20240920143338788

    编译成功输出:

    image-20240920144153687

如果要生成hex文件,打开CMakeLists.txt文件,在最后添加下面几行代码,然后重新编译即可。

image-20240920143606498

add_custom_command(
    TARGET ${CMAKE_PROJECT_NAME}  POST_BUILD
    COMMAND ${CMAKE_OBJCOPY} -O ihex "${CMAKE_PROJECT_NAME}.elf" "${CMAKE_PROJECT_NAME}.hex"
)

标签:编译,VSCode,配置,STM32HAL,https,ninja,com,环境变量,下载
From: https://www.cnblogs.com/ajream/p/18422494

相关文章

  • 《华为三台交换机堆叠的详细命令行配置示例》
    华为三台交换机堆叠的详细命令行配置示例目录目录华为三台交换机堆叠的详细命令行配置示例 在Switch1(作为主交换机)上的配置: 1. 进入系统视图2. 开启堆叠功能并设置堆叠域编号(假设为10)3. 设置堆叠优先级(假设为200,数值越大越优先成为主交换机)4. 配置堆叠端口 ......
  • 华为AC+AP/AP有线口配置有线无线用户统一接入示例
    华为AC+AP/AP有线口配置有线无线用户统一接入示例文章目录华为AC+AP/AP有线口配置有线无线用户统一接入示例前言一、网络拓扑和网段划分二、实验配置1.SW1配置:2.SW2配置:3.AC配置:验证前言在实际的使用场景中,有线网络和无线网络环境通常是共同存在的。例如在办公区......
  • vue.config.js 多页面配置打包 样例
    基本概念EntryPoints:每个页面都有自己的入口点(entrypoint),例如main-index.js和main-about.js。这是每个页面的起点,定义了该页面需要加载的所有资源。Chunks:由Webpack生成的JavaScript文件块。每个页面会有自己的chunk,还有一些共享的chunk。VendorChunk:包含第三方库......
  • 定义可引用的 CI/CD 配置文件中的输入参数
    极狐GitLab是一个一体化的DevOps平台,内置CI/CD功能。在极狐GitLab15.11中,我们引入了一项令人兴奋的新功能,允许用户为可包含的配置文件定义输入参数。通过在CI模板中使用输入参数的功能,您可以将模板中的任何关键字替换为参数,包括阶段、脚本或作业名称。例如,您可以向所有......
  • 帝国CMS报错:您的PHP配置文件php.ini配置有问题,怎么解决
    帝国CMS报错“您的PHP配置文件php.ini配置有问题”时,通常意味着PHP的某些配置项不符合帝国CMS的要求。以下是一些可能的解决方案:检查short_open_tag配置:如果你在使用较新版本的PHP(如5.4及以上),short_open_tag配置项默认是关闭的。帝国CMS可能依赖于<?这样的短标签格式。你需要......
  • 本地安装Jupyter笔记结合内网穿透配置公网地址实现异地远程记笔记
    文章目录前言1.选择与拉取镜像2.创建容器3.访问Jupyter工作台4.远程访问Jupyter工作台4.1内网穿透工具安装4.2创建远程连接公网地址4.3使用固定二级子域名地址远程访问前言本文主要介绍如何在Ubuntu系统中使用Docker本地部署JupyterNotebook,并结合cpolar内......
  • 华为ENSP、华为eNSP配置防火墙命令的放行实验
    华为ENSP、华为eNSP配置防火墙命令行放行@[TOC](华为ENSP、华为eNSP配置防火墙命令行放行)一、防火墙命令行放行原理1.三种区域:2.学会本次实验需要掌握的知识和即将学到的知识二、实验1.实验要求2.实验拓扑3.实验命令总结一、防火墙命令行放行原理1.三种区域:DM......
  • python, Pycharm开发环境配置!
    1.windows官网下载地址windowspythonDownloadwindowpycharmDownload专业版30天试用,可以下载社区版2.先下载安装python64,32位都可,一般现在都是64位双击安装,勾选Addpython.exetoPATH中如果想自定义安装,点击Customizeinstallation自定义安装,......
  • VUE框架CLI组件化配置Router实现单页面路由程序省市切换联动------VUE框架
    //导入vue-router对象importVueRouterfrom"vue-router";importHebeifrom"../components/hebei.vue";importHenanfrom"../components/henan.vue";//创建路由器对象(在这个路由器对象中配置路由)constrouter=newVueRouter({//在这里配置所有的路由规则......
  • OLT配置,这里是一个从上到下整理后的配置列表
    ONU编号:ONU1RID(ONU):001T-CONT类型:保证带宽(AssuredGrant)或固定带宽(Fixed),支持高带宽GEM端口:GEM1/1DownSLA(PIR):1GbpsUpSLA(PIR):600MbpsVLANID:101优先级(P-bit):未特别指定根据您提供的信息,这里是一个从上到下整理后的配置列表,专注于OLT、ONU及其相关配置:OLT配置信息:-O......