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

正文內(nèi)容

中斷控制、定時(shí)計(jì)數(shù)器與串行口【更齊全-文庫(kù)吧資料

2025-01-10 04:16本頁(yè)面
  

【正文】 定時(shí)器初值 TH0為 0D8H, TL0為 0F0H。 顯然,當(dāng)晶振頻率為 12?MHz,定時(shí)器初值為 0時(shí),方式 1最長(zhǎng)定時(shí)時(shí)間為: ? ? 5 7 3 6M H z12 1298002t 16     ?????? ? μs6 5 5 3 6M H z 12 12 02t 16m a x ?。剑???67 在定時(shí)時(shí)間 t確定的情況下,定時(shí)器初值 M可表示為: (“12時(shí)鐘 /機(jī)器周期”模式 ) (43) (“6時(shí)鐘 /機(jī)器周期”模式 ) (44) 在上式中,如果 fOSC單位取 MHz,則定時(shí)時(shí)間 t的單位是 μs。如果定時(shí)器 T0溢出中斷開(kāi)關(guān) ET0為 1(即允許 T0中斷 ),將向 CPU發(fā)出定時(shí)器溢出中斷請(qǐng)求(CPU能否響應(yīng),取決于中斷響應(yīng)條件 )。 64 圖 48 定時(shí) /計(jì)數(shù)器 T0(T1)工作于方式 1的結(jié)構(gòu) 65 當(dāng) 位為 0時(shí),定時(shí) /計(jì)數(shù)器 T0處于定時(shí)方式,計(jì)數(shù)脈沖是系統(tǒng)時(shí)鐘信號(hào)的 n分頻,即每隔 n/fOSC秒, TL0加 1。 1) 方式 1(16位定時(shí) /計(jì)數(shù)器 ) 當(dāng) M M0初始化為 01時(shí),定時(shí) /計(jì)數(shù)器工作于方式 1,即計(jì)數(shù)長(zhǎng)度為 16位。 62 圖 47 TCON寄存器中與定時(shí) /計(jì)數(shù)器控制有關(guān)的位 63 2. 定時(shí) /計(jì)數(shù)器 T0、 T1的工作方式 定時(shí) /計(jì)數(shù)器 T0有四種工作方式 (即方式 0、方式 方式 2和方式 3),主要用于定時(shí)和計(jì)數(shù);定時(shí) /計(jì)數(shù)器 T1有三種工作方式 (即方式 0、方式 1和方式 2),除了定時(shí)、計(jì)數(shù)外,T1還可作為串行異步通信口的波特率發(fā)生器。 T/CT/CT/CT/C61 2) 控制字寄存器 TCON 定時(shí) /計(jì)數(shù)器啟動(dòng)控制位以及定時(shí) /計(jì)數(shù)器溢出中斷標(biāo)志存放在特殊功能寄存器 TCON的高 4位,其各位含義如圖 47所示。當(dāng) 位為 0時(shí),計(jì)數(shù)脈沖來(lái)自 CPU內(nèi),計(jì)數(shù)脈沖頻率是系統(tǒng)時(shí)鐘信號(hào)的 12分頻 (對(duì)于“ 6時(shí)鐘 /機(jī)器周期”模式來(lái)說(shuō),計(jì)數(shù)脈沖是系統(tǒng)時(shí)鐘信號(hào)的 6分頻 ),即處于定時(shí)方式;當(dāng) 位為 1時(shí),計(jì)數(shù)脈沖來(lái)自 (指 T0)或 (指 T1)引腳,即處于計(jì)數(shù)方式。 由于裝入初值容易出錯(cuò),故 不推薦使用方式 0 01 方式 1( 常用 ) 16 位定時(shí) / 計(jì)數(shù)器 10 方式 2( 常用 ) 自動(dòng)重裝初值的 8 位定時(shí) / 計(jì)數(shù)器 11 方式 3 定時(shí) / 計(jì)數(shù)器 T0 可以工作在這一方式,相當(dāng)于兩個(gè)獨(dú)立的 8 位定時(shí) / 計(jì)數(shù)器。 57 圖 46 TMOD寄存器各位含義 58 由圖 46可見(jiàn), TMOD低 4位 (b3~ b0)控制定時(shí) /計(jì)數(shù)器T0的工作方式,而高 4位 (b7~ b4)控制定時(shí) /計(jì)數(shù)器 T1的工作方式,其中: M M0用于選擇定時(shí) /計(jì)數(shù)器的工作方式,具體情況如表 42所示。其中 TMOD控制定時(shí) /計(jì)數(shù)器 T0、T1的工作方式,而 TCON控制定時(shí) /計(jì)數(shù)器的啟動(dòng)并記錄 定時(shí) /計(jì)數(shù)器的溢出標(biāo)志。例如,當(dāng)晶振頻率為 12?MHz時(shí),外部計(jì)數(shù)脈沖最高頻率是 500?kHz的方波 (對(duì)于“ 6時(shí)鐘 /機(jī)器周期”模式來(lái)說(shuō),外部計(jì)數(shù)脈沖頻率必須小于 1?MHz)。 ?MCS51 CPU在每個(gè)機(jī)器周期的 S5P2相檢測(cè) 、 狀態(tài),如果前一個(gè)機(jī)器周期采樣值為高電平,而后一個(gè)機(jī)器周期采樣值為低電平,則計(jì)數(shù)器加 1,在下一機(jī)器周期的S3P1相后,更新定時(shí) /計(jì)數(shù)器 TH、 TL的值。由于 MCS51單片機(jī)的一個(gè)機(jī)器周期包含 12個(gè)時(shí)鐘周期,因此在定時(shí)方式下,定時(shí) /計(jì)數(shù)器實(shí)際上是機(jī)器周期的計(jì)數(shù)器(對(duì)于“ 6時(shí)鐘 /機(jī)器周期”芯片來(lái)說(shuō),在定時(shí)方式下,計(jì)數(shù)脈沖是系統(tǒng)時(shí)鐘信號(hào)的 6分頻,同樣是機(jī)器周期的計(jì)數(shù)器 )。T0、 T1采用加法計(jì)數(shù)方式,即每輸入一個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)器加 1。如果中斷處于開(kāi)放狀態(tài),則 CPU將響應(yīng)定時(shí) /計(jì)數(shù)器的中斷請(qǐng)求。 (3) 每來(lái)一個(gè)脈沖,計(jì)數(shù)器加 1(或減 1)。 單片機(jī)內(nèi)定時(shí) /計(jì)數(shù)器屬于可編程部件,除了加法計(jì)數(shù)器 (部分單片機(jī)芯片采用減法計(jì)數(shù)器 )外,還有工作方式控制寄存器,其特征如下: 53 (1) 定時(shí) /計(jì)數(shù)器有多種定時(shí)或計(jì)數(shù)方式,使用前必須初始化工作方式寄存器,設(shè)置定時(shí) /計(jì)數(shù)器的工作方式 (如定時(shí)還是計(jì)數(shù);硬件啟動(dòng)還是軟件啟動(dòng);計(jì)數(shù)長(zhǎng)度,即作為16位計(jì)數(shù)器使用還是作為 8位計(jì)數(shù)器使用;溢出后重裝初值還是從 0開(kāi)始計(jì)數(shù)等 )。不過(guò)這兩種工作方式并沒(méi)有本質(zhì)的區(qū)別,只是計(jì)數(shù)脈沖的來(lái)源不同而已。增強(qiáng)型 MCS51系列單片機(jī)芯片內(nèi)置了三個(gè) 16位的定時(shí) /計(jì)數(shù)器,分別稱為 T0、T1和 T2。 (5) 在單片機(jī)中,還要了解該中斷源能否喚醒處于掉電狀態(tài)下的 CPU。即中斷服務(wù)程序放在何處。即中斷允許由中斷控制寄存器 IE的哪一位控制;優(yōu)先級(jí)由 IPH、 IP寄存器的哪一位控制,以及同優(yōu)先級(jí)硬件查詢順序。即什么事件發(fā)生時(shí),對(duì)應(yīng)中斷標(biāo)志位置 1。 如果低電平信號(hào)能自動(dòng)消失,但維持時(shí)間可能大于中斷服務(wù)程序的執(zhí)行時(shí)間時(shí),在系統(tǒng)反映速度允許的情況下,為降低成本,可在外中斷服務(wù)程序中加入引腳電平狀態(tài)檢測(cè)指令,確保 (對(duì) 來(lái)說(shuō) )或 (對(duì) 來(lái)說(shuō) )引腳變高電平后再清除相應(yīng)的外中斷請(qǐng)求標(biāo)志并返回。非要用電平觸發(fā)方式 (如干擾大或信號(hào)邊沿過(guò)渡時(shí)間長(zhǎng),超出一個(gè)機(jī)器周期等 )時(shí),可通過(guò)以下措施克服: INT0 INT149 48 對(duì)于采用電平觸發(fā)方式的外中斷 和 來(lái)說(shuō),如果低電平有效信號(hào)不自動(dòng)消失,或低電平維持時(shí)間大于外中斷服務(wù)程序的執(zhí)行時(shí)間時(shí),在退出中斷服務(wù)程序前,即使通過(guò)“ CLR IE0”或“ CLR IE1”指令清除了中斷標(biāo)志 IE0或 IE1,但如果 ,下一機(jī)器周期中斷標(biāo)志又再次被置位,如果滿足中斷響應(yīng)條件,將造成“同一請(qǐng)求,多次響應(yīng)”的現(xiàn)象。 (3) 子程序中可以任意調(diào)用另一子程序,但中斷有優(yōu)先級(jí),同級(jí)或低級(jí)中斷不能打斷正在執(zhí)行的同級(jí)或更高優(yōu)先級(jí)中斷服務(wù)程序。 47 (2) 中斷服務(wù)程序入口地址 (也稱為中斷向量 )由硬件決定,與 CPU類(lèi)型有關(guān),不能更改。 46 在中斷服務(wù)程序中,只要使用了某一寄存器,如 Acc、B或 DPTR等就需要在中斷服務(wù)程序入口處將這些寄存器壓入堆棧保護(hù);反之,則無(wú)需保護(hù),這一點(diǎn)初學(xué)者很容易理解。因此只要中斷服務(wù)程序中出現(xiàn)寫(xiě)寄存器組 R7~ R0之一,就需要切換工作寄存器區(qū)。例如,可通過(guò)如下指令將定義為下降沿觸發(fā),優(yōu)先級(jí)為 3(最高 ),并允許中斷: SETB IT0 ;外中斷采用下降沿觸發(fā) ORL IPH, 01H ;由于 IPH寄存器沒(méi)有位尋址功能, 只能通過(guò)“或”指令將 IPH的 ; PX0H位置 1 SETB PX0 ; IP寄存器具有位尋址功能,可通過(guò) SETB指令將指定位置 1 SETB EX0 ;允許中斷 SETB EA ;開(kāi)中斷 43 中斷服務(wù)程序結(jié)構(gòu)與子程序類(lèi)似,大致包含以下幾部分: ;必要時(shí)保護(hù)現(xiàn)場(chǎng) PUSH PSW PUSH Acc … SETB RS0 ;切換工作寄存器區(qū),根據(jù)需要可使 用 0~ 3區(qū)中的任一區(qū) CLR RS1 ;由于中斷出現(xiàn)的不確定性,因此只 要中斷服務(wù)程序中使用了寄存器 ;組 R0~ R7,就需要切換工作區(qū) … ;中斷服務(wù)程序體 (略 ) 44 CLR 中斷請(qǐng)求標(biāo)志 ;對(duì)于不能自動(dòng)清除中斷請(qǐng)求標(biāo)志的中斷響應(yīng)過(guò)程,需要通過(guò)“ CLR ;中斷請(qǐng)求標(biāo)志位”指令清除中 斷請(qǐng)求標(biāo)志,以防止同一請(qǐng)求 被多次 ;響應(yīng) POP Acc POP PSW ;恢復(fù)現(xiàn)場(chǎng) RETI ;中斷返回指令 45 可見(jiàn),中斷與子程序調(diào)用的區(qū)別在于: (1) 中斷出現(xiàn)是隨機(jī)的,可能出現(xiàn),也可能不出現(xiàn),中斷出現(xiàn)的時(shí)間也是無(wú)法確定的,即無(wú)法預(yù)測(cè)被中斷程序的斷點(diǎn)。中斷服務(wù)程序最后一條指令是中斷返回指令“ RETI”,執(zhí)行了中斷返回指令“ RETI”后,先將對(duì)應(yīng)中斷的優(yōu)先級(jí)觸發(fā)器清零 (以便返回后 CPU能夠響應(yīng)同級(jí)或更低級(jí)的中斷請(qǐng)求 ),并將堆棧內(nèi)的兩個(gè)字節(jié)彈到程序計(jì)數(shù)器 PC,以便從斷點(diǎn)處繼續(xù)執(zhí)行被中斷程序的后續(xù)指令。例如,對(duì)于低電平觸發(fā)的外中斷 ,只要 機(jī)器周期的負(fù)脈沖,中斷標(biāo)志 IE0就有效,雖然不滿足中斷響應(yīng)條件, CPU不響應(yīng) IE0中斷請(qǐng)求,但 IE0標(biāo)志不會(huì)消失,盡管在隨后的機(jī)器周期里 。 INT0INT140 對(duì)于不能自動(dòng)清除的中斷請(qǐng)求標(biāo)志,需要在中斷服務(wù)程序中用“ CLR 位地址”或“ ANL IE, XXH”指令清除。 定時(shí) /計(jì)數(shù)器 T2外觸發(fā)標(biāo)志 EXF2; 串行接收有效中斷標(biāo)志 RI; CPU不能自動(dòng)清除的中斷請(qǐng)求標(biāo)志位如下: 下降沿觸發(fā)的外中斷 的中斷請(qǐng)求標(biāo)志 IE0; 定時(shí)器 T0中斷請(qǐng)求標(biāo)志 TF0; 37 表 41 中斷服務(wù)程序入口地址 中斷源 入口地址 ( 即 L CAL L 指令的 xxxx 地址 ) 外中斷0I N T 0003 H 定時(shí) / 計(jì)數(shù)器 T0 溢出中斷 000BH 外中斷 I N T 1 0013 H 定時(shí) / 計(jì)數(shù)器 T1 溢出中斷 001BH 串行口中斷 0023 H 定時(shí) / 計(jì)數(shù)器 T2 溢出中斷 002BH 38 由于各中斷服務(wù)程序入口地址僅相隔 8個(gè)字節(jié),難以容納中斷服務(wù)程序,為此可在中斷程序入口處放置一條長(zhǎng)跳轉(zhuǎn)指令,這樣實(shí)際的中斷服務(wù)程序就可以放在存儲(chǔ)器區(qū)內(nèi)的任意位置 (一般放在主程序后 ),程序如下所示: ORG 0003H LJMP INT0 ;在外中斷入口處放一條長(zhǎng)跳轉(zhuǎn)指令 ORG 0100H MAIN: ;主程序 … INT0: ;外中斷的中斷服務(wù)程序 39 (3) 清除中斷請(qǐng)求標(biāo)志。這一過(guò)程由硬件完成,相當(dāng)于執(zhí)行了一條長(zhǎng)調(diào)用指令“ LCALL xxxx”。 36 2. 中斷響應(yīng)過(guò)程及中斷服務(wù)程序入口地址 如果滿足中斷響應(yīng)條件,將進(jìn)入中斷響應(yīng)過(guò)程: (1) ?CPU先將對(duì)應(yīng)中斷的優(yōu)先級(jí)觸發(fā)器置 1(每一中斷源對(duì)應(yīng)一個(gè)中斷優(yōu)先級(jí)觸發(fā)器, 圖 41中并未沒(méi)畫(huà)出該觸發(fā)器 ),阻止 CPU再響應(yīng)同級(jí)或更低級(jí)的中斷請(qǐng)求。因?yàn)槊恳恢袛嘣串吘怪挥幸粋€(gè)標(biāo)志位,不能分辨中斷標(biāo)志是什么時(shí)候產(chǎn)生的。 35 例如,低電平觸發(fā)的外中斷 INT0低電平維持時(shí)間為 1個(gè)機(jī)器周期,假設(shè)在 M1機(jī)器周期有效,則 M1機(jī)器周期的S5P2狀態(tài)后,標(biāo)志位 IE0為 1;盡管在 M2機(jī)器周期的 S6狀態(tài),CPU查詢到 IE0有效,但不滿足中斷響應(yīng)條件,即 M3機(jī)器周期不響應(yīng) INT0的中斷請(qǐng)求,繼續(xù)執(zhí)行隨后指令序列。 34 如果不滿足以上條件,將忽略該機(jī)器周期對(duì)中斷標(biāo)志的查詢結(jié)果,下一機(jī)器周期再繼續(xù)查詢。也就是說(shuō),中斷控制器各狀態(tài)位尚未穩(wěn)定前,不響應(yīng)中斷,以免出現(xiàn)不確定后果。也就是說(shuō),不允許中斷一條指令的執(zhí)行過(guò)程,這是為了保證指令執(zhí)行過(guò)程的完整性。 (2) 當(dāng)前機(jī)器周期必須是當(dāng)前指令的最后一個(gè)機(jī)器周期,否則等待。 31 圖 45 中斷響應(yīng)時(shí)序 32 1. 中斷響應(yīng)條件 MCS51中斷響應(yīng)條件為: (1) 當(dāng)前不執(zhí)行同級(jí)或更高優(yōu)先級(jí)中斷服務(wù)程序。復(fù)位后, IPH、 IP初值為 00000000,即所有中斷優(yōu)先級(jí)均為 0。增強(qiáng)型 MCS51具有六個(gè)中斷源,而只有四個(gè)中斷優(yōu)先級(jí),這就必然存在兩個(gè)或兩個(gè)以上中斷源優(yōu)先級(jí)相同。 可見(jiàn),當(dāng) IPH為 xx000000B時(shí),中斷優(yōu)先級(jí)僅由 IP寄存器決定,即與標(biāo)準(zhǔn) MCS51內(nèi)核中斷優(yōu)先級(jí)兼容。 PSH、 PS——串行口中斷優(yōu)先級(jí)高、低位。 PT0H、 PT0——定時(shí) /計(jì)數(shù)器 T0優(yōu)先級(jí)高、低位。 增強(qiáng)型 MCS51內(nèi)核中斷控制器具有四個(gè)中斷優(yōu)先級(jí),除了標(biāo)準(zhǔn) MCS51 CPU的中斷優(yōu)先級(jí)控制寄存器 IP外,還增加了一個(gè)中斷優(yōu)先級(jí)高位控制寄存器 IPH(字節(jié)地址為 B7H),IPH寄存器各位含義如圖 44(b)所示,即中斷源的優(yōu)先級(jí)由IPH、 IP對(duì)應(yīng)位編碼決定,具體情況如下: 25 優(yōu)先級(jí) 0 0 0級(jí) (優(yōu)先級(jí)最低 ) 0 1 1級(jí) 1 0 2級(jí) 1 1 3級(jí) (優(yōu)先級(jí)最高 ) 26 圖 44 中斷優(yōu)先級(jí)控制寄存器 (a) 中斷優(yōu)先級(jí)控制寄存器 IP各位含義; (b) 中斷優(yōu)先級(jí)控制寄存器高位 IPH各位含義 27 PX0H、 PX0
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1