單片機(jī)原理與應(yīng)用項(xiàng)目式教程 教學(xué)課件 鄒顯圣主編 項(xiàng)目五_第1頁(yè)
單片機(jī)原理與應(yīng)用項(xiàng)目式教程 教學(xué)課件 鄒顯圣主編 項(xiàng)目五_第2頁(yè)
單片機(jī)原理與應(yīng)用項(xiàng)目式教程 教學(xué)課件 鄒顯圣主編 項(xiàng)目五_第3頁(yè)
單片機(jī)原理與應(yīng)用項(xiàng)目式教程 教學(xué)課件 鄒顯圣主編 項(xiàng)目五_第4頁(yè)
單片機(jī)原理與應(yīng)用項(xiàng)目式教程 教學(xué)課件 鄒顯圣主編 項(xiàng)目五_第5頁(yè)
已閱讀5頁(yè),還剩49頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

在線教務(wù)輔導(dǎo)網(wǎng):://教材其余課件及動(dòng)畫(huà)素材請(qǐng)查閱在線教務(wù)輔導(dǎo)網(wǎng)QQ:349134187或者直接輸入下面地址:微控制器技術(shù)應(yīng)用工程五“流速〞可控的LED分析與實(shí)踐【能力目標(biāo)】1.能夠正確進(jìn)行中斷效勞程序設(shè)計(jì)。2.能夠使用定時(shí)器/計(jì)數(shù)器對(duì)外部的事件進(jìn)行統(tǒng)計(jì)。3.能夠利用中斷和定時(shí)器進(jìn)行“流速〞可控的LED電路設(shè)計(jì)。4.能夠進(jìn)行時(shí)鐘電路的正確連接及調(diào)試。5.能夠進(jìn)行復(fù)位電路的正確連接及調(diào)試。6.能夠進(jìn)行本工程單片機(jī)系統(tǒng)控制電路的正確連接及調(diào)試。7.能夠熟練地使用偉福仿真器。8.能夠熟練地使用編程器。工程五“流速〞可控的LED分析與實(shí)踐【知識(shí)目標(biāo)】1.掌握中斷的根本概念、中斷優(yōu)先級(jí)的設(shè)置。2.熟練掌握中斷源的開(kāi)放或關(guān)閉設(shè)置及中斷源中斷效勞程序入口地址確實(shí)定方法。3.掌握中斷的使用方法。4.掌握單片機(jī)中定時(shí)器/計(jì)數(shù)器的工作模式。5.熟練掌握定時(shí)器初始值的計(jì)算方法。6.熟練掌握定時(shí)器/計(jì)數(shù)器初始化程序的設(shè)計(jì)。工程五“流速〞可控的LED分析與實(shí)踐一、工程引入二、相關(guān)理論知識(shí)三、工程實(shí)施四、拓展知識(shí)六、自測(cè)題五、工程小結(jié)工程五“流速〞可控的LED分析與實(shí)踐一、工程引入本工程通過(guò)單片機(jī)來(lái)完成“流速〞可控的LED。從這個(gè)簡(jiǎn)單的“流速〞可控制的LED電路做起,使大家對(duì)單片機(jī)技術(shù)的定時(shí)器/計(jì)數(shù)器的工作模式、特點(diǎn)以及中斷系統(tǒng)的工作方式、特點(diǎn)有一個(gè)最根本的認(rèn)識(shí),并掌握定時(shí)器/計(jì)數(shù)器、中斷系統(tǒng)的根本工作過(guò)程以及在實(shí)際生活中的應(yīng)用,激發(fā)學(xué)生學(xué)習(xí)單片機(jī)應(yīng)用技術(shù)的興趣。工程要求用單片機(jī)實(shí)現(xiàn)對(duì)LED的控制,讓LED按一定次序點(diǎn)亮,形成“流動(dòng)〞的效果,間隔時(shí)間采用定時(shí)器定時(shí)的方法來(lái)實(shí)現(xiàn),分為快、慢、中三種流速,由三個(gè)開(kāi)關(guān)控制,最終形成“流速〞可控的效果。在設(shè)計(jì)本工程控制原理的過(guò)程中要求使用軟件查詢(xún)、定時(shí)器定時(shí)的方法來(lái)實(shí)現(xiàn)流速可控。下面就針對(duì)該工程,學(xué)習(xí)“流速〞可控的LED電路分析與實(shí)踐方面的相關(guān)知識(shí)。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)1.中斷的根本概念中斷是計(jì)算機(jī)的CPU暫停正在運(yùn)行的程序,轉(zhuǎn)而執(zhí)行提出中斷請(qǐng)求的那個(gè)外部設(shè)備或事件的效勞程序〔即中斷效勞程序〕,當(dāng)效勞程序處理完畢后,CPU再回到原來(lái)的“斷點(diǎn)〞繼續(xù)原來(lái)的程序。其執(zhí)行過(guò)程如圖6-1所示。主程序中斷服務(wù)程序斷點(diǎn)中斷返回二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)2.中斷的必要性〔1〕具有分時(shí)處理功能在正常狀態(tài)下,CPU執(zhí)行主程序,當(dāng)外設(shè)需要CPU為它效勞時(shí),就向CPU發(fā)出中斷請(qǐng)求,一般情況下,CPU就響應(yīng)中斷執(zhí)行相應(yīng)的中斷效勞程序。在處理完中斷效勞程序后,CPU又返回主程序正常運(yùn)行。如果有幾個(gè)外設(shè)同時(shí)發(fā)出中斷請(qǐng)求時(shí),由于CPU的速度遠(yuǎn)比外設(shè)的速度高出許多,因此當(dāng)CPU響應(yīng)各外設(shè)中斷請(qǐng)求,執(zhí)行各相應(yīng)的中斷效勞程序時(shí),對(duì)于各外設(shè)都覺(jué)得CPU只為它單獨(dú)效勞。事實(shí)上,各個(gè)外設(shè)提出中斷請(qǐng)求都有一定的時(shí)間差,因此即使在極小的時(shí)間內(nèi),由于CPU的速度極快,也有足夠的時(shí)間執(zhí)行完中斷效勞程序。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)2.中斷的必要性〔2〕具有實(shí)時(shí)處理功能在單片機(jī)用于工業(yè)實(shí)時(shí)控制時(shí),由于現(xiàn)場(chǎng)的參數(shù)或信息隨時(shí)會(huì)出現(xiàn)變化并要求CPU能極快地響應(yīng)并作出處理,因此如果沒(méi)有中斷技術(shù)是很難實(shí)現(xiàn)的。有了中斷以后,可能將這些參數(shù)或信息設(shè)定為中斷請(qǐng)求信號(hào)向CPU提出中斷請(qǐng)求,從而使CPU能及時(shí)對(duì)參數(shù)或信息的變化作出相應(yīng)的處理,到達(dá)實(shí)時(shí)控制的目的。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)2.中斷的必要性〔3〕故障處理功能在單片機(jī)運(yùn)行過(guò)程中,常會(huì)出現(xiàn)意料不到的故障,單片機(jī)有了中斷技術(shù)后,可以將故障設(shè)定為中斷信號(hào)。當(dāng)故障發(fā)生時(shí),故障源作為中斷源向CPU發(fā)出中斷請(qǐng)求,從而使CPU馬上執(zhí)行相應(yīng)的故障效勞程序,保證單片機(jī)不會(huì)因故障而造成停機(jī)。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)3.AT89C51的中斷系統(tǒng)結(jié)構(gòu)AT89C51單片機(jī)具有5個(gè)中斷源,它們都是可屏蔽中斷,所有的中斷源都由“中斷允許存放器IE〞來(lái)設(shè)定“允許〞或“屏蔽〞。中斷源具有“高〞、“低〞兩個(gè)優(yōu)先級(jí),由“中斷優(yōu)先級(jí)存放器IP〞來(lái)設(shè)定。單片機(jī)在復(fù)位后,5個(gè)中斷源都被屏蔽且都為低優(yōu)先級(jí),如圖6-2所示。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)4.與中斷相關(guān)的存放器EX0ET0EX1ET1ESEAxx〔1〕中斷允許存放器IEEA:總允許位。假設(shè)EA=0,禁止一切中斷。假設(shè)EA=1,那么每個(gè)中斷是否允許還要取決于各自的允許位。ES:串行口中斷允許位。假設(shè)ES=0,禁止中斷;假設(shè)ES=1,允許中斷。ET1:定時(shí)器1中斷允許位。假設(shè)ET1=0,禁止中斷;假設(shè)ET1=1,允許中斷。EX1:外部中斷INT1中斷允許位。假設(shè)EX1=0,禁止中斷;假設(shè)EX1=1,允許中斷。ET0:定時(shí)器0中斷允許位。假設(shè)ET1=0,禁止中斷;假設(shè)ET1=1,允許中斷。EX0:外部中斷INT0中斷允許位。假設(shè)EX0=0,禁止中斷;假設(shè)EX0=1,允許中斷。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)4.與中斷相關(guān)的存放器〔2〕中斷優(yōu)先級(jí)存放IPPS:串行口中斷優(yōu)先級(jí)設(shè)定位。假設(shè)PS=1,高優(yōu)先級(jí);PS=0低優(yōu)先級(jí)。PT1:定時(shí)器1中斷優(yōu)先級(jí)設(shè)定位。假設(shè)ET1=1,高優(yōu)先級(jí);ET1=0低優(yōu)先級(jí)。PX1:外部中斷1中斷優(yōu)先級(jí)設(shè)定位。假設(shè)EX1=1,高優(yōu)先級(jí);EX1=0低優(yōu)先級(jí)。PT0:定時(shí)器0中斷優(yōu)先級(jí)設(shè)定位。假設(shè)ET0=1,高優(yōu)先級(jí);ET0=0低優(yōu)先級(jí)。PX0:外部中斷0中斷優(yōu)先級(jí)設(shè)定位。假設(shè)EX0=1,高優(yōu)先級(jí);EX0=0低優(yōu)先級(jí)。PX0PT0PX1PT1PSxxx二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)4.與中斷相關(guān)的存放器〔3〕定時(shí)器/計(jì)數(shù)器控制存放器TCONTF1:定時(shí)器T1溢出標(biāo)志。當(dāng)定時(shí)/計(jì)數(shù)器T1產(chǎn)生溢出時(shí),該位由硬件置1,并申請(qǐng)中斷〔中斷開(kāi)放時(shí)〕。進(jìn)入中斷效勞程序后由硬件自動(dòng)清零。注意:如果使用軟件查詢(xún)標(biāo)志時(shí),應(yīng)當(dāng)在標(biāo)志有效〔TF=1〕后使用軟件去除標(biāo)志。TF0:定時(shí)器T0溢出標(biāo)志。功能同TF1類(lèi)似。TR1:定時(shí)器T1的運(yùn)行控制位,由軟件置1和清零。置1時(shí),定時(shí)/計(jì)數(shù)器開(kāi)始工作,清零時(shí)停止工作。TR0:定時(shí)器T0的運(yùn)行控制位,功能同TR1類(lèi)似。IE1:外中斷INT1標(biāo)志位。當(dāng)檢測(cè)到INT1腳上的電平由高電平變?yōu)榈碗娖綍r(shí),該位置位并請(qǐng)求中斷。進(jìn)入中斷效勞程序后,該位自動(dòng)去除。IE0:外中斷INT0標(biāo)志位。功能同IE1類(lèi)似。IT1:外中斷INT1觸發(fā)類(lèi)型控制位。IT=1時(shí),為下降沿觸發(fā)中斷;IT=0時(shí),是低電平觸發(fā)。IT0:外中斷INT0觸發(fā)類(lèi)型控制位。功能同IT1類(lèi)似。TF1TR1TF0TR0IE1IT1IE0IT0二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)5.中斷響應(yīng)協(xié)議在每一個(gè)機(jī)器周期中,所有的中斷源都要按照其順序檢查一遍。到S6狀態(tài)時(shí),就查找到所有被激活的中斷申請(qǐng)并排好優(yōu)先權(quán)。在下一個(gè)機(jī)器周期的S1狀態(tài),只要不受阻斷,就開(kāi)始響應(yīng)高級(jí)中斷。如果發(fā)生以下情況,中斷將被阻止:1〕同級(jí)或高級(jí)中斷正在執(zhí)行時(shí)。2〕當(dāng)前的機(jī)器周期不是指令的最后一個(gè)機(jī)器周期。3〕CPU正在執(zhí)行的指令是RETI或訪問(wèn)IE、IP存放器時(shí),CPU是不會(huì)響應(yīng)中斷的,而且要等到該指令的下一條指令執(zhí)行完后中斷才能響應(yīng)。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)6.中斷響應(yīng)的優(yōu)先級(jí)低級(jí)中斷在響應(yīng)執(zhí)行中,可被高級(jí)中斷所中斷,反之那么不能。一個(gè)中斷〔不管是什么優(yōu)先級(jí)〕一旦得到響應(yīng),與它同級(jí)的中斷那么不能再中斷它。當(dāng)CPU同時(shí)收到幾個(gè)同一級(jí)別的中斷要求時(shí),CPU響應(yīng)哪個(gè)中斷源取決于硬件的查詢(xún)順序。從中斷系統(tǒng)的硬件結(jié)構(gòu)圖可以清楚地看出同一級(jí)別中5個(gè)中斷源的查詢(xún)順序。那么,要改變這種順序只能通過(guò)IP的設(shè)置。如:要想將串行口的級(jí)別設(shè)為最高時(shí),將IP中的PS置1。即使用指令“SETBPS〞或“MOV0B8H,#10H〞完成對(duì)IP設(shè)置。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)7.中斷響應(yīng)的過(guò)程如果CPU響應(yīng)五個(gè)中斷源中的某一個(gè)中斷申請(qǐng)時(shí),在硬件的控制下,AT89C51必須做三件事情:1〕CPU查詢(xún)到某一中斷源后,使相應(yīng)的“優(yōu)先級(jí)激活觸發(fā)器〞置位,用以屏蔽、阻止同級(jí)或低級(jí)中斷〔在單片機(jī)中斷系統(tǒng)中有兩個(gè)不可尋址的優(yōu)先級(jí)激活觸發(fā)器—flagH和flagL,分別代表高優(yōu)先級(jí)和低優(yōu)先級(jí)〕。2〕在硬件控制下,將當(dāng)前程序計(jì)數(shù)器PC的內(nèi)容〔斷點(diǎn)地址〕進(jìn)棧,以備返回。3〕將對(duì)應(yīng)的中斷矢量裝入PC,使程序轉(zhuǎn)向?qū)?yīng)的矢量單元〔入口地址〕,并通過(guò)此單元的長(zhǎng)轉(zhuǎn)移指令轉(zhuǎn)向執(zhí)行對(duì)應(yīng)的中斷效勞程序。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)8.外部中斷在單片機(jī)的引腳上,有兩個(gè)輸入腳分別為INT0和INT1。作為外部中斷的兩個(gè)輸入,其激活中斷申請(qǐng)輸入的方式有兩種:一種是低電平激活;另一種是下降沿激活。具體采用哪種方式,由專(zhuān)用存放器TCON中的IT1、IT0位來(lái)決定。假設(shè)ITx〔X=1或0〕=0那么低電平激活中斷;假設(shè)ITx=1是下降沿激活。在2個(gè)機(jī)器周期中,對(duì)ITx進(jìn)行兩次采樣。第一次采為高電平,第二次采樣為低電平時(shí),激活中斷標(biāo)志〔TCON中的IEx=1〕。由于CPU對(duì)外部中斷的采樣每個(gè)機(jī)器周期只有一次,所以電平激活方式中的外觸發(fā)信號(hào)加在INTx的引腳上的低電平至少要保證一個(gè)機(jī)器周期〔即12個(gè)振蕩周期〕。如果系統(tǒng)采用的是12M晶體,那么,INTx上的中斷信號(hào)〔低電平〕應(yīng)大于1微秒,在實(shí)際應(yīng)用中,如果采用電平觸發(fā)方式時(shí),外部中斷源應(yīng)一直保持中斷有效〔低電平〕,直到中斷被響應(yīng)為止。同理,對(duì)于邊沿激活方式的信號(hào),加在INTx上的高電平、低電平至少要各保持一個(gè)機(jī)器周期以上的時(shí)間。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)9.中斷請(qǐng)求的撤除CPU一旦響應(yīng)中斷,進(jìn)入中斷效勞程序后,應(yīng)當(dāng)將該中斷請(qǐng)求撤除,否那么該信號(hào)還會(huì)引起重復(fù)的中斷。撤除中斷的方法就是將對(duì)應(yīng)的中斷標(biāo)志位清零。在AT89C51系統(tǒng)中,去除標(biāo)志有兩種方法:一種是靠硬件自動(dòng)去除;另一種是必須人為地用軟件〔指令〕來(lái)去除。具體見(jiàn)表6-1〔如果采用“查詢(xún)〞方式編程時(shí),所有標(biāo)志都應(yīng)軟件清零〕二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)9.中斷請(qǐng)求的撤除二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)9.中斷請(qǐng)求的撤除使用一個(gè)D型觸發(fā)器,在外部信號(hào)的鼓勵(lì)下,使觸發(fā)器的Q端為“0〞電平,該電平作為外中斷的申請(qǐng)信號(hào)。當(dāng)CPU響應(yīng)該中斷并進(jìn)入到效勞程序中時(shí),利用P0口的一條線輸出一個(gè)將D型觸發(fā)器置1的信號(hào),如圖6-3所示。該電路還可以解決外中斷信號(hào)有效寬度過(guò)窄的問(wèn)題。二、相關(guān)理論知識(shí)〔一〕AT89C51單片機(jī)的中斷系統(tǒng)10.中斷技術(shù)的應(yīng)用1〕與查詢(xún)方式比較,采用中斷方式編程可以提高CPU的運(yùn)行效率。2〕單片機(jī)內(nèi)部模塊定時(shí)器、串行口都可以采用中斷的方式編程。3〕單片機(jī)的引腳INT0和INT1為用戶(hù)提供了可以使用外部信號(hào)承擔(dān)中斷源的時(shí)機(jī)。如系統(tǒng)的電源監(jiān)控系統(tǒng),當(dāng)電源出現(xiàn)下降時(shí),可以向CPU發(fā)出一個(gè)緊急中斷申請(qǐng),CPU便可實(shí)現(xiàn)備用電源的切換等。但應(yīng)當(dāng)注意:外部的INT信號(hào)必須要經(jīng)過(guò)處理,以保證中斷的可靠性。4〕與查詢(xún)方式編程相比,中斷編程要注意兩點(diǎn):①通過(guò)對(duì)IE存放器的編程,選擇對(duì)應(yīng)的使能位并開(kāi)放該中斷源。②在對(duì)應(yīng)的中斷矢量入口單元寫(xiě)入“跳板指令〞,以便中斷發(fā)生時(shí),能夠通過(guò)跳板指令使CPU轉(zhuǎn)到真正的中斷效勞子程序中。二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器1.定時(shí)器/計(jì)數(shù)器的結(jié)構(gòu)AT89C51單片機(jī)有二個(gè)16位定時(shí)器/計(jì)數(shù)器,它們都具有定時(shí)和計(jì)數(shù)雙重功能。其內(nèi)部結(jié)構(gòu)如圖6-5所示。二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器2.定時(shí)器/計(jì)數(shù)器的特殊功能存放器〔1〕方式存放器TMOD特殊功能存放器TMOD為T(mén)0、T1的工作方式存放器,地址為89H,其格式如下:GATEC/TM1M0GATEC/TM1M0定時(shí)/計(jì)數(shù)器1定時(shí)/計(jì)數(shù)器0GATE:選通門(mén)GATE=1時(shí),只有INTi〔i=0或1〕信號(hào)為高電平且TRi=1時(shí),定時(shí)器/計(jì)數(shù)器才開(kāi)始工作;GATE=0時(shí),只要TRi=1,定時(shí)器/計(jì)數(shù)器就開(kāi)始工作,而與INTi信號(hào)無(wú)關(guān)。C/T計(jì)數(shù)器方式、定時(shí)方式選擇位。當(dāng)C/T=0時(shí),設(shè)定為定時(shí)方式,計(jì)數(shù)脈沖來(lái)自?xún)?nèi)部時(shí)鐘系統(tǒng);當(dāng)C/T=1時(shí),設(shè)定為計(jì)數(shù)方式,計(jì)數(shù)脈沖來(lái)自外部引腳T0、T1。M1,M0工作模式控制位,具體見(jiàn)表6-2所示。二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器2.定時(shí)器/計(jì)數(shù)器的特殊功能存放器〔1〕方式存放器TMOD二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器2.定時(shí)器/計(jì)數(shù)器的特殊功能存放器〔2〕控制存放器TCONTF1TR1TF0TR0IE1IT1IE0IT0特殊功能存放器TCON的高4位存放定時(shí)器的運(yùn)行控制位和溢出標(biāo)志位,低4位存放外部中斷的的觸發(fā)方式控制位和鎖存外部中斷請(qǐng)求源,地址為88H,其格式如下。各位含義在中斷控制系統(tǒng)局部已講,這里不再贅述。二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器3.定時(shí)器/計(jì)數(shù)器的工作方式在AT89C51單片機(jī)內(nèi)部,具有兩個(gè)完全相同的定時(shí)計(jì)數(shù)器T0、T1,它們都具有兩種工作方式:定時(shí)和計(jì)數(shù),無(wú)論是定時(shí)還是計(jì)數(shù)方式、其核心局部都是一個(gè)“加一計(jì)數(shù)器〞,無(wú)論何種方式,都具備四種模式,以滿(mǎn)足實(shí)際要到達(dá)的最正確工作狀態(tài);定時(shí)器/計(jì)數(shù)器的工作方式、工作模式是由特殊功能存放器中的TMOD來(lái)決定的。因此對(duì)其方式、模式的設(shè)定是靠對(duì)TMOD的初始化編程實(shí)現(xiàn)的。二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器3.定時(shí)器/計(jì)數(shù)器的工作方式〔1〕方式0當(dāng)M1M0為00時(shí),定時(shí)器/計(jì)數(shù)器工作在方式0,這時(shí)為13位的定時(shí)器/計(jì)數(shù)器,其工作結(jié)構(gòu)如圖6-6所示?!惨訲1為例〕二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器3.定時(shí)器/計(jì)數(shù)器的工作方式〔2〕方式1當(dāng)M1M0為01時(shí),定時(shí)器/計(jì)數(shù)器工作在方式1,這時(shí)為16位的定時(shí)器/計(jì)數(shù)器,其工作結(jié)構(gòu)如圖6-7所示?!踩砸訲1為例〕二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器3.定時(shí)器/計(jì)數(shù)器的工作方式〔3〕方式2當(dāng)M1M0為10時(shí),定時(shí)器/計(jì)數(shù)器工作在方式2,這時(shí)為8位自動(dòng)重裝的定時(shí)器/計(jì)數(shù)器,其工作結(jié)構(gòu)如圖6-8所示?!踩砸訲1為例〕二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器3.定時(shí)器/計(jì)數(shù)器的工作方式〔4〕方式3當(dāng)M1M0為11時(shí),定時(shí)器/計(jì)數(shù)器0工作在方式3,這時(shí)為兩個(gè)8位的定時(shí)器/計(jì)數(shù)器,而定時(shí)器/計(jì)數(shù)器1沒(méi)有工作方式3。在定時(shí)器/計(jì)數(shù)器0工作在方式3的情況下,定時(shí)器/計(jì)數(shù)器0被分為兩個(gè)獨(dú)立的8位計(jì)數(shù)器TL0和TH0,其中TL0使用本身的控制位GATE、C/T、TF0、TR0和INT0,并占用T0的中斷資源,而TH0固定作為一個(gè)8位定時(shí)器〔不能作為計(jì)數(shù)器〕,借用定時(shí)器/計(jì)數(shù)器1的局部控制位TR1和TF1,并占用T1的中斷源。其工作結(jié)構(gòu)如圖6-9所示。二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器3.定時(shí)器/計(jì)數(shù)器的工作方式〔4〕方式3圖6-9方式3T0電路結(jié)構(gòu)圖〔此時(shí)T1可先設(shè)定為模式2運(yùn)行〕二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器3.定時(shí)器/計(jì)數(shù)器的工作方式〔4〕方式3定時(shí)器/計(jì)數(shù)器4種模式比較見(jiàn)表6-3和表6-4。表6-3定時(shí)器/計(jì)數(shù)器4種方式比較〔計(jì)數(shù)方式〕二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器3.定時(shí)器/計(jì)數(shù)器的工作方式〔4〕方式3定時(shí)器/計(jì)數(shù)器4種模式比較見(jiàn)表6-3和表6-4。表6-4定時(shí)器/計(jì)數(shù)器4種方式比較〔定時(shí)方式〕二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器4.定時(shí)器/計(jì)數(shù)器的使用方法1〕確定工作方式—配置TMOD存放器。2〕根據(jù)任務(wù)需求,確定定時(shí)或計(jì)數(shù)功能。3〕選擇工作方式。定時(shí)器/計(jì)數(shù)器初值計(jì)算—配置TH0、TL或TH1、TL1計(jì)數(shù)存放器。由于AT89C51單片機(jī)定時(shí)器/計(jì)數(shù)器是加1計(jì)數(shù)器,當(dāng)TF溢出時(shí)為定時(shí)時(shí)間到或計(jì)數(shù)正好,因此實(shí)際定時(shí)時(shí)間或計(jì)數(shù)長(zhǎng)度不能作為初值賦給TH1〔TH0〕和TL1〔TL0〕,初值的計(jì)算公式應(yīng)為:T初值=2N-定時(shí)時(shí)間/機(jī)器周期其中,N與工作方式有關(guān),方式0時(shí)為13,方式1時(shí)為16,方式2時(shí)為8,方式3時(shí)為8。二、相關(guān)理論知識(shí)〔二〕AT89C51單片機(jī)的定時(shí)器/計(jì)數(shù)器4.定時(shí)器/計(jì)數(shù)器的使用方法機(jī)器周期與時(shí)鐘頻率fosc有關(guān),如果fosc=12MHz,那么機(jī)器周期為1us,如果fosc=6MHz,那么機(jī)器周期為2us。根據(jù)需要開(kāi)啟定時(shí)器中斷,即配置IE存放器。根據(jù)任務(wù)需求,對(duì)中斷允許控制存放器IE賦值,開(kāi)啟定時(shí)器計(jì)滿(mǎn)溢出后的中斷請(qǐng)求功能?!?〕啟動(dòng)定時(shí)啟動(dòng)定時(shí)器工作—配置TCON存放器。配置TCON存放器,用位指令置位TR0或TR1,即可啟動(dòng)定時(shí)器,開(kāi)始定時(shí)?!?〕定時(shí)完成通過(guò)判斷定時(shí)器TF0或TF1來(lái)查詢(xún)是否完成定時(shí)。如果TF0或TF1為1,那么認(rèn)為定時(shí)完成。三、工程實(shí)施〔一〕硬件電路原理圖設(shè)計(jì)〔二〕系統(tǒng)所用元器件、設(shè)備及工具三、工程實(shí)施元器件名稱(chēng)主要參數(shù)數(shù)量元器件名稱(chēng)主要參數(shù)數(shù)量單片機(jī)AT89C511螺釘旋具一字及十字1電阻5.1kΩ1面包板—2電阻330Ω8偉福仿真器H51/L1電阻10K3西爾特編程器SUPERPRO/L+1瓷片電容30pF2仿真頭POD-S8X5X/H8X5X1LED發(fā)光二極管—8插線—若干晶振6MHz1計(jì)算機(jī)—1開(kāi)關(guān)

