轻松搞定AutoSar开发之-MCAL开发基础工程搭建

4 篇文章 0 订阅
4 篇文章 1 订阅

前言

上篇文章将基础环境搭建完成后,本篇我们开始搭建一个基础工程,后面所有的开发围绕此基础工程展开进行开发。为了让大家更加了解MCAL,本篇课程手把手教学如何搭建一个MCAL的基础开发工程。
MCAL开发需要用到两个工程,一个是EB工程,主要用于配置芯片及外设驱动电气属性,一个是S32DS工程,主要是编译代码生成最终的可执行文件。EB和S32DS两个工程就好比SD32的工程只是MCAL的空壳,需要EB生成的配置文件连填充才可以发挥作用!

一、EB基础工程搭建

对于EB工程来说,上篇我们在安装RTD时官方就为我们提供了大量的示例工程,我们只需要在官网示例工程上修改即可,这样省时又省力。上篇安装的RTD目录如下:
在这里插入图片描述
我们将Dio作为基础工程,将此工程复制到EB的workspace中(注:文件路径需要根据大家实际安装的来):
在这里插入图片描述
在EB中打开如下:
在这里插入图片描述
在这里插入图片描述
点击Browse选择工程路径
在这里插入图片描述
导入工程:
在这里插入图片描述
初次编译:
在这里插入图片描述
编译完成
在这里插入图片描述
编译完成后如何查看编译结果呢?如下:
在generate下又两个文件夹,一个时include,一个是src分别为EB生成的源代码和头文件,好奇的小伙伴可以打开里面看一下,都是些宏定义于全局结构体之类的,没错,这些生成的文件仅仅只是配置文件,例如IO需要配置上拉/下拉,输出/输入,那么这些配置文件体现的就是这些。
在这里插入图片描述
为了工程能够最大简易化,我们在EB中做适量的修改如下:
需要将错误导出选项取消勾选,然后在编译:
在这里插入图片描述
接下来回到EB工程顶层目录,我们讲几个重要的文件夹。
在这里插入图片描述
generate文件:主要是保存EB编译输出的配置文件,分别在此目录下的src和include中。
Include:MCAL接口使用实例头文件。
Src:MCAL接口使用实例源文件。
TresosProject:这个文件夹很重要,目录下的config目录下.xdm保存着EB的模块配置信息。也就是说我配置的GPIO信息都存在了.xdm中,如果我想将GPIO移植到另一个工程,那么我们直接将对应模块的.xdm拷贝过去即可。
这里我们先对几个重要的文件夹做简单的介绍,先有个印象,后序我们用到在详细讲述。

二、EB使用技巧

本小节简单教大家使用以下EB,如果用过EB的小伙伴就可以跳过本节了。
在这里插入图片描述
右击工程选择Module Configurations选项。
在这里插入图片描述
打开Outline查看全局树节点:
打开outline,outline可以快速定位我们想看的树节点。
路径:window-> show view-> other->General->outline
在这里插入图片描述
在这里插入图片描述
其他后面用到的地方在做讲解。

三、S32DS基础工程搭建

安装的RTD中有很多我们用不到的文件,我们需要将他裁剪掉。步骤如下:
先将RTD中的MCAL库文件复制出来:
在这里插入图片描述
我们裁剪RTD裁剪后文件夹下的MCAL,裁剪步骤如下:
①除Base 和 Platform 外只保留 include 和 src
在这里插入图片描述

②CANIF 、MemIf 模块只有include,只保留include;ECUC,Resource 没有include 和 src,可以把文件夹整体删除。
在这里插入图片描述
③Base 模块除了“include”和“src”文件夹以外,还需要将Base模块下的“header”
在这里插入图片描述
④Platform除src和include,还需要留下“build_files”文件夹和startup 文件夹
在这里插入图片描述
Build_files下只保留 gcc 文件夹,其它是用于其它编译器的链接文件
在这里插入图片描述
Startup 文件夹startup\src\m7 文件夹,删除gcc外的其它两个文件夹,是用于其它编译器的启动代码。
在这里插入图片描述
若不想裁剪的小伙伴可直接用资料中裁剪好的。

打开S32DS,点击File->New->S32DS Application Project
在这里插入图片描述
点击Next,下面我们不选SDK,我们最后用的是MCAL驱动库。
在这里插入图片描述
点击Finish,会自动帮我们创建表文件、链接文件。接下来我们需要删除工程中不需要的文件夹,先删除include文件,MCAL有自己的头文件,然后删除位于“Project_Settings”中的“Startup_Code”文件夹和“Linker_Files”文件夹下的内容。MCAL有自己的链接文件和启动文件。
在这里插入图片描述
我们在工程目录中新建MCAL文件夹和EBCfg文件夹,其中EBCfg中新建include和src文件夹
在这里插入图片描述
将上诉裁剪后的MCAL驱动库以下部分拷贝至我们的工程MCAL目录中
在这里插入图片描述
将EB编译生成的配置文件分别放到S32DS工程目录EBCfg的include和src中
在这里插入图片描述
右击工程点击File->Refresh刷新工程
在这里插入图片描述
右击工程选择Build Configurations Exprlorer选项
在这里插入图片描述
右击工程选择Properties选项,进行如下配置:
①添加MCAL头文件路径
在这里插入图片描述
②定义相关宏
在这里插入图片描述
③选择C语言风格为C99
在这里插入图片描述
④优化等级设置,直接复制-funsigned-char -fshort-enums -fomit-frame-pointer -fstack-usage -fdump-ipa-all
在这里插入图片描述
⑤设置编译警告,直接复制:
-Wstrict-prototypes -Wundef -Werror=implicit-function-declaration -Wsign-compare
在这里插入图片描述
⑥设置链接文件
在这里插入图片描述
⑦设置编译杂项,–entry=Reset_Handler -lc -lm -lgcc
在这里插入图片描述
⑧添加启动文件
在这里插入图片描述
至此我们工程就设置完成了,接下来编译工程如下:在这里插入图片描述
基础工程我们就搭建完成了,如果小伙伴觉得上诉搭建工程比较繁琐,可以直接使用资料包已经搭建好的基础工程,等学习完整个MCAL驱动开发后,在回来搭建会更加容易,下来我们开始驱动开发!

所有资料购买链接如下:本课件包含教学文档,驱动例程,以及各类安装包。
在这里插入图片描述
在这里插入图片描述

【闲鱼】https://m.tb.cn/h.5LD9uBP?tk=waHpWhhD5sF CZ3457 「我在闲鱼发布了【重磅推出,汽车电子必学AutoSAR开发之MCAL开发,基于】」
点击链接直接打开

  • 22
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值