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

當(dāng)前位置:首頁 > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]在單片機(jī)應(yīng)用開發(fā)中,代碼的使用效率問題、單片機(jī)抗干擾性和可靠性等問題仍困擾著 工程師。為幫助工程師解決單片機(jī)設(shè)計上的難題,《電子工程專輯》網(wǎng)站特邀Holtek香 港分公司工程部處長鄧宏杰先生擔(dān)任《單片機(jī)應(yīng)用

在單片機(jī)應(yīng)用開發(fā)中,代碼的使用效率問題、單片機(jī)抗干擾性和可靠性等問題仍困擾著
工程師。為幫助工程師解決單片機(jī)設(shè)計上的難題,《電子工程專輯》網(wǎng)站特邀Holtek香
港分公司工程部處長鄧宏杰先生擔(dān)任《單片機(jī)應(yīng)用編程技巧》專題討論的嘉賓,與廣大
設(shè)計工程師交流單片機(jī)設(shè)計開發(fā)經(jīng)驗?,F(xiàn)根據(jù)論壇中的討論歸納出單片機(jī)開發(fā)中應(yīng)掌握
的幾個基本技巧。

一、 如何提高C語言編程代碼的效率

鄧宏杰指出,用C語言進(jìn)行單片機(jī)程序設(shè)計是單片機(jī)開發(fā)與應(yīng)用的必然趨勢。他強(qiáng)調(diào):“
如果使用C編程時,要達(dá)到最高的效率,最好熟悉所使用的C編譯器。先試驗一下每條C語
言編譯以后對應(yīng)的匯編語言的語句行數(shù),這樣就可以很明確的知道效率。在今后編程的
時候,使用編譯效率最高的語句。”

他指出,各家的C編譯器都會有一定的差異,故編譯效率也會有所不同,優(yōu)秀的嵌入式系
統(tǒng)C編譯器代碼長度和執(zhí)行時間僅比以匯編語言編寫的同樣功能程度長5-20%。他說:“
對于復(fù)雜而開發(fā)時間緊的項目時,可以采用C語言,但前提是要求你對該MCU系統(tǒng)的C語言
C編譯器非常熟悉,特別要注意該C編譯系統(tǒng)所能支持的數(shù)據(jù)類型和算法。雖然C語言是
最普遍的一種高級語言,但由于不同的MCU廠家其C語言編譯系統(tǒng)是有所差別的,特別是
在一些特殊功能模塊的操作上。所以如果對這些特性不了解,那么調(diào)試起來問題就會很
多,反而導(dǎo)致執(zhí)行效率低于匯編語言。”

二、 如何減少程序中的bug?

對于如何減少程序的bug,鄧宏杰給出了一些建議,他指出系統(tǒng)運行中應(yīng)考慮的超范圍管
理參數(shù)有:
1.物理參數(shù)。這些參數(shù)主要是系統(tǒng)的輸入?yún)?shù),它包括激勵參數(shù)、采集處理中的運行參
數(shù)和處理結(jié)束的結(jié)果參數(shù)。合理設(shè)定這些邊界,將超出邊界的參數(shù)都視為非正常激勵或
非正?;貞?yīng)進(jìn)行出錯處理。
2.資源參數(shù)。這些參數(shù)主要是系統(tǒng)中的電路、器件、功能單元的資源,如記憶體容量、
存儲單元長度、堆疊深度。在程式設(shè)計中,對資源參數(shù)不允許超范圍使用。
3.應(yīng)用參數(shù)。這些應(yīng)用參數(shù)常表現(xiàn)為一些單片機(jī)、功能單元的應(yīng)用條件。如E2PROM的擦
寫次數(shù)與資料存儲時間等應(yīng)用參數(shù)界限。
4.過程參數(shù)。指系統(tǒng)運行中的有序變化的參數(shù)。

 


三、如何解決單片機(jī)的抗干擾性問題

鄧宏杰指出:防止干擾最有效的方法是去除干擾源、隔斷干擾路徑,但往往很難做到,
所以只能看單片機(jī)抗干擾能力夠不夠強(qiáng)了。單片機(jī)干擾最常見的現(xiàn)象就是復(fù)位;至于程
序跑飛,其實也可以用軟件陷阱和看門狗將程序拉回到復(fù)位狀態(tài);所以單片機(jī)軟件抗干
擾最重要的是處理好復(fù)位狀態(tài)。
一般單片機(jī)都會有一些標(biāo)志寄存器,可以用來判斷復(fù)位原因;另外你也可以自己在RAM中
埋一些標(biāo)志。在每次程序復(fù)位時,通過判斷這些標(biāo)志,可以判斷出不同的復(fù)位原因;還
可以根據(jù)不同的標(biāo)志直接跳到相應(yīng)的程序。這樣可以使程序運行有連續(xù)性,用戶在使用
時也不會察覺到程序被重新復(fù)位過。

四、 如何測試單片機(jī)系統(tǒng)的可靠性

