MDK工程转换Vscode+EIDE方法

news2024/10/5 14:21:45

MDK工程转换Vscode+EIDE方法

1、Vscode+EIDE环境搭建方法

请按下方视频完成环境搭建,并编译成功。下载,单步调试如无视频中芯片可暂不执行。

https://www.bilibili.com/video/BV1Zu4y1f72H/?spm_id_from=333.337.search-card.all.click&vd_source=73306704b9ceb89ff1b8290b5392fef2

  1. MDK工程转换
2.1、STM32F767工程例实例
2.1.1、VScode新建项目

EIDE插件---> 新建项目---> 空项目----> Cortex-M项目---> 输入工程名---> 选择保存位置

2.1.2、STM32CubeMX生成makefie工程

1)、找到之前MDK工程STM32CubeMX文件,复制到vscode工程中。

2)、打开vscode工程中.ioc文件。进行如下操作。

3)、完成后。

4)、将startup_stm32f767xx.s手动移入Src文件夹。

2.1.3、VScode项目配置

1)、打开.code-workspace。

2)、复制.ld文件名称到编译器。

3)、加载项目资源。

  EIDE插件---> 项目资源--->普通文件夹--->选中STM32cubeMX生成代码文件夹

4)、配置编译器、下载器。

5)、复制MDK中自己编写文件到VScode工程目录。

6)、打开makefile 、配置项目属性。

7)、配置MDK中自建源码目录。本实例中“USER”为自建目录,包含.c、.h文件。如工程没有此种目录可跳过。

8)、编译,下载。

2.2、HC32F460工程实例
2.2.1、VScode新建项目

EIDE插件---> 新建项目---> 空项目----> Cortex-M项目---> 输入工程名---> 选择保存位置

具体参考2.2.1章节。

2.2.2、官方库移入VScode项目

1)、打开工程文件,创建如下两个文件夹

2)、将用户代码资源(.c)文件放入Core\Src文件夹中,头(.h)文件放入Core\Inc文件夹中,)、并将官方库中GCC目录下的.S文件放入Core文件夹下。

3)、将代码使用的驱动库和官方库GCC文件夹下的cmsis文件夹放入Drivers文件夹下。

4)、将官方库GCC文件夹下的ld文件放入工程目录下,将本例程中的makefile文件粘贴入工程目录下。

5)、将如下文件夹加入项目资源。

6)、根据项目使用的芯片信息,项目资源文件包含目录,项目使用的宏定义,链接文件名称,修改Makefile文件以中相关信息,以及左侧画红框的信息。


7)、编译文件导入,点击下载按钮,下方会出现Jlink.exe文件地址。

8)、找到该文件,按照第二张方法导入芯片支持包。

9)、重新打开VScode选择下载支持包即可。

2.2.3、用户代码移入工程

   参考2.1.2章节第七步。

3、关于使用
3.1、 APP工程

3.2、printf重定义

由fputc--->_write

3.3、%f无法打印

如在freertos的任务中,需要手动调大空间

4、异常问题处理
  1. 编译出的hex以及bin文件为1k,切无法单步调试。

   原因startup_stm32f767xx.s文件被VScode工程破坏,使用STM32CubeMX重新生成即可。

2、GCC编译器编译出IAP文件请核对大小。Boot空间过小时容易超出范围。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1032854.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Qt创建线程(继承于QThread的方法)

1.QThread: 继承QThread创建子线程的注意点: (1)需要写一个继承QThread的子类,然后必须要重写继承的run()函数(在run函数里面重写要在线程中执行的方法(任务函数)) &a…

STM32单片机中国象棋TFT触摸屏小游戏

实践制作DIY- GC0167-中国象棋 一、功能说明: 基于STM32单片机设计-中国象棋 二、功能介绍: 硬件组成:STM32F103RCT6最小系统2.8寸TFT电阻触摸屏24C02存储器1个按键(悔棋) 游戏规则: 1.有悔棋键&…

有没有免费的人才测评工具,免费的人才测评系统软件?

最近看到知乎上有个问题挺火的,就是问有没有免费的人才测评工具,人才测系统软件目前是有挺多的,但是要说免费,我还真心没有听说过,不但不免费,比较专业的人才测评公司,价格还是非常高的。 人才…

目标检测(Object Detection)概念速通

参考博文:目标检测(Object Detection)_YEGE学AI算法的博客-CSDN博客 这篇参考的相当多,写的真的很好很入门,觉得很有用,想详细了解的可以去看看,侵删↑ 上回组会分享了DETR和MDETR,…

【lesson9】进程

文章目录 什么是进程如何管理进程查看进程创建子进程 什么是进程 我们用一张Windows下的任务管理器图来辅助我们观看,我们一个可以看到应用在运行的时候就是一个个进程。 所以我们启动了一个软件本质上就是启动了一个进程。 在Linux下运行一条命令,./XXX…

探究Vcenter虚拟化方案中,VirtualMachine庞大结构体中各字段的含义

