日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀]===============================================================================================================================1.中斷或主函數(shù)中有死循環(huán),現(xiàn)象是程序停在某處。2.堆棧溢出。現(xiàn)象是程序跑飛。

===============================================================================================================================

1.中斷或主函數(shù)中有死循環(huán),現(xiàn)象是程序停在某處。
2.堆棧溢出?,F(xiàn)象是程序跑飛。
解決辦法:
A.看中斷有沒有用 _EINT(),引起中斷嵌套.
B.Project--Options--General Options---Stack/Heap 將Stack size設(shè)置大一些。


===============================================================================================================================

中斷耗時太長,剛出中斷又進(jìn)去了.這時的現(xiàn)象是程序一直在中斷中執(zhí)行,回不到主函數(shù)。
檢查CPU的電源是不是穩(wěn)定,msp430在要保證程序正常運行,需保證Vcc大于1.8V。當(dāng)電壓低至0.8V時,程序仍有可能執(zhí)行。這時的現(xiàn)象是PC指針亂飛,有復(fù)位,死機,停在中斷,時鐘頻率發(fā)生變化等現(xiàn)象。

===============================================================================================================================

程序編譯沒問題,下載程序后上電不斷復(fù)位,該問題是由于WDT造成的(RAM的初始化時間大于WDT默認(rèn)的32MS時間,因此MSP復(fù)位)根本原因是初始化的時間過長,超過了看門狗的時間,初始化完成以后才能進(jìn)入main函數(shù),這時關(guān)狗已經(jīng)來不及了。

===============================================================================================================================

解決的辦法:
對你的數(shù)組用 __no init_定義,上電編譯器不產(chǎn)生特殊的附加函數(shù)去初始化RAM.

===============================================================================================================================

在Project--Options--Linker--Config中選擇 Override default programe,并將Entry lib 設(shè)置成 __program_start這時要修改Cstartup.S43(記得把它加入復(fù)制到工程而不是修改系統(tǒng)的),在第一條指令前加入關(guān)狗的指令,在main函數(shù)里再開(如果需要的話)

===============================================================================================================================

這個不太好總結(jié) 但好的編程習(xí)慣 可以減少這種問題

===============================================================================================================================

有時候要注意下,可能看起來是跑飛,但實際上只是運行在低功耗模式下沒有執(zhí)行程序。

另外有時候可能對堆棧有誤操作

===============================================================================================================================


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀
關(guān)閉