首页 > 其他分享 >VSCode + EIDE开发记录

VSCode + EIDE开发记录

时间:2024-08-28 10:36:40浏览次数:8  
标签:EIDE 记录 VSCode Project STM32F303x8 vector 使用

环境:Win10, VSCode + Embedded IDE扩展,使用Cortex-Debug进行调试。

使用CubeMX进行代码生成并在VSCode+EIDE中编辑和编译、调试

  1. 首先使用CubeMX配置好时钟、外设等,然后生成工程,其中:Project Manager/Project/Toolchain IDE项目,如使用MDK-ARM,则在其后的EIDE中应设置AC5或AC6编译器进行编译,如使用Makefile,则使用GCC编译器。
  2. 打开VSCode,如选择使用MDK来生成工程,则直接使用EIDE扩展以导入MDK工程的方式来打开工程;如选择使用Makefile的方式生成工程,则首先使用EIDE扩展创建工程,并手动设置好源码目录,头文件查找目录等,添加好xxx.s文件到源码工程(右键Project Resources -> Add file来添加文件到项目中进行编译)。注意要在Project Attributes->Preprocessor Definitions中加入如下宏:USE_HAL_DRIVERSTM32F303x8,其中,STM32F303x8取决于你用的什么MCU,如果你知道你的MCU型号但是不知道对应的宏的话可以查看源码Drivers/CMSIS/Device/ST/STM32FXxx/Include目录,这里的Xxx是你生成工程时候自动生成的。
  3. 如遇到编译xxx.s的文件出错,查看编译器是否选对了,可以查看xxx.s的头部注释,例如:
/**
  ******************************************************************************
  * @file      startup_stm32f303x8.s
  * @author    MCD Application Team
  * @brief     STM32F303x6/STM32F303x8 devices vector table for GCC toolchain.
  *            This module performs:
  *                - Set the initial SP
  *                - Set the initial PC == Reset_Handler,
  *                - Set the vector table entries with the exceptions ISR address,
  *                - Configure the clock system  
  *                - Branches to main in the C library (which eventually
  *                  calls main()).
  *            After Reset the Cortex-M4 processor is in Thread mode,
  *            priority is Privileged, and the Stack is set to Main.
  ******************************************************************************
  * @attention
  *
  * Copyright (c) 2016 STMicroelectronics.
  * All rights reserved.
  *
  * This software is licensed under terms that can be found in the LICENSE file
  * in the root directory of this software component.
  * If no LICENSE file comes with this software, it is provided AS-IS.
  *
  ******************************************************************************
  */

这里的STM32F303x6/STM32F303x8 devices vector table for GCC toolchain.就表明了这个xxx.s文件是使用gcc的汇编格式来使用的。
如果是STM32F303x6/x8 devices vector table for MDK-ARM toolchain.则表示是用ARMCC的汇编格式来使用的。

  1. 注意选择好Builder Configurations->CPU Type,以及设置好Linker Script File Path文件名,默认的文件名不可用。

标签:EIDE,记录,VSCode,Project,STM32F303x8,vector,使用
From: https://www.cnblogs.com/yinsua/p/18384129

相关文章

  • 快一年没进这里了,小小记录下吧
    (1)进了某上市股份银行的数仓迁移项目(2)遇到了相似又不同的问题,就是所谓的项目经理排挤式,看来我是天生招小人的体质,需要接种疫苗(3)乙方的管理水平,刷新了我的三观,本以为遇到中行甲方的管理水平下限,没想到我离开这个行业之前,还能让我领教到乙方的管理水平下限(4)充分再次理解什么叫乱叫......
  • 8月做题记录
    感觉再不写做题记录会废的这个博客用惯了,懒得再用原来那个写了Latex不是很会,应该会比较乱CF1995D首先可以转化一下题意,变成先选出一个字符集(必须包含字符串的最后一个字母),使得字符集里的字母在字符串中的位置前后相差不超过k,询问字符集的大小最小为多少加上字符集<=18,这个......
  • 创建一个用于修改本地DNS解析记录的Windows客户端
    在许多场景下,我们可能需要手动修改本地的DNS解析记录,以便将特定的域名解析到指定的IP地址上。例如,在开发和测试环境中,我们可能希望将某些域名指向本地服务器,而不依赖于公共DNS服务。为此,Windows系统中的hosts文件就可以派上用场。然而,手动编辑hosts文件可能会比较麻烦,......
  • mysql 开启和关闭日志记录
    开启和关闭日志记录(临时)#默认情况下mysql是不会记录最近执行sql语句的,需要手动开启才能记录。另外sql语句有两种方式记录,记录到table,记录到文件。另外开启日志记录多少会占用性能,适合开发测试环境使用。--临时设置,重启MySQL服务失效showvariableslike'general_log%';--......
  • 使用VScode的Git版本控制功能(图文版)
    ☁️前言今天让我来手把手教你简单入门VScode自带的Git版本控制。......
  • 使用pyqt5记录
    方便的windows上位机制作软件图形界面制作使用QtDesigner软件完成图形界面的制作,信号绑定之类的图形界面文件转py文件 使用该命令,在windows命令端下将.ui文件转成.py文件python-mPyQt5.uic.pyuicuntitled.ui-ountitled.py//文件自己修改可选,方便的python文件编辑......
  • Pinely Round 4 (Div. 1 + Div. 2) VP记录
    PinelyRound4(Div.1+Div.2)VP记录场上打了ABCDF,被E二粉兔创飞了。这场的构造题有:BDEGI,乐死了。A把数列黑白染色,第一个格为黑色,那么每次删除会删除一个黑格子和一个白格子。而黑格子始终比白格子多一个,因此最后选到的是黑格子。答案极为黑格子的最大值,也易证一......
  • IDA反汇编STM32代码学习记录
    首先,使用IDA反汇编STM32代码应该打开的是bin文件,而不是.hex或.axf文件,只有bin文件是和下载到flash内的数据一致的。具体参见:三种文件的区别那么,怎么生成bin文件呢,在有工程的情况下,在MDK中是在user的afterbuild后添加命令:fromelf--bin-o./Output/@L.bin./Output/@L.axf@L代......
  • python + logging 记录日志
    日志生成的位置为当前文件目录下的tmp文件夹,是以固定大小(10M)的方式去滚动日志,如想设置为按时间滚动日志,需要设置为TimedRotatingFileHandler(filename=_create_log_path(),when="midnight",interval=1,backupCount=7)去替换RotatingFileHandler,每天晚上12点生成一个新的日志......
  • esp-idf vscode debug command 'espIdf.getXtensaGdb' not found
    esp32idfvscodedebug错误vscode中配置文件采用的是正点原子的,调用gdb的时候,提示报错,找不到相应的命令launch.json文件中gdb的配置如下{"version":"0.2.0","configurations":[ { "name":"GDB", "type":"cppdbg", &......