SDK中mo.VirtualMachine结构体定义如下: type VirtualMachine struct { ManagedEntity Capability types.VirtualMachineCapability mo:"capability" Config *types.VirtualMachineConfigInfo mo:"config" Layout …

十二、流程控制-循环

流程控制-循环 1.while循环语句★2.do...while语句★3.for循环语句 —————————————————————————————————————————————————— 1.while循环语句★ while语句也称条件判断语句,它的循环方式是利用一个条件来控制是否…

Spring实例化源码解析之ConfigurationClassPostProcessor(二)

ConfigurationClassPostProcessor源码 解析 书接上回,在第一次调用invokeBeanDefinitionRegistryPostProcessors方法的时候参数currentRegistryProcessors为ConfigurationClassPostProcessor,本章主要深入这个类的postProcessBeanDefinitionRegistry方法…

linux部署页面内容

/bin:该目录包含了常用的二进制可执行文件,如ls、cp、mv、rm等等。 /boot:该目录包含了启动Linux系统所需的文件,如内核文件和引导加载程序。 /dev:该目录包含了所有设备文件,如硬盘、光驱、鼠标、键盘等等…

LeetCode 刷题记录——从零开始记录自己一些不会的(二)

20. 替换后的最长重复字符 题意 给你一个字符串 s 和一个整数 k 。你可以选择字符串中的任一字符,并将其更改为任何其他大写英文字符。该操作最多可执行 k 次。 在执行上述操作后,返回包含相同字母的最长子字符串的长度。 思路 代码 class Solution…

学习MLPERF

测试基准与标准 | BenchCouncil 其中涉及AI的有如下: AI (1) AIBench Training AIBench 培训采用平衡的 AI 基准测试方法,考虑全面性、代表性、可负担性和可移植性。该方法广泛调查人工智能任务和模型,并在最大程度上涵盖了算法级、系统级…

玩转YAML配置文件占位符 ,同事纷纷直呼大佬

配置文件占位符 Spring Boot配置文件支持占位符,一些用法如下: 为server.port设置一个随机端口 server: port: ${random.int} 其他随机占位符 // 随机数占位符${random.value} - 类似uuid的随机数,没有"-"连接${random.int} - 随…

【李沐深度学习笔记】矩阵计算(5)

课程地址和说明 线性代数实现p4 本系列文章是我学习李沐老师深度学习系列课程的学习笔记,可能会对李沐老师上课没讲到的进行补充。 本节是第五篇,由于CSDN限制,只能被迫拆分 矩阵计算 多元函数的等高线 此处参考视频:熟肉)多元…

c语言-实用调试技巧

什么是bug? 程序中出现的问题 调试是什么?有多重要? 测试的基本步骤:发现程序错误的存在 以隔离、消除等方式对错误进行定位,确定错误产生的原因,提出纠正错误的解决办法,对程序错误予以改正…

【Servlet】第一个 Servlet 项目

第一个 Servlet 项目 一. Servlet 是什么二. Servlet 主要做的工作三. 第一个 Servlet 程序1. 创建项目2. 引入依赖3. 创建目录4. 编写代码5. 打包程序6. 部署程序7. 验证程序 四. 更方便的部署方式1. 安装 Smart Tomcat 插件2. 配置 Smart Tomcat 插件 一. Servlet 是什么 Se…

2023华为杯数学建模研赛思路分享——最全版本E题技术文档深度解析已出

2023华为杯数学建模研赛E题最新完整版技术文档已出 更多内容加群了解咨询【云顶数模科研交流群】: 正在跳转​qm.qq.com/cgi-bin/qm/qr?_wv1027&kzZ9YYiFSIhMwasovgcr-Fq6wp_ZF2-To&authKeyIDnk4VjKwk4FWcwTKW1ye8qfCOZjKbx%2FeLQVSFeD%2BrrUNJnhWAYwC%2…

OceanBase再获OSCAR两项大奖,坚定开源开放

2023 年 9 月 21 日,由中国信息通信研究院(简称“中国信通院”)、中国通信标准化协会联合主办的“OSCAR 开源产业大会”在京召开。本次发布了 2023 年可信开源评估结果,OceanBase 通过 可信开源 社区评估,荣获 “OSCAR…

【打开新世界大门】看测试老鸟如何把API 测试玩弄在鼓掌之间

【软件测试面试突击班】如何逼自己一周刷完软件测试八股文教程,刷完面试就稳了,你也可以当高薪软件测试工程师(自动化测试) 一、API 测试的基本步骤 我介绍过当今互联网产品的测试策略往往会采用菱形结构,即重量级 AP…

蜣螂优化(DBO)算法的5种最新变体(含MATLAB代码)

先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年…

spark Structured报错解决

报错,不想看原因的直接去解决方案试试 Exception in thread "main" java.lang.IllegalArgumentException: Pathname /C:/Users/Administrator/AppData/Local/Temp/1/temporary-611514af-8dc5-4b20-9237-e5f2d21fdf88/metadata from hdfs://master:8020/C…