當前位置:首頁 > 單片機 > 單片機
[導讀]   8051的CPU在每個機器周期期間,順序采樣每個中斷源,CPU在下一個機器周期按優(yōu)先級順序查詢中斷標志,如查詢到某個中斷標志為1,將在下一個機器周期期間按優(yōu)先級來進行中斷處理。在下列任一種情況存

  8051的CPU在每個機器周期期間,順序采樣每個中斷源,CPU在下一個機器周期按優(yōu)先級順序查詢中斷標志,如查詢到某個中斷標志為1,將在下一個機器周期期間按優(yōu)先級來進行中斷處理。在下列任一種情況存在時,中斷申請將被封鎖。

  1、CPU正在執(zhí)一個同級或高級的中斷服務程序2、當前機器周期不是當前指令周期的最后一個機器周期,即要保證把當前指令執(zhí)行完。

  CPU響應中斷, 由硬件自動將相應的中斷矢量地址裝入程序程序計數(shù)器PC,轉入該中斷服務程序進行處理。

  對于有些中斷源,CPU在響應中斷后會自動清除中斷標志,如定時器溢出標志TF0,TF1,以及部中斷標志IE0,IE1。

  而有些中斷標志,不會自動清除,只能由用戶用戶軟件清除,如串行口接收發(fā)送中斷標志RI,T1。CPU執(zhí)行中斷服務程序之前,自動將程序計數(shù)器PC內(nèi)容壓入堆棧保護,然后將對應的中斷矢量裝入程序計數(shù)器PC,使程序轉向該中斷矢量地址單元中,以執(zhí)行中斷服務程序,中斷服務程序從矢量地址開始執(zhí)行,一直到返回指令“RETI”為止?!癛ETI”指令的操作,一方面告訴中斷系統(tǒng)中斷服務程序以執(zhí)行完畢,另一方面把原來壓入堆棧保護的斷電地址從棧頂彈出,裝入程序計數(shù)器PC,使程序返回被中斷的程序斷點處,以便繼續(xù)執(zhí)行。

  外部中斷響應時間外部中斷INT0和INT1的電平在每個機器周期,經(jīng)反向后鎖存到IE0和IE1的標志位,CPU在下一個機器周期才會查詢到新置入的IE0和IE1,這時如果滿足響應條件,CPU響應中斷時,要用二個機器周期執(zhí)行一條硬件長調(diào)用指令“LCALL”。所以,從產(chǎn)生外部中斷到開始執(zhí)行中斷程序至少需要三個完整的機器周期。如果在中斷申請時,CPU正在長指令,如乘法和除法指令等四周期指令,則額外等待時間增加三個周期;若正在執(zhí)行“RETI”指令或訪問IE,IP的指令,則額外等待時間又增加兩個周期。綜上估計,在單一中斷系統(tǒng)里,外部中斷響應時間約在3-8個機器周期之間。

  下面我們?nèi)砸源蛴C為例來說明外中斷源的使用方法 。硬件連接和查詢方式基本一致,只是因為程序中對外中斷進行了初始化,所以,8051的端口引腳P3.2在這個例子中不再是一個普通的端口而是外中斷的輸入,另一個,打印機多了一個選通信號STB。對打印機來說,這個信號是個輸入信號,其意義為:當打印機檢測到該引腳上出現(xiàn)一個負跳變,即由高電平時,表示單片機以把打印數(shù)據(jù)送上數(shù)據(jù)總線,則打印機將BUSY引腳設置為1,告訴單片機打印機正在打印,然后,開始打印。

  本例中,單片機并行接口P3的一位T0輸出作為該信號的輸入,打印緩沖區(qū)仍就在內(nèi)部數(shù)據(jù)存儲器的10H-11H單元,共三字節(jié)。下面我們來看看程序:

  第一條指令ORG 0000H是一條偽指令,意義是:告訴編譯系統(tǒng)緊跟其后的那條指令從程序存儲器的0000H單元開始存放。

  第二條指令LJMP MAIN的意義是:跳轉到標號為MAIN的地址去運行。

  第三條指令ORG 0003H是一條偽指令,意義是:告訴編譯系統(tǒng)緊跟其后的那條指令從程序存儲器的0003H單元開始存放。

  指令LJMP SUBO的意義是:跳轉到標號為SUBO的地址去運行。

  指令ORG 0050H的意義是:告訴編譯系統(tǒng)緊跟其后的那條指令從程序存儲器的0050H單元開始存放。

  MAIN是一個標號。

  指令SETB EA意義為:對位地址EA置1,EA是8051單片機中斷系統(tǒng)是總允許位,所以,該指令的物理意義是開放8051的中斷系統(tǒng)。

  指令CLR EX0意義為:對EX0位置1,其物理意義為允許外中斷0中斷。

  指令CLR IT0意義為:對IT0位清1,其物理意義是設置外中斷0的觸發(fā)方式為邊沿觸發(fā)。

  指令MOV R0,#11H的意義是:將數(shù)據(jù)11H送入工作寄存器R0中,物理意義為設定在中斷服務程序中發(fā)送的一個數(shù)據(jù)的地址,即打印機緩沖區(qū)的第二字節(jié) 。因為必須在主程序上發(fā)送第一個字節(jié)之后,打印機才能發(fā)出第一次中斷請求,如果單片機將所有數(shù)據(jù)都放在中斷服務程序中發(fā)送,則會引起單片機和打印機相互等待,即打印機等待單片機將數(shù)據(jù)送上數(shù)據(jù)總線,并通過T0引腳發(fā)送一個負脈沖選通信號到打印機的STB引腳,打印機要在檢測到該引腳上的負脈沖前沿后,才開始打印 。另一方面,單片機卻在等待打印機打印完一個數(shù)據(jù)后,提出中斷申請,才能在中斷服務程序中發(fā)送第一個數(shù)據(jù)。

  指令MOV P2,10H的意義是:將內(nèi)部數(shù)據(jù)存儲器10H單元送上并行接口P2,其物理意義是發(fā)送第一打印數(shù)據(jù)。

  指令CLR P3.4的意義為:對端口P3.4,即T0引腳清0,其物理意義向打印機發(fā)送選通信號的前沿,打印機檢測到選通信號的前沿后,置引腳BUSY的狀態(tài)為高電平,然后開始打印。

  指令SETB P3.4的意義為:對端口P3.4置1,其其物理意義向打印機發(fā)送選通信號的后沿。

  指令LJMP §的意義是:跳轉到本條指令,即主程序到此就進入死循環(huán)。請大家注意只要用戶不關機的話,CPU就會不停的運行下去,不會因為用戶程序到此結束,如果沒有這條死循環(huán)指令的話,CPU就會從程序存儲器的下一個單元取出一個數(shù),把它當下一個指令的操作碼處理,這樣,程序就會出錯,甚至死機 。所以,如果一個系統(tǒng)中本身沒有死循環(huán)的話,一定要在主程序的最后認為加上一條死循環(huán)指令。

  SUBO是一個標號,表示外中斷0的真正起始地址。

  指令MOV P2,@R0的意義是,把R0的內(nèi)容作為內(nèi)部數(shù)據(jù)存儲器的地址,再把該地址的數(shù)據(jù)去出來送到端口P2,起物理意義是發(fā)送第二個打印數(shù)據(jù)。

  指令CLR P3.4的意義是,對端口P3.4清0,物理意義是發(fā)送STB選通信號的前沿,打印機檢測到該信號,置引腳BUSY為高電平,然后開始打印。

  指令SETB P3.4的意義是 ,對端口P3.4置1,物理意義是發(fā)送STB選通信號的后沿。

  指令INC R0的意義是:對R0的內(nèi)容加1,物理意義是改變打印緩沖區(qū)中下一個待打數(shù)據(jù)的指針,這條指令運行后,R0中的內(nèi)容為12H,即下一個待打印數(shù)據(jù)在12H單元中。

  指令CJNE RO,#13H LAB1的意義是:判斷R0的內(nèi)容是否為13H,如是則繼續(xù)往下運行,否則跳轉到標號為LAB1的地方,物理意義為如果待打印數(shù)據(jù)的指針向13H,即表示所有的數(shù)據(jù)都打印完畢,則運行關中斷指令,否則表示數(shù)據(jù)末打印完,則跳過關中斷指令。

  LAB1是一個標號。

  指令RETI的意義是:中斷返回,物理意義是清除外中斷0的中斷請求標志,并返回主程剛才被中斷的地方,這是本程序經(jīng)編譯后的機器碼指令,用仿真器把它固化到程序存儲器后,就可以運行了。


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

9月2日消息,不造車的華為或將催生出更大的獨角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