S32K3 工具篇7:如何使用VScode编译EB MCAL工程

S32K3 工具篇7:如何使用VScode编译EB MCAL工程

  • 1. VScode工具与配置
  • 2. 使用VScode编译RTD MCAL工程
    • 2.1 使用EB tresos生成配置
    • 2.2 VScode 打开工程
    • 2.3 修改mk文件
    • 2.4 编译文件
    • 2.5 debug生成好的elf文件

 对于EB配置的MCAL代码,通常是基于RTD去做,然后使用命令行编译。刚开始学的时候,不知道,总是直接打开相关文件去修改,然后使用window cmd的方式去敲命令,这种方式非常的笨拙。所以,本篇文章将会给出如何使用VScode的方式去打开并且编译一个RTD4.0.0  S32K344 MCAL的工程。当然,对于MCAL EB的工程,在编译之前,需要使用EB工具打开对应工程的配置文件,生成工程之后再关闭。

1. VScode工具与配置

VScode下载链接:
https://code.visualstudio.com/Download
下载之后,安装好。
下面给出本人常用的一些安装插件:
在这里插入图片描述

图 1

在这里插入图片描述

图 2

可以在extensions里面搜索到并且直接安装。

2. 使用VScode编译RTD MCAL工程

本文以RTD4.0.0, SW32K3_S32M27x_RTD_R21-11_4.0.0为例,平台是官方S32K344-EVB板子。代码以Dio_TS_T40D34M40I0R0工程为例,为了不影响原始例程,这里拷贝Dio_TS_T40D34M40I0R0另存为Dio_TS_T40D34M40I0R0_vscode

2.1 使用EB tresos生成配置

打开EB 工具,导入工程:

C:\NXP\SW32K3_S32M27x_RTD_R21-11_4.0.0\eclipse\plugins\Dio_TS_T40D34M40I0R0_vscode\examples\EBT\S32K3XX\Dio_Example_S32K344\TresosProject

在这里插入图片描述

图3

双击someId, 然后右击鼠标,如果不需要做自定义配置的话,直接点击generate project,等待生成完毕没有错误的情况下关闭EB IDE。
在这里插入图片描述

图4

2.2 VScode 打开工程

首先打开VScode,在open Folder里面选择工程路径为:

C:\NXP\SW32K3_S32M27x_RTD_R21-11_4.0.0\eclipse\plugins\Dio_TS_T40D34M40I0R0_vscode\examples\EBT\S32K3XX\Dio_Example_S32K344

在这里插入图片描述

图 5

打开之后,可以看到路径下所有的文件已经被放了进来:
在这里插入图片描述

图 6

可以保存workspace,这样就不需要每次都打开文件夹。
File->Save workspace as,保存到路径:

C:\NXP\SW32K3_S32M27x_RTD_R21-11_4.0.0\eclipse\plugins\Dio_TS_T40D34M40I0R0_vscode\examples\EBT\S32K3XX\Dio_Example_S32K344

2.3 修改mk文件

之前的文章讲过,需要修改工程mk文件来指定gcc,tresos路径等。
修改点:project_parameters.mk

GCC_DIR = C:/NXP/S32DS.3.5_RTD400/S32DS/build_tools/gcc_v10.2/gcc-10.2-arm32-eabi
TRESOS_DIR = C:/EB/tresos_29_0_0
PLUGINS_DIR = C:/NXP/SW32K3_S32M27x_RTD_R21-11_4.0.0/eclipse/plugins

在这里插入图片描述

图 7

修改点: check_build_params.mk
删除

ifeq ("$(wildcard $(T32_DIR)/bin/windows/t32marm.exe)","")$(error Invalid path set to Trace32. \The provided path: from project_parameters.mk T32_DIR=$(T32_DIR) is invalid!)
endif

在这里插入图片描述

图8

然后保存所有文件:File->save all

2.4 编译文件

Terminal->New Terminal
输入如下命令:

>make generate
>make build

在这里插入图片描述

图 9

在这里插入图片描述

图 10

