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

當前位置:首頁 > 單片機 > 單片機
[導讀]在進入中斷服務子程序期間,只有返回地址PC的數(shù)值被自動壓入堆棧,其他的一些寄存器的內容就得按照程序的需要由我們自己想辦法了。PIC單片機匯編語言沒有象51系列單片機那樣的PUSH POP指令,所以我們要用一段程序來實

在進入中斷服務子程序期間,只有返回地址PC的數(shù)值被自動壓入堆棧,其他的一些寄存器的內容就得按照程序的需要由我們自己想辦法了。PIC單片機匯編語言沒有象51系列單片機那樣的PUSH POP指令,所以我們要用一段程序來實現(xiàn)類似的功能。

因為是用一段程序來實現(xiàn)現(xiàn)場的保護,這樣就可能影響到W和STATUS寄存器,所以我們要在保護現(xiàn)場的時候先把這兩個寄存器給保護了。這些現(xiàn)場保護不是將數(shù)據保存在芯片的堆棧中。而是將其放到RAM中進行保存。個人認為將這些數(shù)據保存在與體選址無關的RAM中,也就是說PIC一般有四個體,無論目前在哪個體里改變其RAM的數(shù)據,都可以映射到其他體中,本人認為這樣在程序上比較方便,避免了一些弊端和麻煩。我也是剛接觸PIC,如果有說的不對的地方,還請大家提出,我們共同探討。先謝了:)

下面引用一段廠家提供的中斷現(xiàn)場保護的樣例程序:將W,STATUS,和PCLATH寄存器內的內容保存到臨時備分寄存器中

(1) MOVWF W_TEMP 復制W到它的臨時寄存器W_TEMP中

(2) SWAPF STATUS,W 將STATUS中的高低四位交換后放入W

(3) CLRF STATUS 不管目前在哪個體,都設置成體0為當前體

(4) MOVWF STATUS_TEMP 保存STATUS到體0上的臨時寄存器

(5) MOVF PCLATH,W 把寄存器PCLATH中的內容復制到W中

(6) MOVWF PCLATH_TEMP 保存PCLATH到臨時寄存器里

(7) CLRF PCLATH 不管當前處在哪頁,都把PCLATH設置成0

............(中斷服務子程序的核心部分)

(8) MOVF PCLATH_TEMP,W 經過W轉移

(9) MOVWF PCLATH 恢復PCLATH

(10)SWAPF STATUS_TEMP,W 交換后放回W

(11)MOVWF STATUS

(12)SWAPF W_TEMP,1

(13)SWAPF W_TEMP,0

我們來看前面的程序 有一點需要聲明的是,PIC的一部分匯編語句在運行的過程中會改變STATUS寄存器的數(shù)據,所以在保護好STATUS之前禁止使用能夠改變STATUS的語句

語句1用來保護W寄存器,因為MOVWF語句不改變STATUS所以可以直接使用PIC數(shù)據的傳遞基本都是通過W來轉的,所以保護一上來先將W中的數(shù)據保護到臨時備分中,在中斷返回的時候再將其恢復.

語句2:用來保護STATUS,由于MOVF指令改變了STATUS所以在這里不能直接使用

MOVF STATUS,W語句,而使用了SWAPF 指令,在這里我們沒有應用他的高低半字節(jié)交換的功能,而是應用了這條語句的執(zhí)行對STATUS寄存器沒有影響,所以在中斷恢復的時候我們仍然要使用SWAPF將高低半字節(jié)顛倒過來:)

語句3 和4:這個時候我們已經將STATUS的內容低位與高位顛倒后放入W寄存器中,所以這個時候我們就可以放心的改變STATUS的內容了 ,此兩句是將STATUS的內容放到臨時寄存器中。另外還有一點就是在恢復STATUS之前我們就不介意使用改變STATUS內容的指令了,一但恢復后,仍然不能使用改變STATUS的指令,直到中斷返回到主程序中.

語句5、6和7 是對PCLATH的保護,其實對于一些小的程序這個是不用保護的,但怎么說呢,為了程序的規(guī)范性,以及防止因為某些因素而讓PCLATH變成一個不可預料的數(shù)據,我們還是在這里對它進行一下保護吧。因為我們的中斷服務程序在體0中,所以保護完后就將PCLATH清0

