This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 编译器/MSP430F5329:未定义WDT_Vector时的行为

Guru**** 2589280 points
Other Parts Discussed in Thread: MSP430F5329

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/631370/compiler-msp430f5329-behaviour-if-wdt_vector-is-not-defined

部件号:MSP430F5329

工具/软件:TI C/C++编译器

大家好,

我面临一个无法解释的重置,这可能是由于msp430f5329上的外设/配置区域提取(SYSRSTIV_PERf)引起的。

因此,我问自己是否可能发生这种情况,因为我没有定义pragma WDT_vector (我的应用程序中使用了看门狗)。

因此,如果出现监视计时器中断,中断向量中包含的值将为0xFFFF。

此配置是否会导致外设提取重置?  微控制器将如何处理此地址,因为它不是RESET_Vector (0xFFFE)之一?

当我有意使我的应用程序执行看门狗重置时,应用程序将使用SYSRSTIV_WDTTO中的值SYSRSTIV_WDTTO正确地重新启动。

在哪种情况下,此值将是我的配置的SYSRSTIV_PERF?

提前感谢您的帮助!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否配置了用于重置或中断的手表?

    SYSRSTIV_PERF可能是由0xFFFF中断向量或任何其他错误的函数指针引起的。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,M. Ladisch,感谢您的回复。
    这是我在看门狗寄存器中设置的配置:WDTCTL = WDTPW + WDTCNTCL + WDTSSEL_1 + WDTIS_3
    所以我用它来重置,它是由一个32k的外部石英提供的。 监视程序每秒清除一次。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如果没有WDTTMSEL,则永远不会调用中断处理程序。 所以问题肯定是在其他地方跳错了。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的,谢谢!
    我将以这种方式进行调查。