可以看到,在make build之后,已经是out文件夹中生成了elf文件。
这个elf文件,就可以直接使用2中方法去下载:
(1)S32DS 空工程链接到elf去下载
(2)劳德巴赫直接下载elf文件

2.5 debug生成好的elf文件

由于S32K344-EVB是具有板载的opensda工具的,所以,这里直接使用S32DS空工程链接到生成的main.elf文件下载并且debug。
新建一个S32DS工程,并且接口是PE Multilink的,然后直接在debug configuration里面把elf文件改为main.elf,再把之前生成的elf文件放到新建S32DS工程的文件夹:
\Debug_FLASH
在这里插入图片描述

图11

然后,进入debug模式,结果如下:
在这里插入图片描述

图 12

可以看到,芯片已经进入到debug模式,并且能够成功运行。
全速运行,可以看到板载的红灯闪烁,所以到此,VSCode编译MCAL代码已经成功运行。

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

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

相关文章

GEO IGEO MEO介绍 和 北斗导航系统使用三轨道原因

GEO IGSO MEO基本轨道知识 中地球轨道(MEO:Middle Earth Orbit) 轨道高度2000-36000kmGPS、GLONASS都属于此类轨道 地球同步轨道(或称对地静止轨道)[同步转动] 轨道高度约为36000 km;此轨道上卫星运行方…

情感识别系统源码分享

情感识别检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Computer Vision …

发工资-python

题目要求&#xff1a; 代码&#xff1a; import random from random import randintmoney 10000 for i in range(1, 21):performance randint(1, 10)if performance < 5:print(f"员工{i},绩效分{performance},低于5,不发工资&#xff0c;下一位")continueif m…

每日学习一个数据结构-倒排表

文章目录 示意图倒排表的基本概念倒排表的数据结构示例 倒排表的优点应用场景 倒排表&#xff08;Inverted Index&#xff09;&#xff0c;也称为反向索引或倒排文件&#xff0c;在信息检索系统中是一种重要的数据结构。它主要用于快速搜索文档中的关键词&#xff0c;并找到包含…

字典+泛型的栈与队列+委托

字典 在System.Collections.Generic下&#xff0c;对应HashTable,添加了泛型的特性&#xff0c;性能更高更安全&#xff0c;在内存中散列排布&#xff0c;存储也是键值对。 Dictionary<键的数据类型&#xff0c;值的数据类型> 字典名new Dictionary<键的数据类型&am…

异常冲突行为和危险识别系统源码分享

异常冲突行为和危险识别检测系统源码分享 [一条龙教学YOLOV8标注好的数据集一键训练_70全套改进创新点发刊_Web前端展示] 1.研究背景与意义 项目参考AAAI Association for the Advancement of Artificial Intelligence 项目来源AACV Association for the Advancement of Co…

教你搭建一个wifi贴系统

大家好&#xff0c;我是鲸天科技千千&#xff0c;大家都知道我是做小程序开发的&#xff0c;平时会给大家分享一些互联网相关的创业项目&#xff0c;感兴趣的可以跟我关注一下。 搭建一个首先就是要搭建一个自己的wifi贴小程序&#xff0c;我们自己的工作就是把这个小程序推广…

CAN BUS

CAN BUS 原理 网上资料非常丰富&#xff0c;是车载系统主要BUS之一。 我们关注如下方面 can bus 是什么网络结构CAN BUS 协议ECU node实现其他 What is CAN Bus? Control Area Network (CAN) bus is a serial communication protocol that allows devices to exchange dat…

JavaScript web API part3

web API DOM 日期对象 > 得到当前系统的时间 new这个操作就是实例化 语法 const date new Date() or const date new Date(2004-11-3 08:00:00) 可以指定时间 > 可应用于通过系统时间和指定时间实现倒计时的操作 //得到当前时间const date new Date()console.lo…

HTML贪吃蛇游戏

文章目录 贪吃蛇游戏 运行效果代码 贪吃蛇游戏 贪吃蛇是一款经典的休闲益智游戏。本文将通过HTML5和JavaScript详细解析如何实现一个简易版的贪吃蛇游戏。游戏的主要逻辑包括蛇的移动、碰撞检测、食物生成等功能。以下是游戏的完整代码及注释解析。&#xff08;纯属好玩&#…