語句8、9是恢復PCLATH的指令在這里也就不多說了

語句10、11,我們前面已經說了在中斷返回的時候恢復STATUS的數(shù)值需要將高低位顛倒過來,然后放入STATUS寄存器中,這兩個語句都不改變狀態(tài)位,所以可以放心使用

語句12、13 由于此前已經恢復了STATUS所以這個時候我們在恢復W的時候要非常注意不要影響STATUS,所以在這里使用了兩個SWAPF語句,字節(jié)交換上負負為正,還沒有影響到狀態(tài)位,呵呵。

今天就說到這里了。歡迎朋友們給提出一些看法和意見。

擴展閱讀:從定時器開始說中斷

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

北京2025年8月15日 /美通社/ -- 今日,以"破局者 ? 智行合璧"為主題的2025戴爾科技峰會在北京中國大飯店盛大啟幕。作為戴爾科技大中華區(qū)極具戰(zhàn)略意義的年度旗艦活動,本屆峰會吸引逾千名行業(yè)...

關鍵字: 戴爾 全棧 PC ALIENWARE

北京2025年7月31日 /美通社/ -- 近日,權威咨詢機構德本咨詢重磅發(fā)布"2025中國信創(chuàng)PC市場影響力品牌TOP 10"榜單。軟通計算機憑借其迅猛的發(fā)展勢頭、領先的技術整合能力及顯著的市場表現(xiàn)...

關鍵字: 計算機 TOP PC PC市場

控制寄存器(Control Register)是中央處理器(CPU)中用于管理系統(tǒng)級操作的特殊寄存器,它為操作系統(tǒng)和硬件提供對處理器行為的精細控制。本文從計算機體系結構角度系統(tǒng)闡述控制寄存器的設計原理、功能分類、操作機制...

關鍵字: 寄存器 處理器

在十年間,3D深度感知市場規(guī)模將實現(xiàn)超過2倍的增長,而我們正處于這場變革之中。據Yole數(shù)據,2020年這3D深度感知市場規(guī)模為67億美金,2024年為95億美金,而2030年將達到176億美金。整個3D深感市場出現(xiàn)了爆...

關鍵字: AI PC HPC 人體檢測 ToF VL53L8CP

6月23日消息,根據IDC最新發(fā)布的《中國PC顯示器市場季度跟蹤報告》,2025年一季度中國PC 顯示器市場總出貨量707萬臺,同比增長14.0%。

關鍵字: PC DDR4 顯示器

德國漢堡 2025年6月10日 /美通社/ --?作為專業(yè)的服務器設計與制造商,神達控股股份有限公司(股票代號:3706)旗下子公司神雲科技股份有限公司(MiTAC Computing Technology Corpo...

關鍵字: MIT 高性能計算 PC HP

6月5日消息,據TrendForce集邦咨詢最新報道,受多重因素影響,2025年第二季度PC DDR4模組合約價格預計將上漲13%-18%,漲幅較此前預計的3%-8%明顯擴大,而Server DDR4模組價格預計季增18...

關鍵字: PC DDR4

在嵌入式系統(tǒng)開發(fā)中,硬件抽象層(Hardware Abstraction Layer,HAL)起著至關重要的作用。它為上層軟件提供了統(tǒng)一的硬件訪問接口,隱藏了底層硬件的細節(jié),使得軟件具有更好的可移植性和可維護性。C++作...

關鍵字: 嵌入式C++ HAL 寄存器 封裝

采用51單片機最小開發(fā)板,由8位自制獨立按鍵控制。單片機芯片為STC89C52RC,晶振為@12.000 mhz。8X8LED點陣屏模塊由MAX7219驅動,MAX7219包含一個自動掃描電路。你只需要把要顯示的數(shù)據發(fā)送...

關鍵字: 51單片機 MAX7219 寄存器

電源管理集成電路(PMIC)有益于簡化最終應用并縮小其尺寸,也因此備受青睞。然而,當默認啟動時序和輸出電壓與應用要求不符時,就需要定制上電設置。大多數(shù)情況下,電路沒有可以存儲這些設置的非易失性存儲器(NVM)。對此,低功...

關鍵字: 電源管理 集成電路 寄存器
關閉