有讀者希望了解用用什么方法來測試單片機(jī)系統(tǒng)的可靠性,鄧宏杰指出:“當(dāng)一個單片
機(jī)系統(tǒng)設(shè)計完成,對于不同的單片機(jī)系統(tǒng)產(chǎn)品會有不同的測試項目和方法,但是有一些
是必須測試的:
1.測試單片機(jī)軟件功能的完善性。這是針對所有單片機(jī)系統(tǒng)功能的測試,測試軟件是否
寫的正確完整。
2.上電、掉電測試。在使用中用戶必然會遇到上電和掉電的情況,可以進(jìn)行多次開關(guān)電
源,測試單片機(jī)系統(tǒng)的可靠性。
3.老化測試。測試長時間工作情況下,單片機(jī)系統(tǒng)的可靠性。必要的話可以放置在高溫
,高壓以及強(qiáng)電磁干擾的環(huán)境下測試。
4、ESD和EFT等測試??梢允褂酶鞣N干擾模擬器來測試單片機(jī)系統(tǒng)的可靠性。例如使用靜
電模擬器測試單片機(jī)系統(tǒng)的抗靜電ESD能力;使用突波雜訊模擬器進(jìn)行快速脈沖抗干擾E
FT測試等等。

鄧宏杰強(qiáng)調(diào):“還可以模擬人為使用中,可能發(fā)生的破壞情況。例如用人體或者衣服織
物故意摩擦單片機(jī)系統(tǒng)的接觸端口,由此測試抗靜電的能力。用大功率電鉆靠近單片機(jī)
系統(tǒng)工作,由此測試抗電磁干擾能力等。”
 

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

電磁兼容(EMC)是對電子產(chǎn)品在電磁場方面干擾大小(EMI)和抗干擾能力(EMS)的綜合評定,是評價產(chǎn)品質(zhì)量的重要指標(biāo)。。本文將詳細(xì)介紹EMC測試的流程及范圍,幫助讀者更好地理解和應(yīng)用這一技術(shù)。

關(guān)鍵字: EMC 單片機(jī)系統(tǒng)

隨著單片機(jī)系統(tǒng)的廣泛應(yīng)用和計算機(jī)網(wǎng)絡(luò)技術(shù)的普及,單片機(jī)的通信功能愈來愈顯得重要。單片機(jī)通信是指單片機(jī)與計算機(jī)或單片機(jī)與單片機(jī)之間的信息交換。

關(guān)鍵字: 單片機(jī)系統(tǒng) UART

MCS-51單片機(jī)的匯編語言程序由若干條匯編語言指令和偽指令構(gòu)成。指令存放在程序存儲器中,被單片機(jī)讀取并執(zhí)行,且執(zhí)行結(jié)果將影響單片機(jī)自身的狀態(tài)。

關(guān)鍵字: 匯編語言 偽指令

目前,結(jié)構(gòu)化是程序設(shè)計的基本要求,可以使程序結(jié)構(gòu)清晰、易于讀寫且方便調(diào)試,也能夠提高程序設(shè)計的效率。在結(jié)構(gòu)化程序設(shè)計中,程序的基本結(jié)構(gòu)有三種,即順序結(jié)構(gòu)、分支結(jié)構(gòu)及循環(huán)結(jié)構(gòu)。而子程序(也被稱為函數(shù)或過程)是一種提高程序模...

關(guān)鍵字: 匯編語言 順序程序設(shè)計

在單片機(jī)系統(tǒng)設(shè)計中,程序設(shè)計是重要的一環(huán),它的質(zhì)量直接影響到整個系統(tǒng)的功能。用匯編語言進(jìn)行程序設(shè)計的過程和用高級語言設(shè)計程序有相似之處,其設(shè)計過程大致可以分為以下幾個步驟:

關(guān)鍵字: 匯編語言 程序設(shè)計 單片機(jī)

匯編語言(Assembly Language)是任何一種用于電子計算機(jī)、微處理器、微控制器或其他可編程器件的低級語言,亦稱為符號語言。在匯編語言中,用助記符代替機(jī)器指令的操作碼,用地址符號或標(biāo)號代替指令或操作數(shù)的地址。在...

關(guān)鍵字: 匯編語言 指令 單片機(jī)

C語言是一種計算機(jī)程序設(shè)計語言,它既具有高級語言的特點,又具有匯編語言的特點。它由美國貝爾研究所的D.M.Ritchie于1972年推出,1978年后,C語言已先后被移植到大、中、小及微型機(jī)上,它可以作為工作系統(tǒng)設(shè)計語言...

關(guān)鍵字: C語言 匯編語言

背景寫這篇文章的初衷要從最近帶我一個朋友入坑學(xué)習(xí)單片機(jī)的經(jīng)歷開始講起;我要用梁靜茹給我的勇氣寫寫如何入坑單片機(jī);我的一個朋友以前是汽車電子技術(shù)專業(yè),畢業(yè)之后去做了和汽車相關(guān)的工作,修了一年車;其實干一行愛一行,三百六十行...

關(guān)鍵字: 單片機(jī)開發(fā)

▼點擊下方名片,關(guān)注公眾號▼歡迎關(guān)注【玩轉(zhuǎn)單片機(jī)與嵌入式】公眾號,回復(fù)關(guān)鍵字獲取更多免費資料。回復(fù)【STM32】,獲取STM32相關(guān)設(shè)計和視頻教程回復(fù)【PCB】,獲取PCB設(shè)計相關(guān)的資料回復(fù)【硬件知識】、【硬件設(shè)計】,獲...

關(guān)鍵字: 單片機(jī)開發(fā)

作者|?strongerHuang微信公眾號|?strongerHuangKeilMDK是否支持編譯器?有沒有辦法選擇其他編譯器?可能你使用其他GUN工具鏈進(jìn)行編譯時,會出現(xiàn)類似如下錯誤:---Error:can'tex...

關(guān)鍵字: GCC MDK C編譯器
關(guān)閉