MDK工程转换Vscode+EIDE方法

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.xdnf.cn/news/139567.html

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

相关文章

摩尔信使MThings实用功能盘点

“冗长的用户手册”与“精简的交互设计”之间势必产生一条信息鸿沟,现在就来盘点一下摩尔信使MThings有哪些隐蔽而实用的功能。 01 数据配置类 一键刷新 功能:快速读取所有位数据、寄存器数据的当前数值。 操作:双击“数值”列表头。 一键…

有一个新工具,能让程序员变成高手,优雅撸它!

不知道从什么时候开始,程序员这个职位变得家喻户晓,对程序员的印象也从以前的高深莫测变成如今的加班代名词。对于程序员加班,不懂有话要说。 作为大厂的一枚螺丝钉,接到任务的第一时间需要缕清底层逻辑,并随时关注部门…

AUTOSAR实战篇:手把手带你搞定Watchdog协议栈

AUTOSAR实战篇:手把手带你搞定Watchdog协议栈 前言 小T出品,必是精品! 手把手搞定Watchdog协议栈,你值得拥有! 正文 在进行Watchdog协议栈实战之前,建议先阅读小T之前有关Watchdog协议栈的两篇文章《Watchdog协议栈上》与《Watchdog协议栈下》先了解下在AUTOSAR框架下的W…

SQL模板-用户留存率计算

在这段实习中,我遇到了用户留存率计算的需求,这里做个总结。 首先来讲下,什么是用户留存? 在互联网行业中,用户在某段时间内开始使用应用,经过一段时间后,仍然继续使用该应用的用户。用户留存一…

【数据分享】2005-2022年全国民航机场客货吞吐量和起降架次数据

机场是一个城市对外联系的重要渠道,机场的旅客吞吐量和货物吞吐量是体现一个城市对外联系程度的重要指标。 本次我们给大家分享的是2005-2022年我国民航机场的旅客吞吐量、货邮吞吐量、起降架次数据。数据格式为Excel和Shp两种格式。数据坐标为WGS1984。原始数据来…

根据条件关闭软件

使用下载工具时,经常出现磁盘空间已满,无法下载的情况。 使用shell写一个监控,每2分钟执行一次。判断当前磁盘的空间,低于2G时,关闭下载软件。 获取空间大小 ➜ ~ df -h …

CTF--攻防世界杂项--第二课

下载题目根据文件类型可知,这是一个流量包 那么接下来就是利用分析流量包常用的工具wireshark来分析 利用关键词进行搜索 http contains shell 在最后一条数据中看到了flag。 以上就结束,非常简单的一道题。

使用Visual Leak Detector排查内存泄漏问题

目录 1、VLD工具概述 2、下载、安装VLD 2.1、下载VLD 2.2、安装VLD 3、VLD安装目录及文件说明 3.1、安装目录及文件说明 3.2、关于32位和64位版本的详细说明 4、在工程中引入VLD 5、内存泄漏检测实例讲解 5.1、程序启动报错 5.2、启动调试,查看内存泄漏报…

redis如何清空当前缓存和所有缓存

Windows环境下使用命令行进行redis缓存清理 redis安装目录下输入cmdredis-cli -p 端口号flushdb 清除当前数据库缓存flushall 清除整个redis所有缓存keys * 查看所有key值del key 删除指定索引的值 注意: 我们清空缓存的时候,需要确保redis-…

Leetcode199. 二叉树的右视图

力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 给定一个二叉树的 根节点 root,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。 题解:力扣(LeetCode&#xff09…

pdf添加水印

给pdf文件添加水印 引入依赖 <dependency><groupId>com.itextpdf</groupId><artifactId>itextpdf</artifactId><version>5.5.13.3</version></dependency>添加水印 package com.it2.pdfdemo02.util;import com.itextpdf.tex…

nodeJs+Mongodb+mongoose入门

nodeJsexpressMongodbmongooseNavicat 自我记录 一、简介 1.1 Mongodb 是什么 MongoDB 是一个基于分布式文件存储的数据库&#xff0c;官方地址 https://www.mongodb.com/ 1.2 数据库是什么 数据库&#xff08;DataBase&#xff09;是按照数据结构来组织、存储和管理数据…

EDA(Exploratory Data Analysis)探索性数据分析

EDA(Exploratory Data Analysis)中文名称为探索性数据分析&#xff0c;是为了在特征工程或模型开发之前对数据有个基本的了解。数据类型通常分为两类&#xff1a;连续类型和离散类型&#xff0c;特征类型不同&#xff0c;我们探索的内容也不同。 1. 特征类型 1.1 连续型特征 …

Matlab中 * 与 .* 的区别

* 用于矩阵乘法 示例1&#xff1a; 注&#xff1a; 表示转置&#xff0c;即矩阵a的转置 乘以 矩阵b 根据矩阵乘法&#xff0c;r结果为&#xff1a; 示例2&#xff1a; 矩阵a 乘以 矩阵b的转置 根据矩阵乘法&#xff0c;结果为&#xff1a; .* 用于对应位置单个元素相乘 示例…

代码片段的理解

1.后面的error直接走的是失败的回调 例如:权限不足,可以理解为服务器的一种形式 2.前面走的是成功的回调 但是也可能不对,例如在传过去的参数,在数据库查询不了这个值,传递过来的值不一样&#xff0c;这样它也是走的成功回调。

Spire.OCR for .NET 1.9.0 Crack

Spire.OCR for .NET 是一个专业的 OCR 库&#xff0c;用于从 JPG、PNG、GIF、BMP 和 TIFF 格式的图像中读取文本。开发人员可以轻松地在 C# 和 VB.NET 的 .NET 应用程序中添加 OCR 功能。它支持常用的图像格式&#xff0c;并提供从图像中​​读取多个字符和字体、粗体和斜体样式…

PyTorch实战:卷积神经网络详解+Python实现卷积神经网络Cifar10彩色图片分类

目录 前言 一、卷积神经网络概述 二、卷积神经网络特点 卷积运算 单通道&#xff0c;二维卷积运算示例 单通道&#xff0c;二维&#xff0c;带偏置的卷积示例 带填充的单通道&#xff0c;二维卷积运算示例 Valid卷积 Same卷积 多通道卷积计算 1.局部感知域 2.参数共…

【php经典算法】冒泡排序,冒泡排序原理,冒泡排序执行逻辑,执行过程,执行结果 代码

冒泡排序原理 每次比较两个相邻的元素&#xff0c;将较大的元素交换至右端 冒泡排序执行过程输出效果 冒泡排序实现思路 每次冒泡排序操作都会将相邻的两个元素进行比较&#xff0c;看是否满足大小关系要求&#xff0c;如果不满足&#xff0c;就交换这两个相邻元素的次序&…

【Python Fastapi】js上传文件,fastapi处理,js显示回传信息

python from fastapi import FastAPI, File, UploadFile, HTTPException from fastapi.staticfiles import StaticFiles from fastapi.responses import HTMLResponse from typing import List import requestsapp FastAPI()# 配置静态文件目录 app.mount("/static"…

内网穿透,轻松实现PostgreSQL数据库公网远程连接!

文章目录 前言1. 安装postgreSQL2. 本地连接postgreSQL3. Windows 安装 cpolar4. 配置postgreSQL公网地址5. 公网postgreSQL访问6. 固定连接公网地址7. postgreSQL固定地址连接测试 前言 PostgreSQL是一个功能非常强大的关系型数据库管理系统&#xff08;RDBMS&#xff09;,下…