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

當前位置:首頁 > 芯聞號 > 技術(shù)解析
[導(dǎo)讀]為增進大家對微控制器的認識,本文將對MSP430微控制器標準軟件設(shè)計流程加以介紹。如果你對本文內(nèi)容具有興趣,不妨繼續(xù)往下閱讀哦。

微控制器在諸多行業(yè)中都所有使用,尤其是工科專業(yè)。對于微控制器,小編在往期文章中有所介紹,如微控制器工作原理、微控制器特點等。為增進大家對微控制器的認識,本文將對MSP430微控制器標準軟件設(shè)計流程加以介紹。如果你對本文內(nèi)容具有興趣,不妨繼續(xù)往下閱讀哦。

MSP430微控制器軟件設(shè)計的標準流程均可參考下圖。該標準的軟件流程可將系統(tǒng)整體功耗降至最低。

上圖所描述的軟件流程代碼是基于中斷程序的,平時MCU處于睡眠狀態(tài),直到有中斷產(chǎn)生時MCU被喚醒,最大程度降低系統(tǒng)功耗,優(yōu)化電源效率。

理解上圖所示的中斷服務(wù)子程序(1SRs)流程,能更好的掌握MSP430微控制器處理低功耗的模式。MSP430微控制器的低功耗模式由狀態(tài)寄存器SR的控制位控制,在執(zhí)行中斷服務(wù)子程序之前,狀態(tài)寄存器SR的低功耗模式控制位可以被優(yōu)先壓棧。當中斷服務(wù)子程序返回時,主程序調(diào)用中斷之前的低功耗模式控制位,從而進入中斷之前的低功耗模式狀態(tài)。當然,如果我們在ISR中斷服務(wù)子程序返回前修改了保存在SR中的低功耗模式控制位,那么ISR中斷子程序執(zhí)行完之后,主程序流程可以轉(zhuǎn)到另一個不同的低功耗工作模式。

中斷喚醒機制作為MSP430微控制器內(nèi)部低功耗模式的一部分,允許系統(tǒng)快速喚醒,響應(yīng)中斷事件。例如,當一中斷事件發(fā)生之前MSP430微控制器處于低功耗LPM0模式,MCU在執(zhí)行中斷服務(wù)子程序之前首先向堆棧保存SR中的低功耗模式控制位值然后清除SR值,清除SR值使MCU從LPMO模式進入到執(zhí)行中斷活動模式狀態(tài)。在ISR中斷服務(wù)子程序中,軟件設(shè)計者可以寫一條語句清除SR中的低功耗模式控制位,當中斷程序完成后,MCU從堆棧中重新裝載調(diào)用各自寄存器的狀態(tài)值。如果沒有修改SR的低功耗模式控制位,退出中斷后系統(tǒng)仍然返回進入LPM0低功耗模式,若此時已修改SR控制位,當從ISR中斷程序退出后,系統(tǒng)會工作于活動模式時,并且按進入中斷之前的PC指針所指的地址繼續(xù)執(zhí)行程序。

由于可以在fSR中斷服務(wù)子程序中改變低功耗模式,所以設(shè)計者可以選擇在ISR程序中執(zhí)行全部任務(wù),也可以選擇在ISR喚醒MCU后在主程序中處理任務(wù)。

在ISR程序中處理時確保能立即響應(yīng)中斷事件,中斷事件發(fā)生時即能立刻處理中斷任務(wù),但是,在處理一個中斷事件時,其它中斷將不能被載入,直到該中斷任務(wù)完成,而這樣長時間的中斷將會降低系統(tǒng)的響應(yīng)靈敏,所以設(shè)計者須根據(jù)不同系統(tǒng)要求選擇最佳處理方式。

上圖所示的流程圖中主程序需處理兩個中斷事件,這兩個中斷事件所要處理的任務(wù)是在主循環(huán)中處理的。ISRs執(zhí)行兩個不同的事件任務(wù)。第一個中斷,ISRs改變了保存在堆棧中SR的值,可以使系統(tǒng)退出中斷后進入活動工作模式,中斷事件是在主程序中被執(zhí)行,中斷事件可以是一任意應(yīng)用事件,例如定時器、按鍵處理、AD轉(zhuǎn)換等。第二個中斷,在ISR中斷服務(wù)子程序設(shè)置一標志位,在主程序檢測該標志位來判斷是否執(zhí)行相應(yīng)的任務(wù)。如果需處理的中斷事件能在較短的時間內(nèi)迅速完成,這樣就能夠在中斷服務(wù)子程序中直接執(zhí)行,無需進入主程序處理,此時ISR中斷服務(wù)子程序沒必要設(shè)置標志位或改變SR低功耗控制位退出睡眠模式,退出ISR中斷服務(wù)子程序后MCU仍然返回到睡眠模式。該流程可以根據(jù)系統(tǒng)應(yīng)用的復(fù)雜性來定,例如,只有一個中斷事一件可喚醒主程序時,則無需設(shè)置系統(tǒng)標志位,此時,通過中斷喚醒主程序,然后主程序進行相應(yīng)的任務(wù)操作,最后MCU重新進入睡眠模式。

上圖中所提到的睡眠模式LPMn是系統(tǒng)所要用到的睡眠低功耗模式,每種應(yīng)用所涉及的模式可能會有所不同,實際的睡眠模式由整個系統(tǒng)所用到的模塊(如定時器、AD、串口等)決定,取決于系統(tǒng)模塊在相應(yīng)的睡眠模式下可否被中斷喚醒。例如由MCU的定時器負責喚醒CPU,且該定時器時鐘為ACLK時,則ACLK必須保持活動模式,則MCU可以工作在LPM3模式;但是如果定時器時鐘為DCO時,則MCU必須工作在LPMO。

以上便是此次小編帶來的“微控制器”相關(guān)內(nèi)容,通過本文,希望大家對MSP430微控制器標準軟件設(shè)計流程具備一定的認知。如果你喜歡本文,不妨持續(xù)關(guān)注我們網(wǎng)站哦,小編將于后期帶來更多精彩內(nèi)容。最后,十分感謝大家的閱讀,have a nice day!

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