【PyQt6 应用程序】应用程序携带数据源文件一并打包

在开发好应用程序打包之后给到其他用户会发现数据文件比如封面图片不见了。 例如这样,很影响用户使用。 这里介绍一个非常简单的打包方法,不光要在打包命令的时候添加对应数据文件,在源码中也要进行一些简单的修改。 修改需要添加打包文件的地方。首先需要添加一个绝对路径…

九九乘法表-while-python

i 1 while i < 9:#j 1&#xff0c;条件为j < ij 1while j < i:print(f"{j}*{i}{i*j}\t",end)#先输出jj 1print()i 1运行结果截图&#xff1a;

超分辨率技术之插值算法

&#x1f31e;欢迎莅临我的个人主页&#x1f448;&#x1f3fb;这里是我专注于深度学习领域、用心分享知识精粹与智慧火花的独特角落&#xff01;&#x1f349; &#x1f308;如果大家喜欢文章&#xff0c;欢迎&#xff1a;关注&#x1f377;点赞&#x1f44d;&#x1f3fb;评论…

单机软件在Linux上的安装

mysql安装 5.7版本 mysql的程序在centos官方的库中是没有的&#xff0c;需要切换到淘宝的镜像&#xff0c;这个前面有教程或者配置mysql的源 yum -y install rpm rpm --import https://repo.mysql.Com/RPM-GPG-KEY-mysqL-2022 rpm -Uvh http://repo.mysql.com//mysql57-commun…

Linux基础---08软件的安装

安装方式优缺点编译安装自由定制&#xff0c;但较为繁琐rmp安装安装简单&#xff0c;但需要自己解决依赖&#xff0c;不支持定制yum安装自动解决rmp依赖&#xff0c;但不支持定制&#xff08;用的更多&#xff09; 下面就具体介绍三大安装方式&#xff1a; 一.编译安装 用Li…

IBM撤出中国区相关研发工作 裁员规模超千人

经济观察网 记者 钱玉娟 8月26日上午10点半&#xff0c;IBM中国举行了一场只有3分钟的全员会。IBM全球企业系统开发部副总裁Jack Hergenrother在会上宣布&#xff0c;IBM基础设施决定撤出IBM中国系统中心&#xff08;CSL&#xff09;与IBM中国开发中心&#xff08;CDL&#xff…

热门数据恢复软件大盘点

现在大家的数据都喜欢存放在一些电子设备里保存吧。这样既方便存放&#xff0c;也方便我们查找。但是这些设备可能因为病毒、误删除等原因造成数据的丢失。这篇文章我将介绍几款类似易我数据恢复软件的数据恢复工具&#xff0c;减少为数据丢失给我们造成损失。 1.FOXIT数据恢复…

3. Python计算水仙花数

Python计算水仙花数 一、什么是水仙花数&#xff1f; 百度答案 二、怎样使用Python计算水仙花数&#xff1f; 这里需要for循环&#xff0c;if判断&#xff0c;需要range()函数&#xff0c;需要知道怎么求个位数&#xff0c;十位数&#xff0c;百位数… 1. For循环 语句结…

通信工程学习:什么是SNI业务节点接口

SNI&#xff1a;业务节点接口 SNI业务节点接口&#xff0c;全称Service Node Interface&#xff0c;是接入网&#xff08;AN&#xff09;和一个业务节点&#xff08;SN&#xff09;之间的接口&#xff0c;位于接入网的业务侧。这一接口在通信网络中扮演着重要的角色&#xff0c…

智慧农业数据集(一)

目录 葡萄叶片病虫害害数据集 茄子果实病虫害数据集 81类水果数据集 小麦叶片病虫害数据集 番茄叶片病害数据集 草莓叶片病虫害数据集 水稻叶片病虫害数据集 菠萝成熟度数据集 10类水果数据集 棉花叶片病虫害数据集 棉花成熟度数据集 柑橘叶片病虫害数据集 苹果新…