0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于MPC5744P的MACL和EB的开发编译和配置

嵌入式程序员 来源:嵌入式程序猿 作者:嵌入式程序猿 2022-03-16 16:48 次阅读

摘要

本篇笔记主要记录基于MPC5744P的MACL和EB的开发编译和配置。

准备工作

准备好一个在EB下配置好的工程,这里以例程为例子来说明

安装配置好编译器GreenHills或者其他编译器,这里以GreenHills为例。

导入例程

打开EB工具,导入例程,点file->import 按照路径导入就可以。我这里已经导入

603771c6-9197-11ec-952b-dac502259ad0.png

编译工程:

604f7154-9197-11ec-952b-dac502259ad0.png

生成的配置代码在EB中配置的文件下,这里是工程的output文件夹。

605fb50a-9197-11ec-952b-dac502259ad0.png

6073fad8-9197-11ec-952b-dac502259ad0.png

608d12e8-9197-11ec-952b-dac502259ad0.png

这是根据AUTOSAR 4.0.3 生成的代码。将这些代码与上层代码编译就可以使用了,这里就与例程的应用代码一起使用命令行编译。

先看一下例程文件夹

60a36bec-9197-11ec-952b-dac502259ad0.png

60b45bbe-9197-11ec-952b-dac502259ad0.png

工具链文件夹toolchains 包含

60cb9860-9197-11ec-952b-dac502259ad0.png

如果工程里没有build.bat, 我们需要新建一个,并且添加以下内容,用于将EB生成的代码拷贝到cfg目录下。

60e3b472-9197-11ec-952b-dac502259ad0.png

Build.bat将会调用launch.bat

60f5dbac-9197-11ec-952b-dac502259ad0.png

这里我们需要修改一下launch.bat

按照说明如果环境变量中没有这些工具的路径,需要修改EB和编译器路径,如果这些已经在环境变量中存在则不需要。

61154f82-9197-11ec-952b-dac502259ad0.png

打开命令行窗口,进到工程目录,执行build.bat,进行编译

6126acaa-9197-11ec-952b-dac502259ad0.png

如果一切配置正确,则编译完成后会生成elf文件,

613b6dac-9197-11ec-952b-dac502259ad0.png

这些中间生成的.o文件,最后的elf文件以及map文件都位于bin目录下

6171cd5c-9197-11ec-952b-dac502259ad0.png

可以修改配置,重新编译以适配自己的板子,至此整个流程已经介绍完毕。

审核编辑:何安

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 恩智浦
    +关注

    关注

    14

    文章

    5713

    浏览量

    100764

原文标题:手把手编译基于恩智浦MCAL的工程

