版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第三講,數(shù)碼管是如何顯示出字符的數(shù)碼管靜態(tài)顯示與動態(tài)顯示原理中斷概念單片機的定時器應用,顯示器及其接口,單片機系統(tǒng)中常用的顯示器有: 發(fā)光二極管LED(Light Emitting Diode)顯示器、液晶LCD(Liquid Crystal Display)顯示器、CRT顯示器等。LED、LCD顯示器有兩種顯示結構:段顯示(7段、米字型等)和點陣顯示(5×8、8×8點陣等)。,,使用LED顯示
2、器時,要注意區(qū)分這兩種不同的接法。為了顯示數(shù)字或字符,必須對數(shù)字或字符進行編碼。七段數(shù)碼管加上一個小數(shù)點,共計8段。因此為LED顯示器提供的編碼正好是一個字節(jié)。TX實驗板用共陰LED顯示器,根據(jù)電路連接圖顯示16進制數(shù)的編碼已列在下表。,共陰極,共陽極,共陰數(shù)碼管碼表,0x3f , 0x06 , 0x5b , 0x4f , 0x66 , 0x6d , 0 1 2 3 4 5 0
3、x7d , 0x07 , 0x7f , 0x6f , 0x77 , 0x7c , 6 7 8 9 A B 0x39 , 0x5e , 0x79 , 0x71 , 0x00 C D E F 無顯示,LED數(shù)碼顯示方式及電路,靜態(tài)顯示方式LED顯示器工作方式有兩種:靜態(tài)顯示方式和動態(tài)顯示方式。靜態(tài)顯示的特點是每個數(shù)碼管的段
4、選必須接一個8位數(shù)據(jù)線來保持顯示的字形碼。當送入一次字形碼后,顯示字形可一直保持,直到送入新字形碼為止。這種方法的優(yōu)點是占用CPU時間少,顯示便于監(jiān)測和控制。缺點是硬件電路比較復雜,成本較高。,動態(tài)顯示,動態(tài)顯示的特點是將所有位數(shù)碼管的段選線并聯(lián)在一起,由位選線控制是哪一位數(shù)碼管有效。選亮數(shù)碼管采用動態(tài)掃描顯示。所謂動態(tài)掃描顯示即輪流向各位數(shù)碼管送出字形碼和相應的位選,利用發(fā)光管的余輝和人眼視覺暫留作用,使人的感覺好像各位數(shù)碼管同時都在
5、顯示。動態(tài)顯示的亮度比靜態(tài)顯示要差一些,所以在選擇限流電阻時應略小于靜態(tài)顯示電路中的。,,中斷系統(tǒng),3.1 80C51的中斷系統(tǒng),3.1.1 80C51的中斷系統(tǒng)結構,,一、中斷的概念 CPU在處理某一事件A時,發(fā)生了另一事件B請求CPU迅速去處理(中斷發(fā)生); CPU暫時中斷當前的工作,轉去處理事件B(中斷響應和中斷服務); 待CPU將事件B處理完畢后,再回到原來事件A被中斷的地方繼續(xù)處理事件A(中斷返回),這一過程
6、稱為中斷 。,MCS-51單片機的中斷系統(tǒng)結構,,,,,,執(zhí)行主程序,主程序,繼續(xù)執(zhí)行主程序,斷點,中斷請求,中斷響應,執(zhí)行中斷處理程序,中斷返回,引起CPU中斷的根源,稱為中斷源。中斷源向CPU提出的中斷請求。CPU暫時中斷原來的事務A,轉去處理事件B。對事件B處理完畢后,再回到原來被中斷的地方(即斷點),稱為中斷返回。實現(xiàn)上述中斷功能的部件稱為中斷系統(tǒng)(中斷機構)。,,,隨著計算機技術的應用,人們發(fā)現(xiàn)中斷技術不僅解決了快速主機與慢速
7、I/O設備的數(shù)據(jù)傳送問題,而且還具有如下優(yōu)點:,,,分時操作。CPU可以分時為多個I/O設備服務,提高了計算機的利用率;,實時響應。CPU能夠及時處理應用系統(tǒng)的隨機事件,系統(tǒng)的實時性大大增強;,可靠性高。CPU具有處理設備故障及掉電等突發(fā)性事件能力,從而使系統(tǒng)可靠性提高。,80C51中斷系統(tǒng)的結構 80C51的中斷系統(tǒng)有5個中斷源(8052有 6個) ,2個優(yōu)先級,可實現(xiàn)二級中斷嵌套 。,,,1、(P3.2)可由IT0(TCON
8、.0)選擇其為低電平有效還是下降沿有效。當CPU檢測到P3.2引腳上出現(xiàn)有效的中斷信號時,中斷標志IE0(TCON.1)置1,向CPU申請中斷。,2、(P3.3)可由IT1(TCON.2)選擇其為低電平有效還是下降沿有效。當CPU檢測到P3.3引腳上出現(xiàn)有效的中斷信號時,中斷標志IE1(TCON.3)置1,向CPU申請中斷。,3、TF0(TCON.5),片內(nèi)定時/計數(shù)器T0溢出中斷請求標志。當定時/計數(shù)器T0發(fā)生溢出時,置位TF0,并向
9、CPU申請中斷。,4、TF1(TCON.7),片內(nèi)定時/計數(shù)器T1溢出中斷請求標志。當定時/計數(shù)器T1發(fā)生溢出時,置位TF1,并向CPU申請中斷。,5、RI(SCON.0)或TI(SCON.1),串行口中斷請求標志。當串行口接收完一幀串行數(shù)據(jù)時置位RI或當串行口發(fā)送完一幀串行數(shù)據(jù)時置位TI,向CPU申請中斷。,二、中斷請求標志1、TCON的中斷標志,,IT0(TCON.0),外部中斷0觸發(fā)方式控制位。當IT0=0時,為電平觸發(fā)方式。
10、當IT0=1時,為邊沿觸發(fā)方式(下降沿有效)。IE0(TCON.1),外部中斷0中斷請求標志位。IT1(TCON.2),外部中斷1觸發(fā)方式控制位。IE1(TCON.3),外部中斷1中斷請求標志位。TF0(TCON.5),定時/計數(shù)器T0溢出中斷請求標志位。TF1(TCON.7),定時/計數(shù)器T1溢出中斷請求標志位。,2、SCON的中斷標志,,RI(SCON.0),串行口接收中斷標志位。當允許串行口接收數(shù)據(jù)時,每接收完一個串行
11、幀,由硬件置位RI。注意,RI必須由軟件清除。TI(SCON.1),串行口發(fā)送中斷標志位。當CPU將一個發(fā)送數(shù)據(jù)寫入串行口發(fā)送緩沖器時,就啟動了發(fā)送過程。每發(fā)送完一個串行幀,由硬件置位TI。CPU響應中斷時,不能自動清除TI,TI必須由軟件清除。,一、中斷允許控制 CPU對中斷系統(tǒng)所有中斷以及某個中斷源的開放和屏蔽是由中斷允許寄存器IE控制的。,3.1.3 80C51中斷的控制,EX0(IE.0),外部中斷0允許位;
12、ET0(IE.1),定時/計數(shù)器T0中斷允許位; EX1(IE.2),外部中斷0允許位;ET1(IE.3),定時/計數(shù)器T1中斷允許位;ES(IE.4),串行口中斷允許位;EA (IE.7), CPU中斷允許(總允許)位。,二、中斷優(yōu)先級控制 80C51單片機有兩個中斷優(yōu)先級,即可實現(xiàn)二級中斷服務嵌套。每個中斷源的中斷優(yōu)先級都是由中斷優(yōu)先級寄存器IP中的相應位的狀態(tài)來規(guī)定的 。,PX0(IP.0),外部中斷0優(yōu)
13、先級設定位;PT0(IP.1),定時/計數(shù)器T0優(yōu)先級設定位;PX1(IP.2),外部中斷0優(yōu)先級設定位;PT1(IP.3),定時/計數(shù)器T1優(yōu)先級設定位;PS (IP.4),串行口優(yōu)先級設定位;PT2 (IP.5) ,定時/計數(shù)器T2優(yōu)先級設定位。,PX0(IPH.0),外部中斷0優(yōu)先級設定位;PT0(IPH.1),定時/計數(shù)器T0優(yōu)先級設定位;PX1(IPH.2),外部中斷0優(yōu)先級設定位;PT1(IPH.3)
14、,定時/計數(shù)器T1優(yōu)先級設定位;PS (IPH.4),串行口優(yōu)先級設定位;PT2 (IPH.5) ,定時/計數(shù)器T2優(yōu)先級設定位。,而80C52單片機有四個中斷優(yōu)先級,即可實現(xiàn)四級中斷服務嵌套。每個中斷源的中斷優(yōu)先級由中斷優(yōu)先級寄存器IP和IPH中的相應位的狀態(tài)來規(guī)定的 。,同一優(yōu)先級中的中斷申請不止一個時,則有中斷優(yōu)先權排隊問題。同一優(yōu)先級的中斷優(yōu)先權排隊,由中斷系統(tǒng)硬件確定的自然優(yōu)先級形成,其排列如所示:,設置52單片
15、機的4個中斷源,使他們的優(yōu)順序為T1,INT1,INT0,T0.,IPH = 0X08;PT1 = 1;,IP = 0X40;PX1 = 1;,80C51單片機的中斷優(yōu)先級有三條原則:,CPU同時接收到幾個中斷時,首先響應優(yōu)先級別最高的中斷請求。正在進行的中斷過程不能被新的同級或低優(yōu)先級的中斷請求所中斷。正在進行的低優(yōu)先級中斷服務,能被高優(yōu)先級中斷請求所中斷。,為了實現(xiàn)上述后兩條原則,中斷系統(tǒng)內(nèi)部設有兩個用戶不能尋址的優(yōu)先級
16、狀態(tài)觸發(fā)器。其中一個置1,表示正在響應高優(yōu)先級的中斷,它將阻斷后來所有的中斷請求;另一個置1,表示正在響應低優(yōu)先級中斷,它將阻斷后來所有的低優(yōu)先級中斷請求。,3.2 80C51單片機中斷處理過程,,,中斷響應條件 中斷源有中斷請求; 此中斷源的中斷允許位為1; CPU開中斷(即EA=1)。以上三條同時滿足時,CPU才有可能響應中斷。,3.2.1 中斷響應條件和時間,,3.3 80C51的定時/計數(shù)器,,,,實現(xiàn)定時功能
17、,比較方便的辦法是利用單片機內(nèi)部的定時/計數(shù)器。也可以采用下面三種方法:,,,,,軟件定時:軟件定時不占用硬件資源,但占用了CPU時間,降低了CPU的利用率。采用時基電路定時:例如采用555電路,外接必要的元器件(電阻和電容),即可構成硬件定時電路。但在硬件連接好以后,定時值與定時范圍不能由軟件進行控制和修改,即不可編程。采用可編程芯片定時:這種定時芯片的定時值及定時范圍很容易用軟件來確定和修改,此種芯片定時功能強,使用靈活。在單片
18、機的定時/計數(shù)器不夠用時,可以考慮進行擴展。,3.3.1 定時/計數(shù)器的結構和工作原理,,,一、定時/計數(shù)器的結構 定時/計數(shù)器的實質是加1計數(shù)器(16位),由高8位和低8位兩個寄存器組成。TMOD是定時/計數(shù)器的工作方式寄存器,確定工作方式和功能;TCON是控制寄存器,控制T0、T1的啟動和停止及設置溢出標志。,,,,,,,,二、定時/計數(shù)器的工作原理,,,,,,加1計數(shù)器輸入的計數(shù)脈沖有兩個來源,一個是由系統(tǒng)的時鐘振蕩器輸出脈沖經(jīng)
19、12分頻后送來;一個是T0或T1引腳輸入的外部脈沖源。每來一個脈沖計數(shù)器加1,當加到計數(shù)器為全1時,再輸入一個脈沖就使計數(shù)器回零,且計數(shù)器的溢出使TCON中TF0或TF1置1,向CPU發(fā)出中斷請求(定時/計數(shù)器中斷允許時)。如果定時/計數(shù)器工作于定時模式,則表示定時時間已到;如果工作于計數(shù)模式,則表示計數(shù)值已滿。 可見,由溢出時計數(shù)器的值減去計數(shù)初值才是加1計數(shù)器的計數(shù)值。,,,設置為定時器模式時,加1計數(shù)器是對內(nèi)部機器周期計數(shù)
20、(1個機器周期等于12個振蕩周期,即計數(shù)頻率為晶振頻率的1/12)。計數(shù)值N乘以機器周期Tcy就是定時時間t 。,,,,,設置為計數(shù)器模式時,外部事件計數(shù)脈沖由T0或T1引腳輸入到計數(shù)器。在每個機器周期的S5P2期間采樣T0、T1引腳電平。當某周期采樣到一高電平輸入,而下一周期又采樣到一低電平時,則計數(shù)器加1,更新的計數(shù)值在下一個機器周期的S3P1期間裝入計數(shù)器。由于檢測一個從1到0的下降沿需要2個機器周期,因此要求被采樣的電平至少要維
21、持一個機器周期。當晶振頻率為12MHz時,最高計數(shù)頻率不超過1/2MHz,即計數(shù)脈沖的周期要大于2 ?s。,,,,,3.3.2 定時/計數(shù)器的控制,,,,,80C51單片機定時/計數(shù)器的工作由兩個特殊功能寄存器控制。TMOD用于設置其工作方式;TCON用于控制其啟動和中斷申請。一、工作方式寄存器TMOD 工作方式寄存器TMOD用于設置定時/計數(shù)器的工作方式,低四位用于T0,高四位用于T1。其格式如下:,,GATE:門控
22、位。GATE=0時,只要用軟件使TCON中的TR0或TR1為1,就可以啟動定時/計數(shù)器工作;GATA=1時,要用軟件使TR0或TR1為1,同時外部中斷引腳或也為高電平時,才能啟動定時/計數(shù)器工作。即此時定時器的啟動多了一條件。 :定時/計數(shù)模式選擇位。 =0為定時模式; =1為計數(shù)模式。M1M0:工作方式設置位。定時/計數(shù)器有四種工作方式,由M1M0進行設置。,,,,,,,,,二、控制寄存器TCO
23、N TCON的低4位用于控制外部中斷,已在前面介紹。TCON的高4位用于控制定時/計數(shù)器的啟動和中斷申請。其格式如下:,TF1(TCON.7):T1溢出中斷請求標志位。T1計數(shù)溢出時由硬件自動置TF1為1。CPU響應中斷后TF1由硬件自動清0。T1工作時,CPU可隨時查詢TF1的狀態(tài)。所以,TF1可用作查詢測試的標志。TF1也可以用軟件置1或清0,同硬件置1或清0的效果一樣。TR1(TCON.6):T1運行控制位。TR1置1時,
24、T1開始工作;TR1置0時,T1停止工作。TR1由軟件置1或清0。所以,用軟件可控制定時/計數(shù)器的啟動與停止。TF0(TCON.5):T0溢出中斷請求標志位,其功能與TF1類同。TR0(TCON.4):T0運行控制位,其功能與TR1類同。,,,,,,,,,3.3.3 定時/計數(shù)器的工作方式 一、方式0 方式0為13位計數(shù),由TL0的低5位(高3位未用)和TH0的8位組成。TL0的低5位溢出時向TH0進位
25、,TH0溢出時,置位TCON中的TF0標志,向CPU發(fā)出中斷請求。,,,,,,定時器模式時有:N=t/ Tcy 計數(shù)初值計算的公式為:定時器的初值還可以采用計數(shù)個數(shù)直接取補法獲得。計數(shù)模式時,計數(shù)脈沖是T0引腳上的外部脈沖。,,,,,門控位GATE具有特殊的作用。當GATE=0時,經(jīng)反相后使或門輸出為1,此時僅由TR0控制與門的開啟,與門輸出1時,控制開關接通,計數(shù)開始;當GATE=1時,由外中斷引腳信號控制或門的輸出,此時控
26、制與門的開啟由外中斷引腳信號和TR0共同控制。當TR0=1時,外中斷引腳信號引腳的高電平啟動計數(shù),外中斷引腳信號引腳的低電平停止計數(shù)。這種方式常用來測量外中斷引腳上正脈沖的寬度。,,,,,二、方式1 方式1的計數(shù)位數(shù)是16位,由TL0作為低8位、TH0作為高8位,組成了16位加1計數(shù)器 。,計數(shù)個數(shù)與計數(shù)初值的關系為:,,,,,,,,,三、方式2 方式2為自動重裝初值的8位計數(shù)方式。,工作方式2特別適合于用作較精確的脈沖信號發(fā)生器。
27、,,計數(shù)個數(shù)與計數(shù)初值的關系為:,,,,,,,,四、方式3 方式3只適用于定時/計數(shù)器T0,定時器T1處于方式3時相當于TR1=0,停止計數(shù)。,工作方式3將T0分成為兩個獨立的8位計數(shù)器TL0和TH0 。,,,,,,,,,3.3.5 定時/計數(shù)器應用舉例 初始化程序應完成如下工作:對TMOD賦值,以確定T0和T1的工作方式。計算初值,并將其寫入TH0、TL0或TH1、TL1。中斷方式時,則對IE賦值,開放中斷。使TR0或
28、TR1置位,啟動定時/計數(shù)器定時或計數(shù)。,,,,,,,,,,例 利用定時/計數(shù)器T1的方式1,產(chǎn)生10ms的定時,并使P1.0引腳上輸出周期為20ms的方波,采用中斷方式,設系統(tǒng)時鐘頻率為12 MHz。解:1、計算計數(shù)初值X:由于晶振為12 MHz,所以機器周期Tcy為1 ?s。所以:N=t/ Tcy =10000/1=10000X=65536-10000=55536=D8F0H即應將D8H送入TH0中,F(xiàn)0H送入TL0中
29、 2、求T1的方式控制字TMOD: M1M0=01,GATE=0,C/T=0,可取方式控制字為01H;,,,,,1、利用定時/計數(shù)器T0從P1.0輸出周期為1s的方波,讓發(fā)光二極管以1HZ閃爍,設晶振頻率為12MHz。。2、利用定時/計數(shù)器T1產(chǎn)生定時時鐘,由P1口控制8個發(fā)光二極管,使8個指示燈依次一個一個閃動,閃動頻率為10次/秒(8個燈依次亮一遍為一個周期),循環(huán)。3、同時用兩個定時器控制蜂鳴器
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 超強悍的單片機教程lesson3-數(shù)碼管靜態(tài)顯示及定時器和中斷應用
- 單片機定時器中斷原理和c語言代碼詳解
- 單片機驅動數(shù)碼管顯示設計-c語言
- 單片機控制數(shù)碼管顯示程序
- 十天學會單片機實例100
- 單片機控制數(shù)碼管顯示數(shù)字
- 單片機數(shù)碼管
- 單片機定時器
- 課程設計---基于定時器的單片機仿真和c語言開發(fā)
- c51單片機03數(shù)碼管
- 單片機原理及應用課程設計--單只數(shù)碼管顯示數(shù)字
- 單片機原理及應用c語言版6mcs-51單片機定時器計數(shù)器
- stm8的c語言編程--16位定時器的中斷應用
- 基于51單片機的led數(shù)碼管動態(tài)顯示
- 定時器和計數(shù)器應用c語言程序
- 單片機實驗二 定時器
- 為什么不給我財富值 單片機 定時器中斷程序
- 用單片機控制數(shù)碼管顯示數(shù)字的設計與研究
- 單片機定時器的應用與誤差糾正
- 單片機定時器的使用總結
評論
0/150
提交評論