STM32使用VScode开发

news/2025/1/27 5:54:25 标签: stm32, vscode, 嵌入式硬件

文章目录

        • Makefile形式创建项目
          • 新建stm项目
          • 下载stm32cubemx
          • 新建项目
          • IED makefile
          • 保存到本地
          • arm gcc是编译的工具链
          • G++配置
          • 编译
        • Cmake +vscode +MSYS2方式
          • bilibili
          • MSYS2 统一环境配置
          • mingw32-make -> make
          • windows环境变量
          • Cmake CmakeList
          • nijia 编译输出elf
          • CMAKE_GENERATOR查询
          • 改为生成makefile文件
          • make编译输出elf
          • elf文件
          • 烧录
        • 云调试
          • wokwi.toml
          • diagram.json
          • 源代码
        • 新增控制端口
          • 接一个4脚开关
          • 原件连接图
          • 修改后源码
          • Ctrl+Shift+P 查看效果
          • 点灯视频
        • 索引配置
          • Debug
          • 新增配置
          • 配置elf
          • 配置configfiles
        • 其他
          • CLT下载
          • 接线图
          • 原理图

Makefile形式创建项目
新建stm项目

https://blog.csdn.net/Brendon_Tan/article/details/107869664

stm32cubemx_4">下载stm32cubemx

https://www.st.com/en/development-tools/stm32cubemx.html
~~
STM32f103C8T6

新建项目

在这里插入图片描述

IED makefile

在这里插入图片描述

保存到本地

在这里插入图片描述

arm gcc是编译的工具链

https://developer.arm.com/downloads/-/gnu-rm
在这里插入图片描述

G++配置

在这里插入图片描述

编译

在这里插入图片描述

vscode_MSYS2_24">Cmake +vscode +MSYS2方式
bilibili

全文参考bilibili博主视频教程,感兴趣的可以去了解下

MSYS2 统一环境配置

https://packages.msys2.org/packages/mingw-w64-x86_64-openocd

在这里插入图片描述

mingw32-make -> make

改名mingw32-make.exe -> make.exe
在这里插入图片描述

windows环境变量

在这里插入图片描述

Cmake CmakeList

cmake ..
OR
cmake -G Ninja ..默认为ninja
在这里插入图片描述

nijia 编译输出elf

在这里插入图片描述

CMAKE_GENERATOR查询

message(STATUS "==========CMAKE_GENERATOR==========: ${CMAKE_GENERATOR}")
在这里插入图片描述
cmake .. -N -L

改为生成makefile文件

cmake -G "Unix Makefiles" ..
在这里插入图片描述
生成如下
在这里插入图片描述

make编译输出elf

make -j16
在这里插入图片描述

elf文件

在这里插入图片描述

烧录

openocd -f interface/stlink.cfg -f target/stm32f1x.cfg -c "program G:\WorkSpace_Thing\Stm32Test\build\Stm32Test.elf verify reset exit"

云调试
wokwi.toml

在这里插入图片描述

diagram.json
 {
   
  "version": 1,
  "author": "Uri Shaked",
  "editor": "wokwi",
  "parts": [
    {
   
      "type": "board-stm32-bluepill",
      "id": "stm32",
      "top": -174.16,
      "left": -262.83,
      "attrs": {
   }
    },
    {
   
      "type": "wokwi-led",
      "id": "led1",
      "top": -

http://www.niftyadmin.cn/n/5834727.html

相关文章

Java面试题2025-设计模式

1.说一下开发中需要遵守的设计原则? 设计模式中主要有六大设计原则,简称为SOLID ,是由于各个原则的首字母简称合并的来(两个L算一个,solid 稳定的),六大设计原则分别如下: 1、单一职责原则 单一职责原则的定义描述非…

解析“in the wild”——编程和生活中的俚语妙用

解析“in the wild”——编程和生活中的俚语妙用 看下面的技术文章中遇到 in the wild这个词,想要研究一下,遂产生此文。 Are there ever pointers to pointers to pointers? There is an old programming joke which says you can rate C programmers…

03-机器学习-数据获取

一、流行机器学习数据集 主流机器学习数据集汇总 数据集名称描述来源MNIST手写数字图像数据集,由美国人口普查局员工书写。MNIST官网ImageNet包含数百万张图像,用于图像分类和目标检测。ImageNet官网AudioSet包含YouTube音频片段,用于声音分…

软件开发中的密码学(国密算法)

1.软件行业中的加解密 在软件行业中,加解密技术广泛应用于数据保护、通信安全、身份验证等多个领域。加密(Encryption)是将明文数据转换为密文的过程,而解密(Decryption)则是将密文恢复为明文的过程。以下…

JavaScript使用toFixed保留一位小数的踩坑记录:TypeError: xxx.toFixed is not a function

JavaScript的toFixed函数是用于将一个数字格式化为指定的小数位数的字符串。其语法如下: numObj.toFixed([digits]) 其中,numObj是需要格式化的数字,digits是保留的小数位数。digits参数是一个可选参数,默认值为0,表示不保留小数位。 计算后需要保留一位小数,于是使用…

2025年01月26日Github流行趋势

项目名称:onlook 项目地址url:https://github.com/onlook-dev/onlook项目语言:TypeScript历史star数:4871今日star数:207项目维护者:Kitenite, drfarrell, iNerdStack, abhiroopc84, apps/dependabot项目简…

蓝桥杯真题 - 三国游戏 - 题解

题目链接:https://www.lanqiao.cn/problems/3518/learning/ 个人评价:难度 2 星(满星:5) 前置知识:贪心 整体思路 先假设魏蜀吴中的某一个势力最终获胜的情况下,如何求出事件发生的最大数量&a…

shiro学习五:使用springboot整合shiro。在前面学习四的基础上,增加shiro的缓存机制,源码讲解:认证缓存、授权缓存。

文章目录 前言1. 直接上代码最后在讲解1.1 新增的pom依赖1.2 RedisCache.java1.3 RedisCacheManager.java1.4 jwt的三个类1.5 ShiroConfig.java新增Bean 2. 源码讲解。2.1 shiro 缓存的代码流程。2.2 缓存流程2.2.1 认证和授权简述2.2.2 AuthenticatingRealm.getAuthentication…