文章出处:【微信号:InterruptISR,微信公众号:嵌入式程序员】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    EB配置adc的emux group为硬件触发需要注意什么呢?

    eb配置了emux 硬件触发,编译通过,但是采集不到是哪里没搞好?
    发表于 02-19 08:15

    T507开发板如何修改和保存内核配置

    本文档介绍如何在开发时修改和保存内核配置,适用于开发板TQT507。1.修改内核配置编译时系统会先检测当前内核源码目录下是否存在.confi
    的头像 发表于 12-08 11:26 217次阅读
    T507<b class='flag-5'>开发</b>板如何修改和保存内核<b class='flag-5'>配置</b>

    u-boot源码的编译配置方式

    u-boot使用了同Linux一样的编译配置方式,即使用kbuild系统来管理整体代码的配置编译,通过defconfig来定制各种不同厂商的芯片bootloader二进制程序。
    的头像 发表于 12-07 11:12 355次阅读

    瑞芯微RK3568|SDK开发之Kernel编译

    本文介绍了如何使用Kernel手动编译1.1版本,并提供了详细的编译命令和过程。编译过程包括进入Kernel目录、选择默认配置文件和编译镜像
    的头像 发表于 09-26 17:21 875次阅读
    瑞芯微RK3568|SDK<b class='flag-5'>开发</b>之Kernel<b class='flag-5'>编译</b>

    AUTOSAR软件开发环境之EB tresos Studio简介

    EB tresos是一款经典的AUTOSAR软件开发环境,依赖于一致的单一工具环境来通过汽车开放系统架构 AUTOSAR 开发电子控制单元 (ECU);它能够实现配置、验证和生成 EC
    的头像 发表于 09-19 10:06 3871次阅读
    AUTOSAR软件<b class='flag-5'>开发</b>环境之<b class='flag-5'>EB</b> tresos Studio简介

    STM32单片机程序编译及下载配置

    当拿到STM32单片机开发板的时候,程序的编译和下载将是我们踏入STM32单片机开发的第一步。本章详细介绍程序的编译和下载。包括:Keil5工程编译
    发表于 08-11 16:08 3272次阅读
    STM32单片机程序<b class='flag-5'>编译</b>及下载<b class='flag-5'>配置</b>

    求助,需要MPC5121开发方面的帮助

    我目前正在从事基于 MPC5121 平台的开发项目。但是,我一直无法在 NXP 官方网站上找到 MPC5121 所需的 BSP(板级支持包)和驱动程序代码。具体来说,我目前专注于为 MPC
    发表于 06-12 07:09

    MPC5744p如何优化程序执行时间?

    作为 MPC5744p 的新手,我遇到了一个关于如何优化程序执行时间的问题。 这是我的中断服务例程中代码行的图片。 ↓这张图片显示了执行我测试过的代码行之前的定时器值 ↓这张图片显示了执行我测试
    发表于 06-05 12:50

    如何为Sequence.by EB tresos配置SPI Dma快速传输?

    您好,我想为 Sequence.by EB tresos 配置 SPI Dma 快速传输。但在它的用户手册中它很伤心: ScatterGather 元素的数量将等于
    发表于 05-31 10:27

    求助,索取有关在带有MPC5744P MCU的RD33771 EVB中启用锁步功能的文档

    我目前正在从事电池管理系统 (BMS) 项目并使用 RD33771 EVB以及开发软件由 NXP 提供用于开发目的。该板配备MPC5744P微控制器,支持锁步功能。 如果您能协助我提供有
    发表于 05-24 08:27

    生成配置时出现EB Tresos OS.xdm错误怎么解决?

    的强制参数有哪些。是否有可用的文档(如果有,请提供链接,这对我很有帮助)。 2. 什么是默认验证规则? 使用的版本: EB 特雷索斯:28.2 请让我知道用于配置它的正确版本是什么。
    发表于 05-19 09:05

    EB tresos PIN配置不匹配怎么处理?

    你能帮我弄清楚这个问题吗: 当我引用 EB tresos 工具中此特定参数 (PortPin Pcr) 的端口配置参考手册所附的 excel 文件
    发表于 05-19 06:21

    如何在具有S32DS IDE和EB Tresos Studio MCAL配置的DEVKIT-MPC5748G上使用AUTOSAR?

    我们正在尝试在具有 S32DS IDE 和 EB Tresos Studio MCAL 配置的 DEVKIT-MPC5748G 上使用 AUTOSAR。 我们正在关注“MPC
    发表于 05-06 08:43

    有没有办法在MPC5744P中为每个应用程序配置一个内存区域而不必为每个区域设置进程ID ?

    你好 有没有办法在MPC5744P中为每个应用程序配置一个内存区域而不必为每个区域设置进程ID ?
    发表于 05-05 07:25

    MPC5744P上的CAN ID掩码问题求解

    我遇到了一个关于 CAN ID 过滤器的问题。以下是我的代码的一部分 我应该得到 CAN 消息的 0x7XX 和 0x6XX ID,但它只得到 0x700 和 0x600。而IRMQ是1。 然后我把IRMQ改成0,检查了一下,它只得到了ID为0x700和0x600的CAN,IRMQ是0。IRMQ 和RXIMR设置在冻结模式下,进入冻结模式的代码就像 while (!CAN_0.MCR.B.FRZACK) {} /* 等待冻结确认设置 */ ...... while (CAN_0.MCR.B.FRZACK &amp;amp; CAN_0.MCR.B.NOTRDY) {} /*等待清除 */ 另一个有趣的事情是,当我将 IRMQ 设置为 1 时,它会在收到 CAN 消息中断后更改。那是正常的吗? 关于这些问题有什么建议吗?谢谢!
    发表于 05-04 08:45