XMC 1300:如何找到嚴重故障的原因

Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager

你好,
EVAL_IM_FLEX_ADAPTER_V1在DAVE™中為 XMC 1300 編寫程序,其中包括 SPI 和 EEPROM。
我的程序在啟用計時器中斷時突破了硬故障處理程序,所以我想知道為什麼。
有人可以給我一個逐步教程如何找到原因嗎?
我知道我應該看一下 CFSR 登記冊,但我不知道如何。

提前感謝,

路易斯

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/XMC/XMC-1300-How-to-get-the-reason-for-hard-fault/td-p/673779

1 解決方案
Translation_Bot
Community Manager
Community Manager
Community Manager

嗨 @louishoppe ,

XMC 1300 採用Arm® Cortex® m0,但沒有 CFSR(可設定故障狀態暫存器)或 HFSR(硬故障狀態暫存器)暫存器。

因此無法使用上述暫存器來調試Arm® Cortex® m0 上的硬故障。

正如您所提到的那樣,您的程序在啟用計時器中斷時會破壞成硬故障處理程序。

所以請按照以下步驟操作。

1)我們建議您開始調試,並在啟用計時器中斷功能的開始時放置中斷點。

2)然後運行您的程序,直到達到中斷點。

3)然後進入直到達導致硬故障的線。

4)您可以通過觀察 IPSR 寄存器來確認它(其中 0x3 的值表示硬故障)

以下指南在故障處理部分中為您提供了硬故障的潛在原因。

6EDL_SPI_LINK : https://developer.arm.com/documentation/dui0497/a/the-cortex-m0-processor/fault-handling?lang= en

希望這有所幫助,如果您還有更多疑問,請告訴我。

最好的問候
普拉德普

 

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/XMC/XMC-1300-How-to-get-the-reason-for-hard-fault/m-p/674772

在原始文章中檢視解決方案

0
2 回應
Translation_Bot
Community Manager
Community Manager
Community Manager

嗨 @louishoppe ,

XMC 1300 採用Arm® Cortex® m0,但沒有 CFSR(可設定故障狀態暫存器)或 HFSR(硬故障狀態暫存器)暫存器。

因此無法使用上述暫存器來調試Arm® Cortex® m0 上的硬故障。

正如您所提到的那樣,您的程序在啟用計時器中斷時會破壞成硬故障處理程序。

所以請按照以下步驟操作。

1)我們建議您開始調試,並在啟用計時器中斷功能的開始時放置中斷點。

2)然後運行您的程序,直到達到中斷點。

3)然後進入直到達導致硬故障的線。

4)您可以通過觀察 IPSR 寄存器來確認它(其中 0x3 的值表示硬故障)

以下指南在故障處理部分中為您提供了硬故障的潛在原因。

6EDL_SPI_LINK : https://developer.arm.com/documentation/dui0497/a/the-cortex-m0-processor/fault-handling?lang= en

希望這有所幫助,如果您還有更多疑問,請告訴我。

最好的問候
普拉德普

 

 

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/XMC/XMC-1300-How-to-get-the-reason-for-hard-fault/m-p/674772

0
Translation_Bot
Community Manager
Community Manager
Community Manager

感謝您的回答。 我想這就是為什麼我找不到關於 XMC 1300 的任何信息。 很好知道。
我已經使用中斷點處理代碼,並且在等待系統計時的中斷事件時總是崩潰。 刪除一些(隨機)代碼行時,它工作良好。 將TESTBOARD_150PC_OUT變成堆疊溢出,因為它無法趕上 ADC、LCD 顯示器、週邊等的所有週期性中斷。將 linker_script.ld 中的 stack_size 增加到 2048 解決了這個問題。

無論如何,謝謝您的幫助。

問候,路易

smartconx_target@Q!w2e3r4t5y6u7i8o9p0||/t5/XMC/XMC-1300-How-to-get-the-reason-for-hard-fault/m-p/674782

0