3鉗子尖口1電解電容10μF1萬(wàn)用表數(shù)字式1〔三〕系統(tǒng)所用匯編源程序的編制三、工程實(shí)施ORG0000HLJMPMAINORG0100HMAIN:MOVR2,#08HMOVA,#0FEHMOVP0,#0FFHCLREANEXT:JBP0.0,NEXT1MOVP1,AMOVR3,#05HLCALLDELAY1SJMPNEXT3NEXT1:JBP0.1,NEXT2MOVP1,AMOVR3,#0AHLCALLDELAY1SJMPNEXT3NEXT2:JBP0.2,NEXTMOVP1,AMOVR3,#0FHLCALLDELAY1NEXT3:RLADJNZR2,NEXTSJMPMAINDELAY1:MOVTMOD,#10HMOVTH1,#3CHMOVTL1,#0B0HSETBTR1L1:JBCTF1,L2SJMPL1L2:MOVTH1,#3CHMOVTL1,#0B0HDJNZR3,L1RETEND〔四〕硬件及軟件的聯(lián)合調(diào)試三、工程實(shí)施三、工程實(shí)施〔五〕脫離仿真器后的獨(dú)立運(yùn)行四、拓展知識(shí)〔一〕定時(shí)器/計(jì)數(shù)器初值TC的計(jì)算1.計(jì)數(shù)方式下的TC計(jì)算TC=M-C其中,C為要求的計(jì)數(shù)值;M為計(jì)數(shù)器的模,有以下3種情況:方式0:M=213=8192方式1:M=216=65536方式2:M=28=256例6-2要求每計(jì)100個(gè)脈沖定時(shí)器產(chǎn)生一次溢出。解1:選擇方式2TC=256-100=156=9CHMOVTH0,#9CHMOVTL0,#9CH解2:選擇方式1TC=65536-100=65436=FF9CHMOVTH0,#0FFHMOVTL0,#9CH四、拓展知識(shí)〔一〕定時(shí)器/計(jì)數(shù)器初值TC的計(jì)算2.定時(shí)方式下的TC計(jì)算TC=M-T/T計(jì)數(shù)

