freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

第十五課:51單片機(jī)的中斷系統(tǒng)-資料下載頁(yè)

2024-09-05 15:31本頁(yè)面

【導(dǎo)讀】仔細(xì)研什么叫中斷?引入計(jì)算機(jī)中斷的概念。處理斷電保存,解決快速CPU與慢速外設(shè)之間的矛盾等。通過(guò)中斷請(qǐng)求標(biāo)志位來(lái)通知CPU。研究一下生活中的中斷,對(duì)于我們學(xué)習(xí)單片機(jī)的中斷也很有好處。定時(shí)器中斷,一個(gè)串行口中斷。個(gè)優(yōu)先級(jí)的問(wèn)題,單片機(jī)中也是如此,也有優(yōu)先級(jí)的問(wèn)題。題不僅僅發(fā)生在兩個(gè)中斷同時(shí)產(chǎn)生的情況,也發(fā)生在一個(gè)中斷已產(chǎn)生,正開(kāi)門(mén)與人交談,又有電話(huà)響了情況。地址,以便處理完中斷后回到原來(lái)的地方繼續(xù)往下執(zhí)行程序。以上工作是由計(jì)算機(jī)自動(dòng)完成的,與編程者無(wú)關(guān)。T1:定時(shí)器/計(jì)數(shù)器l中斷,由T1計(jì)滿(mǎn)回零引起。允許位和全局允許位的控制,并具有高優(yōu)先級(jí)和低優(yōu)先級(jí)的選擇。在內(nèi)部的TCON中有四位是與外中斷有關(guān)的。開(kāi)關(guān),第二級(jí)為五個(gè)分開(kāi)關(guān),由IE控制。CPU同一時(shí)間只能響應(yīng)一個(gè)中斷請(qǐng)求。為此將5個(gè)中斷源分成高級(jí)、低級(jí)兩個(gè)級(jí)。PX1:外部中斷1優(yōu)先級(jí)控制位。

  

【正文】 令處理結(jié)束,再執(zhí)行一條指令才可以響應(yīng)中斷。 中斷響應(yīng)過(guò)程 CPU 每個(gè)機(jī)器周期都需要順序檢查每個(gè)中斷源,當(dāng)檢測(cè)到有中斷請(qǐng)求時(shí),能否響應(yīng),還要看下述情況是否存在: ( 1) CPU 正處理相同級(jí)別或更高級(jí)別的中斷; ( 2)正在執(zhí)行指令,還未到最后一個(gè)機(jī)器周期; ( 3)正在執(zhí)行的指令是 RETI 或訪(fǎng)問(wèn) IP、 IE 指令,則執(zhí)行完上述指令后,再執(zhí)行一條指令后,才會(huì)響應(yīng)新中斷。 響應(yīng)過(guò)程:( 假設(shè)已使某中斷請(qǐng)求標(biāo)志置 1) ( 1)先使相應(yīng)優(yōu)先級(jí)狀態(tài)觸發(fā)器置 1; ( 2)執(zhí)行一個(gè)硬件子程序的調(diào)用, 1)硬件清零相應(yīng)中斷請(qǐng)求標(biāo)志( TI、 RI 除外) 2)將當(dāng)前 PC 內(nèi)容壓入堆棧 ——保護(hù)斷點(diǎn); 3)將中斷服務(wù)子程序入口地址送 PC——轉(zhuǎn)移。 返回過(guò)程:( RETI 執(zhí)行后) ( 1)使相應(yīng)優(yōu)先級(jí)狀態(tài)觸發(fā)器清 0。 ( 2)從堆棧中彈出棧頂?shù)膬蓚€(gè)字節(jié)內(nèi)容送 PC——恢復(fù)斷點(diǎn)。 ( 3) CPU 接著中斷處繼續(xù)執(zhí)行原程序。 注意: 1)保護(hù)斷點(diǎn)與保護(hù)現(xiàn)場(chǎng)以及恢復(fù)斷點(diǎn)與恢復(fù)現(xiàn)場(chǎng)的區(qū)別。 2)外部中斷響應(yīng)時(shí)間在 3 ~ 8 個(gè)機(jī)器周期之間。 利用外部中斷實(shí)現(xiàn)單步操作。 CPU 響應(yīng)中斷時(shí),首先把當(dāng)前指令的下一條指令(就是中斷返回后將要執(zhí)行的指令)的地址送入堆棧,然后根據(jù)中斷標(biāo)記,將相應(yīng)的中斷入口地址送入 PC, PC 是程序指針, CPU 取指令就根據(jù) PC 中的值, PC中是什么值,就會(huì)到什么地方去取指令,所以程序就會(huì)轉(zhuǎn)到中斷入口處繼續(xù)執(zhí)行。 這些工作都是由硬件來(lái)完成的,不必我們?nèi)タ紤]。這里還有個(gè)問(wèn)題,大家是否注意到,每個(gè)中斷向量地址只間隔了 8 個(gè)單元,如0003- 000B,在如此少的空間中如何完成中斷程序呢?很簡(jiǎn)單,你在中斷處安排一個(gè) LJMP 指令,不就可以把中斷程序跳轉(zhuǎn)到任何地方了嗎? 一個(gè)完整的主程序看起來(lái)應(yīng)該是這樣的: ORG 0000H LJMP START ORG 0003H LJMP INT0 ;轉(zhuǎn)外中斷 0 ORG 000BH RETI ;沒(méi)有用定時(shí)器 0 中斷,在此放一條 RETI,萬(wàn)一 “不小心 “產(chǎn)生了中斷,也不會(huì)有太大的后果。 中斷程序完成后,一定要執(zhí)行一條 RETI 指令,執(zhí)行這條指令后,CPU 將會(huì)把堆棧中保存著的地址取出,送回 PC,那么程序就會(huì)從主程序的中斷處繼續(xù)往下執(zhí)行了。注意: CPU 所做的保護(hù)工作是很有限的,只保護(hù)了一個(gè)地址,而其它的所有東西都不保護(hù),所以如果你在主程序中用到了如 A、 PSW 等,在中斷程序中又要用它們,還要保證回到主程序后這里面的數(shù)據(jù)還是沒(méi)執(zhí)行中斷以前的數(shù)據(jù),就得自己保護(hù)起來(lái)。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1