寫Config週邊時最常遇到的是,週邊不動,不然就是HardFault。
若是發展中的程式,還知道現在正在加入的是那一個功能。
但拿到的是舊程式,出現HardFault就糟了,因為從那裏產生的都不知。
其實沒有如此糟,只要去看堆疊內容就行了。
SP+24的位置,就是產生HardFault的位址,一般會是標準函式庫。
就可以查出是那一個呼叫弄錯了。
另外SP+20則是Link Register的內容,可以進一步告知前一個呼叫函式位置。
往前追就可以看到是那一個應用程式弄錯了。
不過大概要會組合語言的人才會知道怎麼回事,原理不多說了。
..............太厲害了!!
回覆刪除