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

當(dāng)前位置:首頁 > 單片機 > 單片機
[導(dǎo)讀] 現(xiàn)象:程序燒錄板子后,單片機不啟動,卡死。注釋掉部分字節(jié)數(shù)組后,才能運行。分析: 這是IAR編譯的方法,導(dǎo)致看門狗溢出了。MSP430單片機一上電看門狗就已經(jīng)啟動,但是在進(jìn)入main()函數(shù)之前,軟件會

現(xiàn)象:程序燒錄板子后,單片機不啟動,卡死。注釋掉部分字節(jié)數(shù)組后,才能運行。

分析:

這是IAR編譯的方法,導(dǎo)致看門狗溢出了。MSP430單片機一上電看門狗就已經(jīng)啟動,但是在進(jìn)入main()函數(shù)之前,軟件會先初始化用到的一些數(shù)據(jù),比如數(shù)組。如果數(shù)定義的比較大,初始化時間比較長,那就有可能導(dǎo)致看門狗溢出了,單片機復(fù)位,然后重啟,再初始化,再溢出,再復(fù)位..程序永遠(yuǎn)也進(jìn)不去主函數(shù)。

解決方法:

使用低級初始化函數(shù):int __low_level_init(void)。該函數(shù)會自動把低級初始化函數(shù)放在程序的最開始處,在此可以關(guān)閉看門狗,等低級初始化函數(shù)執(zhí)行完之后,才會進(jìn)行數(shù)據(jù)初始化,最后再進(jìn)入main()函數(shù)。

void main()

{

}

int __low_level_init(void)
{
WDTCTL = WDTPW+WDTHOLD; // Stop WDT
/* Insert your low-level initializations here */

/*
* Return value:
*
* 1 - Perform data segment initialization.
* 0 - Skip data segment initialization.
*/

return 1;
}

也不用調(diào)用該函數(shù),編譯器自動將其放在最開始處。

當(dāng)然也可以把所有硬件初始化函數(shù)寫進(jìn)來,這樣在進(jìn)入main函數(shù)之前,把硬件都準(zhǔn)備好了,避免了其他bug產(chǎn)生。

__no_init unsigned char all_25665[] ={

//4K多字節(jié)

};


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

數(shù)組和指針在使用上還有一些區(qū)別。首先,數(shù)組名代表整個數(shù)組,可以用來初始化其他數(shù)組,但數(shù)組名不能被賦值或自增。其次,數(shù)組在函數(shù)調(diào)用時,傳遞的是數(shù)組的地址,而不是整個數(shù)組。指針可以被賦值或自增。指針還可以用來動態(tài)分配內(nèi)存空間...

關(guān)鍵字: 數(shù)組 指針

數(shù)據(jù)結(jié)構(gòu)是抽象的概念,沒有語言之別,就像是設(shè)計模式一樣,是一種抽象的思想,用任何語言的代碼都能構(gòu)建出來。而我們的python中的字符串,列表,字典,元祖,集合都是基本數(shù)據(jù)類型,他們是依附于語言存在的,不同的語言有不同的基...

關(guān)鍵字: 數(shù)組 堆棧

指針與數(shù)組是C語言中很重要的兩個概念,它們之間有著密切的關(guān)系,利用這種關(guān)系,可以增強處理數(shù)組的靈活性,加快運行速度,本文著重討論指針與數(shù)組之間的聯(lián)系及在編程中的應(yīng)用。

關(guān)鍵字: C語言 數(shù)組

在編寫單片機程序的時候,由于中斷服務(wù)程序?qū)懙牟缓?,?dǎo)致單片機程序總是跑飛,最后費了好長時間,花了很大功夫才找到問題原因。

關(guān)鍵字: 單片機 數(shù)組

有深入理解RTOS原理,或閱讀過RTOS源碼的同學(xué)應(yīng)該知道:RTOS實現(xiàn)任務(wù)間通信通常是由一系列指針進(jìn)行操作實現(xiàn)的。

關(guān)鍵字: RTOS 指針 數(shù)組

摘? 要:數(shù)組是程序設(shè)計課程中的重點內(nèi)容,如何使學(xué)生靈活熟練地掌握數(shù)組,案例內(nèi)容的設(shè)計是教學(xué)關(guān)鍵點之一。文中提出一種案例循序遞進(jìn)的教學(xué)方法,把學(xué)科競賽中超大數(shù)運算問題引入到數(shù)組實踐教學(xué)中。實踐結(jié)果證明此案例教學(xué)法有助于調(diào)...

關(guān)鍵字: 案例教學(xué)法 實踐教學(xué) 數(shù)組 超大數(shù)

穩(wěn)定復(fù)現(xiàn)問題才能正確的對問題進(jìn)行定位、解決以及驗證。

關(guān)鍵字: 嵌入式 寄存器 數(shù)組

數(shù)組名和指針是兩個往往很容易讓人們混淆的概念,很多人以為數(shù)組名就是一個指針,也有很多人知道數(shù)組名不同于指針但是僅知道數(shù)組名的值不能像指針一樣改變。

關(guān)鍵字: 編譯器 指針 數(shù)組

一、數(shù)組1.數(shù)組基礎(chǔ) 數(shù)組是相同類型數(shù)據(jù)的集合,它們都擁有同一個名稱。在大數(shù)量處理和字符串操作時,廣泛使用數(shù)組。數(shù)組對C語言來說起著相當(dāng)至關(guān)重要的作用。 定義一個數(shù)組,10個元素為i

關(guān)鍵字: C語言 數(shù)組

原文作者的解法不錯,我一開始沒想到。先貼原文,然后再把我的方法詳細(xì)說下。?題目:輸入一個正整數(shù)數(shù)組,將它們連接起來排成一個數(shù),輸出能排出的所有數(shù)字中最小的一個。例如輸入數(shù)組{32, ?321},則輸出

關(guān)鍵字: 數(shù)組
關(guān)閉