请选择 进入手机版 | 继续访问电脑版
查看: 165|回复: 1

用MCUXpresso调试其它工具链生成的项目

[复制链接]
  • TA的每日心情
    开心
    2021-9-17 11:00
  • 签到天数: 107 天

    [LV.6]常住居民II

    2102

    主题

    4003

    帖子

    0

    金豆

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    19650
    最后登录
    2021-10-20
    发表于 2021-9-23 09:47:47 | 显示全部楼层 |阅读模式
    用MCUXpresso调试其它工具链生成的项目


    相信大家对MCUXpresso IDE并不陌生,没少和这款IDE打交道来进行工程的构建、调试等,不过,小编在这里要问大家一个问题,你们平时是不是都是调试自带的SDK例程,没有单独调试过其他工具链所构建的应用镜像呢?反正小编,的确不曾这样干过,那么MCUXpresso到底行不行呢?请大家跟着小编来一窥究竟。


    TIPS:不熟悉MCUXpresso的朋友更应该试试。

    在正式开始之前,我们需要对我们的MCUXPresso进行一点小小的更新,需要安装一个小插件,依次点击Help-》Eclipse Marketplace,搜索Eclipse Embedded C/C++,点击安装。如下图所示:
    13.png
    那么为啥这个小插件能这么神奇呢?我们先来看段英文原版介绍:Eclipse Embedded CDT is an open source project that includes a family of Eclipse plug-ins and tools for multi-platform embedded cross (Arm and RISC-V) development, based on GNU toolchains. the Eclipse Embedded CDT plug-ins allow to create, build, debug and in general to manage Arm & RISC-V projects (executables and static/shared libraries, in both 32 and 64-bit versions) with the Eclipse framework (currently tested up to Eclipse 4.18, 2020-12). The plug-ins run on Windows, macOS and GNU/Linux.
    首先,我知道MCUXpresso是基于Eclipse CDT开发的(不用问我怎么知道的),从上面这段画我们就知道了这个小插件是专门用于Eclipse CDT平台,来调试多平台嵌入式设备的。
    可能有朋友会问了,真有这么神奇吗?让我们眼见为实,当安装完这个插件后,我们的MCUXpresso会发生一些小变化,尤其是在Debug Configuration选项框,先来看看原始的样子:
    14.png
    安装那个插件后,这是最新的样子,会多出一些选项:
    15.png
    现在就来敲黑板划重点了,为啥非要安装这个插件呢?我们的MCUXPresso本身就支持调试嵌入式代码啊,为啥还要多此一举呢?


    这里我们以使用SEGGER J-Link进行调试为例,结合具体操作步骤进行说明。


    首先是导入我们的镜像文件,这里以hello_world.axf镜像文件为例:


    1)点击File->Import,在弹出的页面选择C/C++ Executable, 之后点击Next:
    16.png
    2) 选择我们想要调试的镜像文件,这里的Select binary parser按照默认选择Elf Parser即可,点击Next:
    17.png
    3)工程配置,生成调试配置文件,这里要注意一定要选择GDB SEGGERJ-Link Debugging,细心的朋友肯定已经看出来了,这个就是我们安装完Eclipse Embedded CDT插件之后更新出来的新选项,也是调试成功的关键。最后点击Finish即可完成工程创建。
    18.png
    而如果这里按照以前的习惯选择了GDB SEGGER Interface Debugging的话,会弹出下面这个提示,导致调试失败。
    19.png
    这里小编先大胆的猜测一下,我们用上述方式所导入创建的工程并不是MCUXpresso默认的工程形式,而是默认的Eclipse工程,这样的话,就会出现配置不兼容问题,导致调试失败。而也正是因为这一点,小编在开头才让大家去安装我们的Eclipse Embedded CDT插件。

    通过以上步骤,我们的工程就创建完成了,距离调试还差最后一步,那就是我们的Debug Configuration,依次点击Run->Debug Configurations,弹出对话框如图所示,我们需要做的是填入我们的设备名称,并添加我们的调试工具路径,例如这里我们使用arm-none-eabi-gdb进行调试,这里就需要添加其可执行文件的完整路径:
    20.png
    配置好后,直接点击Debug即可开始调试我们的代码,开心ing:
    21.png
    经过小编的实地考察,最终为我们的MCUXpresso正名,通过安装扩展插件,它是可以单独进行镜像的调试的。


    不过,需要注意的是,我们要保证完整的源码树路径在我们的本机中,不然,可能看不到熟悉的C代码,只能在汇编中徜徉了。




    跟着日天混,天天饱九顿
    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    11 小时前
  • 签到天数: 1081 天

    [LV.10]以坛为家III

    20

    主题

    5770

    帖子

    3

    金豆

    金牌会员

    Rank: 6Rank: 6

    积分
    8210
    最后登录
    2021-10-20
    发表于 2021-9-23 16:19:41 | 显示全部楼层
    好好研究下
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2021-10-20 21:46 , Processed in 0.058121 second(s), 14 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表