新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > IAR调试EFM32单片机时的一些技巧

IAR调试EFM32单片机时的一些技巧

作者:时间:2018-12-29来源:网络收藏

  4)关于Call Stack(在工程中View>Call Stack)

本文引用地址:http://www.eepw.com.cn/article/201812/396197.htm

  如下图:

  


  集成环境产生大量的支持信息,这允许调试过程中在没有运行损失的情况下显示完整的函数调用链。这通常会帮助我们确定目前函数的上下文,跟踪变量和参数中的不正确值的来源从而定位出现的问题。

  5)EFM_ASSERT宏的合理应用

  的CMSIS库中有一个宏被大量的应用,它的名字叫EFM_ASSERT。这个宏应用了2个参数,一个是__FILE__,一个是__LINE__,这在中分别表示文件名和文件内的行号。这2个参数可以直接告诉我们出现问题的文件和所在的行。

  以下通过一个具体的代码来看看以上提到的几点的应用。

  


  为了演示gpioSetup内部的问题,我们可以把程序调试的起点直接设置到gpioSetup,如下图:

  


  然后全速运行程序,发现程序停在了assertEFM函数内部,通过View>Locals,如下图:

  


  可以看到问题出在em_gpio.c的270行,该行正是GPIO_PinModeSet函数的第一个语句。

  我们再通过View>Call Stack,如下图:

  


  可以快速的定位到问题出在以下位置,如下图:

  


  作为主推低功耗的系列单片机,想要最终实现低功耗,除了硬件本身支持之外,合理的代码也是很重要的。通过不断的调试,我们可以更加准确的把握这一系列的单片机,也可以掌握很多的调试技巧,希望以后有更多的技巧分享给大家。


上一页 1 2 下一页

关键词: IAR EFM32

评论


相关推荐

技术专区

关闭