其中,T——要求的定時(shí)時(shí)間值;T計(jì)數(shù)——計(jì)數(shù)器計(jì)數(shù)脈沖周期=〔1/fosc〕×12;M---計(jì)數(shù)器的模,有以下3種情況:方式0:M=213=8192方式1:M=216=65536方式2:M=28=256例6-3定時(shí)方式:要求T0產(chǎn)生20ms的定式。解:選擇方式1TC=M-T/T計(jì)數(shù)TC=65536?〔20ms×1000〕/1μS=65536-20000=45536=0B1E0HMOVTH0,#0B1HMOVTL0,#0E0H四、拓展知識(shí)〔一〕定時(shí)器/計(jì)數(shù)器初值TC的計(jì)算3.定時(shí)器門(mén)控位GATE的應(yīng)用如果GATE=1,TR=1時(shí)電路是否計(jì)數(shù)取決于INT0:INT0=1時(shí)開(kāi)始計(jì)數(shù);INT0=0時(shí)電路停止計(jì)數(shù)。利用這一特點(diǎn),可以實(shí)現(xiàn)測(cè)量外部脈沖的周期〔頻率〕,如圖6-13所示。解題步驟:1〕將外部脈沖接到P3.2〔INT0〕上,使用T0且C/T=0,且令GATE=1。2〕計(jì)數(shù)器TH0、TL0原始初值為00H,且設(shè)為模式1〔16位〕。3〕在INT0=0時(shí)啟動(dòng)T0計(jì)數(shù)器〔TR0=1〕。4〕當(dāng)INT0=1時(shí),定時(shí)器T0自動(dòng)開(kāi)始計(jì)數(shù);當(dāng)INT0=0時(shí)自動(dòng)停止計(jì)數(shù),此時(shí)TH0、TL0中的計(jì)數(shù)值就是與脈沖寬度相對(duì)應(yīng)的數(shù)據(jù)。四、拓展知識(shí)〔一〕定時(shí)器/計(jì)數(shù)器初值TC的計(jì)算3.定時(shí)器門(mén)控位GATE的應(yīng)用圖6-13定時(shí)器門(mén)控位GATE的應(yīng)用四、拓展知識(shí)〔一〕定時(shí)器/計(jì)數(shù)器初值TC的計(jì)算3.定時(shí)器門(mén)控位GATE的應(yīng)用程序清單:MOVTMOD,#09H;設(shè)定T0為模式1且GATE=1MOVTH0,#00HMOVTL0,#00H;計(jì)數(shù)器原始清零MOVR0,#20H;設(shè)置數(shù)據(jù)區(qū)指針并原始賦初值JBINT0,$;等待P3.2引腳上的脈沖變低,尋找準(zhǔn)備階段SETBTR0;INT0變低后,TR0置1〔但不計(jì)數(shù)〕JNBINT0,$;假設(shè)INT0低電平那么等待,準(zhǔn)備計(jì)數(shù)階段JBINT0,$;假設(shè)INT0高電平那么等待〔硬件開(kāi)始計(jì)數(shù)〕CLRTR0;INT0變低后,關(guān)閉T0〔停止計(jì)數(shù)〕MOV@R0,TH0INCR0MOV@R0,TL0;保存計(jì)數(shù)器T0的計(jì)數(shù)值四、拓展知識(shí)〔二〕外部中斷源的擴(kuò)展1.用定時(shí)器作外部中斷源AT89C51單片機(jī)有兩個(gè)定時(shí)器,具有兩個(gè)內(nèi)中斷標(biāo)志和外計(jì)數(shù)引腳,如在某些應(yīng)用中不被使用,那么它們的中斷可作為外部中斷請(qǐng)求使用。此時(shí),可將定時(shí)器設(shè)置成計(jì)數(shù)方式,計(jì)數(shù)初值可設(shè)為滿(mǎn)量程,那么它們的計(jì)數(shù)輸入端T0〔P3.4〕或T1〔P3.5〕引腳上發(fā)生負(fù)跳變時(shí),計(jì)數(shù)器加1便產(chǎn)生溢出中斷。利用此特性,可把T0腳或T1腳作為外部中斷請(qǐng)求輸入線,而計(jì)數(shù)器的溢出中斷作為外部中斷請(qǐng)求標(biāo)志。四、拓展知識(shí)〔二〕外部中斷源的擴(kuò)展1.用定時(shí)器作外部中斷源例6-4將定時(shí)器T0擴(kuò)展為外部中斷源。解:將定時(shí)器T0設(shè)定為方式2〔自動(dòng)恢復(fù)計(jì)數(shù)初值〕,TH0和TF0的初值均設(shè)置為FFH,允許T0中斷,CPU開(kāi)放中斷,源程序如下:MOVTMOD,#06HMOVTH0,#0FFHMOVTL0,#0FFHSETBTR0SETBET0SETBEA…當(dāng)連接在T0〔P3.4〕引腳的外部中斷請(qǐng)求輸入線發(fā)生負(fù)跳變時(shí),TL0加1溢出,TF0置1,向CPU發(fā)出中斷申請(qǐng),同時(shí),TH0的內(nèi)容自動(dòng)送至TL0使TL0恢復(fù)初值。這樣,T0引

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論