第6講C51定時(shí)器計(jì)數(shù)器_第1頁(yè)
第6講C51定時(shí)器計(jì)數(shù)器_第2頁(yè)
第6講C51定時(shí)器計(jì)數(shù)器_第3頁(yè)
第6講C51定時(shí)器計(jì)數(shù)器_第4頁(yè)
第6講C51定時(shí)器計(jì)數(shù)器_第5頁(yè)
已閱讀5頁(yè),還剩40頁(yè)未讀 繼續(xù)免費(fèi)閱讀

VIP免費(fèi)下載

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

文檔簡(jiǎn)介

1、LOGO 任務(wù)三流水燈定時(shí)控制任務(wù)三流水燈定時(shí)控制v 教學(xué)內(nèi)容教學(xué)內(nèi)容 MCS-51的中斷系統(tǒng)的中斷系統(tǒng) MCS-51的定時(shí)器的定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器v 教學(xué)目標(biāo)教學(xué)目標(biāo)掌握中斷技術(shù)的應(yīng)用掌握中斷技術(shù)的應(yīng)用掌握定時(shí)器掌握定時(shí)器/計(jì)數(shù)器的應(yīng)用計(jì)數(shù)器的應(yīng)用本任務(wù)本任務(wù)本講主要內(nèi)容本講主要內(nèi)容定時(shí)器定時(shí)器/計(jì)數(shù)器的結(jié)構(gòu)及工作原理計(jì)數(shù)器的結(jié)構(gòu)及工作原理1方式方式寄存器和控制寄存器寄存器和控制寄存器2定時(shí)器定時(shí)器/計(jì)數(shù)器的工作方式計(jì)數(shù)器的工作方式3定時(shí)器定時(shí)器/計(jì)數(shù)器應(yīng)用舉例計(jì)數(shù)器應(yīng)用舉例4控制系統(tǒng)中實(shí)現(xiàn)定時(shí)控制系統(tǒng)中實(shí)現(xiàn)定時(shí)1 1、軟件定時(shí)延時(shí)函數(shù)、軟件定時(shí)延時(shí)函數(shù)2 2、硬件定時(shí)例如:、硬件定時(shí)例如:

2、5555553 3、可編程定時(shí)器例如:、可編程定時(shí)器例如:8253 DS13028253 DS1302MCSMCS5151子系列:子系列:T0T0、T1T1MCSMCS5252子系列:子系列:T0T0、T1T1、T2T2v可實(shí)現(xiàn)定時(shí)、計(jì)數(shù)功能,有利于實(shí)時(shí)控制可實(shí)現(xiàn)定時(shí)、計(jì)數(shù)功能,有利于實(shí)時(shí)控制v不占用不占用CPU時(shí)間時(shí)間v定時(shí)精度高,修改方便定時(shí)精度高,修改方便AT89SAT89S系列有看門狗系列有看門狗計(jì)數(shù)器計(jì)數(shù)器(WatchDog Timer)(WatchDog Timer)v一種計(jì)數(shù)裝置一種計(jì)數(shù)裝置v計(jì)數(shù)內(nèi)部的時(shí)鐘脈沖定時(shí)器計(jì)數(shù)內(nèi)部的時(shí)鐘脈沖定時(shí)器v計(jì)數(shù)外部的脈沖計(jì)數(shù)器計(jì)數(shù)外部的脈沖計(jì)數(shù)

3、器v在應(yīng)用時(shí)可采用中斷方式,在應(yīng)用時(shí)可采用中斷方式,也可采用查詢方式也可采用查詢方式8051的定時(shí)器的定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器(timer/counter)一、定時(shí)一、定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)及工作原理計(jì)數(shù)器的結(jié)構(gòu)及工作原理1 1、定時(shí)、定時(shí)/計(jì)數(shù)器的結(jié)構(gòu)計(jì)數(shù)器的結(jié)構(gòu)微微處處理理器器TH1TL1TH0TL0TCONTMOD工作工作方式方式工作工作方式方式T1T0P3.5(T1)P3.4(T0) 結(jié)構(gòu)組成部分結(jié)構(gòu)組成部分 6兩個(gè)兩個(gè)16位的二進(jìn)制定時(shí)位的二進(jìn)制定時(shí)/計(jì)數(shù)器計(jì)數(shù)器T0、T1T0/T1分別由兩個(gè)分別由兩個(gè)8位的計(jì)數(shù)器組成,均屬位的計(jì)數(shù)器組成,均屬SFR寄存器寄存器T0由由TH0、TL0構(gòu)成,字

4、節(jié)地址為構(gòu)成,字節(jié)地址為8CH、8AHT1由由TH1、TL1構(gòu)成,字節(jié)地址為構(gòu)成,字節(jié)地址為8DH、8BH6相關(guān)的控制寄存器相關(guān)的控制寄存器方式寄存器方式寄存器TMOD控制寄存器控制寄存器TCON2 2、定時(shí)定時(shí)/計(jì)數(shù)器的工作原理計(jì)數(shù)器的工作原理定時(shí)功能定時(shí)功能 對(duì)對(duì)片內(nèi)片內(nèi)機(jī)器周期進(jìn)行計(jì)數(shù),即每個(gè)機(jī)器周期機(jī)器周期進(jìn)行計(jì)數(shù),即每個(gè)機(jī)器周期產(chǎn)生一產(chǎn)生一 個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)加個(gè)計(jì)數(shù)脈沖,計(jì)數(shù)加1。實(shí)時(shí)控制、實(shí)時(shí)采樣、定時(shí)控制等實(shí)時(shí)控制、實(shí)時(shí)采樣、定時(shí)控制等計(jì)數(shù)功能計(jì)數(shù)功能 對(duì)對(duì)片外片外從從T0(P3.4)、)、T1(P3.5)引腳輸入的外)引腳輸入的外部脈沖信號(hào)進(jìn)行計(jì)數(shù),下降沿計(jì)數(shù)加部脈沖信號(hào)進(jìn)行計(jì)

5、數(shù),下降沿計(jì)數(shù)加1。計(jì)數(shù)頻率為。計(jì)數(shù)頻率為晶振頻率的晶振頻率的1/24生產(chǎn)線上產(chǎn)品計(jì)數(shù)、檢測(cè)電機(jī)轉(zhuǎn)速等功能生產(chǎn)線上產(chǎn)品計(jì)數(shù)、檢測(cè)電機(jī)轉(zhuǎn)速等功能振蕩器振蕩器12 加加 1計(jì)數(shù)器計(jì)數(shù)器TFx申請(qǐng)申請(qǐng)中斷中斷TX端端C/T=0C/T=1控制信號(hào)控制信號(hào)TRx定時(shí)定時(shí)/計(jì)數(shù)器初值預(yù)置計(jì)數(shù)器初值預(yù)置初值初值X的計(jì)算方法的計(jì)算方法 設(shè)定時(shí)器設(shè)定時(shí)器/計(jì)數(shù)器最大值為計(jì)數(shù)器最大值為M, 計(jì)數(shù)值為計(jì)數(shù)值為N, 初值為初值為X, 晶振頻率晶振頻率fosc,則,則計(jì)數(shù)器初始值:計(jì)數(shù)器初始值: XMN定時(shí)器初始值:定時(shí)器初始值: XM定時(shí)時(shí)間定時(shí)時(shí)間/Tcy問(wèn)問(wèn)1 1:要求檢測(cè)要求檢測(cè)到到100100個(gè)脈沖,個(gè)脈沖,

6、發(fā)中斷請(qǐng)求,如發(fā)中斷請(qǐng)求,如何設(shè)置初值?何設(shè)置初值?問(wèn)問(wèn)2:2:定時(shí)器定時(shí)器/ /計(jì)數(shù)器為計(jì)數(shù)器為8 8位加位加1 1計(jì)數(shù)器,要求每隔計(jì)數(shù)器,要求每隔0.1ms0.1ms,發(fā)一次中斷請(qǐng)求發(fā)一次中斷請(qǐng)求( (機(jī)器周期機(jī)器周期1us),1us),如何設(shè)置初值?如何設(shè)置初值?二、方式寄存器和控制寄存器二、方式寄存器和控制寄存器 1、方式控制寄存器、方式控制寄存器TMODSFR寄存器,地址寄存器,地址89H設(shè)定設(shè)定T0、T1的工作方式的工作方式只能字節(jié)尋址只能字節(jié)尋址GATEM1 M0GATEM1M0T/C Timer1 Timer0T/C定時(shí)定時(shí)/計(jì)數(shù)模式選擇位計(jì)數(shù)模式選擇位功能選擇位功能選擇位門控

7、位門控位定時(shí)器工作方式選擇定時(shí)器工作方式選擇M1和和M0工作方式選擇位工作方式選擇位 M1 M0方式方式說(shuō)明說(shuō)明0 0013位計(jì)數(shù)器(位計(jì)數(shù)器(THTH的高的高8 8位和位和TLTL的低的低5 5位位) 0 1 116位計(jì)數(shù)器位計(jì)數(shù)器 1 0 2自動(dòng)重裝入初值的自動(dòng)重裝入初值的8 8位計(jì)數(shù)器位計(jì)數(shù)器 1 1 3定時(shí)器定時(shí)器0 0:分成兩個(gè)獨(dú)立的:分成兩個(gè)獨(dú)立的8 8位計(jì)數(shù)器位計(jì)數(shù)器定時(shí)器定時(shí)器1 1: 停止計(jì)數(shù)停止計(jì)數(shù)功能選擇位和門控位功能選擇位和門控位C/ 定時(shí)定時(shí)/計(jì)數(shù)功能選擇位計(jì)數(shù)功能選擇位 為為“0”,定時(shí)器,定時(shí)器 為為“1”,計(jì)數(shù)器,計(jì)數(shù)器GATE:門控位,定義:門控位,定義T1/

8、T0的啟動(dòng)方式的啟動(dòng)方式 為為0 0,非門控方式,非門控方式( (內(nèi)部啟動(dòng)內(nèi)部啟動(dòng)) ): TR0/1=1TR0/1=1,啟動(dòng)定時(shí)器工作,啟動(dòng)定時(shí)器工作 TR0/1=0TR0/1=0,停止定時(shí)器工作,停止定時(shí)器工作 為為1 1,門控方式,門控方式( (外部啟動(dòng)外部啟動(dòng)) ) TR0/1=1 TR0/1=1且引腳且引腳INT0/1INT0/1 =1=1才啟動(dòng)才啟動(dòng)T2、狀態(tài)控制寄存器、狀態(tài)控制寄存器TCONSFR寄存器,地址寄存器,地址88H即參與定時(shí)控制又參與中斷控制即參與定時(shí)控制又參與中斷控制與定時(shí)控制相關(guān)的有與定時(shí)控制相關(guān)的有4位位TF1 TR1 TF0 TR0 IE1 IT1 IE0 I

9、T0 &TF1/TF0:當(dāng)T1/T0計(jì)數(shù)溢出時(shí),該位置1&TR1/TR0:T1/T0運(yùn)行控制位。置1:啟動(dòng)T1/T0二、方式寄存器和控制寄存器二、方式寄存器和控制寄存器 1、工作方式、工作方式0 M1M0=?作定時(shí)器:作定時(shí)器:TMOD= ?作計(jì)數(shù)器:作計(jì)數(shù)器:TMOD= ?三、定時(shí)器三、定時(shí)器/計(jì)數(shù)器工作方式計(jì)數(shù)器工作方式 00000000=0 x0000000100=0 x0413位計(jì)數(shù)器位計(jì)數(shù)器 TH:8位位 TL:低:低5位,高位,高3位不用位不用00方式方式0的工作原理的工作原理定時(shí)器定時(shí)器/ /計(jì)數(shù)器初始化編程計(jì)數(shù)器初始化編程定時(shí)器定時(shí)器/ /計(jì)數(shù)器有兩種應(yīng)用方式:

10、計(jì)數(shù)器有兩種應(yīng)用方式:1.設(shè)定工作方式(對(duì)TMOD寫工作方式控制字)2.裝入初值(TH0/TL0或TH1/TL1)3.啟動(dòng)定時(shí)器/計(jì)數(shù)器(置位TR0/TR1)4.中斷設(shè)定(置位ET0/ET1、EA、IP)5.中斷服務(wù)函數(shù)1.-3.同中斷方式的1-34.判斷定時(shí)器/計(jì)數(shù)器的標(biāo)志位TF1/TF0為1或0,以決定程序流程中斷方式中斷方式查詢方式查詢方式方式方式0的應(yīng)用的應(yīng)用計(jì)數(shù)初值計(jì)數(shù)初值最大計(jì)數(shù)值為最大計(jì)數(shù)值為213=8192定時(shí)時(shí)間:定時(shí)時(shí)間:T=(213-T0的初值)的初值)Tcy 計(jì)數(shù)個(gè)數(shù):計(jì)數(shù)個(gè)數(shù): C=213 - T0的初值的初值 方式方式0 0使用范例使用范例1 1解:解:1)TMOD

11、初始化初始化 2)計(jì)數(shù)初值)計(jì)數(shù)初值 3)啟動(dòng))啟動(dòng) 4)中斷)中斷?查詢查詢 例例1:已知單片機(jī)晶振頻率:已知單片機(jī)晶振頻率6MHz,利用,利用T0的方的方式式0在在P1.0引腳輸出周期為引腳輸出周期為500us的方波的方波計(jì)數(shù)初值計(jì)數(shù)初值=213 -欲計(jì)數(shù)脈沖數(shù)欲計(jì)數(shù)脈沖數(shù)=213 -T/Tcy =213-250/2=1F83H TH1=0 xfc,TL1=0 x03中斷方式程序清單中斷方式程序清單#includesbit P10=P10;void main()TMOD=0; TH0=0 xfc;TL0=0X03;TR0=1;EA=1;ET0=1;while(1) void itr_tim

12、er0(void) interrupt 1P10=P10;TH0=0 xfc;TL0=0 x03;采用查詢方式采用查詢方式如何編程?如何編程?方式方式0 0使用范例使用范例2 2例例2:?jiǎn)纹瑱C(jī)晶振頻率:?jiǎn)纹瑱C(jī)晶振頻率12MHz,利用,利用T1的方式的方式0實(shí)現(xiàn)實(shí)現(xiàn)1s延時(shí),每隔延時(shí),每隔1s時(shí)間時(shí)間P1.0引腳翻轉(zhuǎn)一次引腳翻轉(zhuǎn)一次#includesbit P10=P10;unsigned int c=200;void main( )TMOD=0; TH1=0 x63;TL1=0X18;TR1=1;EA=1;ET1=1;while(1) void itr_timer1(void) interru

13、pt 3c-;if(!c)c=200; P10=!P10; TH1=0 x63;TL1=0 x18;2、工作方式、工作方式1 M1M0=?作定時(shí)器:作定時(shí)器:TMOD= ?作計(jì)數(shù)器:作計(jì)數(shù)器:TMOD= ?三、定時(shí)器三、定時(shí)器/計(jì)數(shù)器工作方式計(jì)數(shù)器工作方式00000001=0 x0100000101=0 x0516位計(jì)數(shù)器位計(jì)數(shù)器 TH:8位位 TL:8位位0116位計(jì)數(shù)器位計(jì)數(shù)器,邏輯結(jié)構(gòu)框圖如下:邏輯結(jié)構(gòu)框圖如下:振蕩器振蕩器12TF0中斷中斷T0C/T=0C/T=1GATEINT0端端TR0 TH0(8位位) TL0(8位位)控制控制l&l&EAET0&2、工作方

14、式、工作方式1三、定時(shí)器三、定時(shí)器/計(jì)數(shù)器工作方式計(jì)數(shù)器工作方式 方式方式1 1使用范例使用范例例例1:已知單片機(jī)晶振頻率:已知單片機(jī)晶振頻率6MHz,利用,利用T0的方的方式式1在在P1.0引腳輸出周期為引腳輸出周期為500us的方波的方波例例2:?jiǎn)纹瑱C(jī)晶振頻率:?jiǎn)纹瑱C(jī)晶振頻率12MHz,利用,利用T1的方式的方式1實(shí)現(xiàn)實(shí)現(xiàn)1s延時(shí),每隔延時(shí),每隔1s時(shí)間時(shí)間P1.0引腳翻轉(zhuǎn)一次引腳翻轉(zhuǎn)一次3、工作方式、工作方式2 M1M0=?作定時(shí)器:作定時(shí)器:TMOD= ?作計(jì)數(shù)器:作計(jì)數(shù)器:TMOD= ?三、定時(shí)器三、定時(shí)器/計(jì)數(shù)器工作方式計(jì)數(shù)器工作方式 00000010=0 x0200000110=

15、0 x06自動(dòng)重裝載的自動(dòng)重裝載的8位計(jì)數(shù)器位計(jì)數(shù)器 101/12T0INT0GATETR01fosc1&TF0TL0&TH0溢 出T0中 斷問(wèn)題:從圖中可以看出問(wèn)題:從圖中可以看出來(lái)哪個(gè)寄存器是計(jì)數(shù)寄來(lái)哪個(gè)寄存器是計(jì)數(shù)寄存器,哪個(gè)寄存器始終存器,哪個(gè)寄存器始終存放的是計(jì)數(shù)初值?存放的是計(jì)數(shù)初值?方式方式2使用范例使用范例某啤酒自動(dòng)生產(chǎn)線,需要每生產(chǎn)某啤酒自動(dòng)生產(chǎn)線,需要每生產(chǎn)12瓶執(zhí)行裝箱操作,瓶執(zhí)行裝箱操作,將生產(chǎn)出的啤酒自動(dòng)裝箱,用單片機(jī)實(shí)現(xiàn)該控制要求。將生產(chǎn)出的啤酒自動(dòng)裝箱,用單片機(jī)實(shí)現(xiàn)該控制要求。分析:如果啤酒生產(chǎn)線上裝有傳感裝置,每檢測(cè)一分析:如果啤酒生產(chǎn)線上裝有傳

16、感裝置,每檢測(cè)一瓶啤酒就向單片機(jī)發(fā)送一個(gè)脈沖信號(hào),使用計(jì)數(shù)功瓶啤酒就向單片機(jī)發(fā)送一個(gè)脈沖信號(hào),使用計(jì)數(shù)功能就可實(shí)現(xiàn)該控制要求。選定用能就可實(shí)現(xiàn)該控制要求。選定用T1方式方式2使用范例使用范例某啤酒自動(dòng)生產(chǎn)線,需要每生產(chǎn)某啤酒自動(dòng)生產(chǎn)線,需要每生產(chǎn)12瓶執(zhí)行裝箱操作,瓶執(zhí)行裝箱操作,將生產(chǎn)出的啤酒自動(dòng)裝箱,用單片機(jī)實(shí)現(xiàn)該控制要求。將生產(chǎn)出的啤酒自動(dòng)裝箱,用單片機(jī)實(shí)現(xiàn)該控制要求。1)TMOD初始化初始化2)計(jì)數(shù)初值)計(jì)數(shù)初值3)啟動(dòng))啟動(dòng)4)中斷初始化設(shè)置)中斷初始化設(shè)置5)中斷服務(wù)函數(shù))中斷服務(wù)函數(shù)TMOD0 x60;TH1=TL1=0 xf4;TR11;EA=1; ET1=1;void isr

17、_time1(void) interrupt 3 方式方式2 2使用范例使用范例#includesbit p37=P37;void main( )TMOD=0 x60; TH1=0 xf4;TL1=0Xf4;TR1=1;EA=1;ET1=1;P37=1;while(1);/驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)的程序驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)的程序void isr_timer1(void) interrupt 3int i,time=600;P37=0; /驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)驅(qū)動(dòng)電機(jī)轉(zhuǎn)動(dòng)while(time -)/假設(shè)裝箱時(shí)間固定假設(shè)裝箱時(shí)間固定for(i=500;i0;i-);P37=1; /裝箱結(jié)束電機(jī)停止轉(zhuǎn)動(dòng)裝箱結(jié)束電機(jī)停止轉(zhuǎn)動(dòng)4、

18、工作方式、工作方式3 -只有只有T0有此工作方式有此工作方式 M1M0=?作定時(shí)器:作定時(shí)器:TMOD= ?作計(jì)數(shù)器:作計(jì)數(shù)器:TMOD= ?三、定時(shí)器三、定時(shí)器/計(jì)數(shù)器工作方式計(jì)數(shù)器工作方式 00000011=0 x0300000111=0 x07T0為為2個(gè)個(gè)8位計(jì)數(shù)器:位計(jì)數(shù)器:TH0,TL0T1停止計(jì)數(shù),等價(jià)于執(zhí)行了停止計(jì)數(shù),等價(jià)于執(zhí)行了TR1=0; 11T0和和T1的設(shè)置和使用不同的設(shè)置和使用不同4.工作方式工作方式3振蕩器振蕩器12TF1T1中斷中斷 TH0(8位位)TR1控制控制T0端端C/T=0C/T=1GATEINT0端端TR0振蕩器振蕩器12TF0T0中斷中斷 TL0(8位

19、位)控制控制ll&EAET0僅作定時(shí)僅作定時(shí)器用器用! !T0兩個(gè)兩個(gè)8位的計(jì)數(shù)器位的計(jì)數(shù)器PTL0:使用:使用T0原有控制資源原有控制資源(C/T、GATE、TR0、TF0、P3.4腳、腳、INT0腳,功能與方式腳,功能與方式0/1相同相同PTH0:占用:占用T1的的TR1、TF1及及T1的中斷,只能對(duì)片內(nèi)機(jī)的中斷,只能對(duì)片內(nèi)機(jī)器周期脈沖計(jì)數(shù),器周期脈沖計(jì)數(shù), 作作8位定時(shí)器位定時(shí)器T0初值計(jì)算同方式初值計(jì)算同方式2TL01/12INT0GATETR0T0fosc11&TF0&溢出T0中斷TF1fosc1/12TR1TH0T1中斷4、工作方式、工作方式3T0工作方式工

20、作方式3時(shí)時(shí)T1的工作:的工作: T0方式方式3時(shí)時(shí) ,T1仍然可工作于方式仍然可工作于方式02,C/ 控制位仍可使控制位仍可使T1工作在定時(shí)器工作在定時(shí)器或計(jì)數(shù)器方式,只是由于其或計(jì)數(shù)器方式,只是由于其TR1、TF1被被T0的的TH0占用,因而沒(méi)有計(jì)數(shù)溢出標(biāo)志可占用,因而沒(méi)有計(jì)數(shù)溢出標(biāo)志可供使用,計(jì)數(shù)溢出時(shí)只能將輸出結(jié)果送至串供使用,計(jì)數(shù)溢出時(shí)只能將輸出結(jié)果送至串行口,即用作串行口波特率發(fā)生器。行口,即用作串行口波特率發(fā)生器。 T0工作在方式工作在方式3時(shí),時(shí),T1可工作于方式可工作于方式2,因定時(shí)初值能自動(dòng)恢復(fù),用作波特率發(fā)生器因定時(shí)初值能自動(dòng)恢復(fù),用作波特率發(fā)生器更為合適。若要停止更為合

21、適。若要停止T1,只需送一個(gè)設(shè)其為,只需送一個(gè)設(shè)其為方式方式3的方式字。的方式字。T4、工作方式、工作方式3方式方式3使用范例使用范例例例:已知系統(tǒng)晶振已知系統(tǒng)晶振12MHz,試用定時(shí)器,試用定時(shí)器0的的方式方式3實(shí)現(xiàn)實(shí)現(xiàn)1s的延時(shí)的延時(shí)vTMOD初始化初始化v設(shè)置初值設(shè)置初值TH0作為定時(shí)器,定時(shí)時(shí)間作為定時(shí)器,定時(shí)時(shí)間250us; 初值初值28250=06HTL0作為計(jì)數(shù)器,計(jì)數(shù)作為計(jì)數(shù)器,計(jì)數(shù)200次;次;初值初值28200=38Hv引進(jìn)變量引進(jìn)變量使使TL0計(jì)數(shù)滿后該變量加計(jì)數(shù)滿后該變量加1,直至,直至20則為則為1s#includesbit P00=P00;sbit P34=P34;

22、unsigned char count;void delay();main() TMOD=7; TH0=0 x06;TL0=0 x38; TR0=1;TR1=1; while(1) P00=P00; delay(); void delay() count=0; while(count20) while(TF0=0) while(TF1=0); P34=0;TH0=6;TF1=0; P34=1; TL0=0 x38; TF0=0; count+; 案例案例6 以定時(shí)方式控制簡(jiǎn)單流水燈以定時(shí)方式控制簡(jiǎn)單流水燈 已知系統(tǒng)晶振已知系統(tǒng)晶振6MHz,采用定時(shí)器,采用定時(shí)器T0的工的工作方式作方式1實(shí)現(xiàn)延

23、時(shí),控制實(shí)現(xiàn)延時(shí),控制P0口的口的8只發(fā)光二極管只發(fā)光二極管以以100ms的間隔循環(huán)點(diǎn)亮。的間隔循環(huán)點(diǎn)亮。定時(shí)器定時(shí)器T0初值:初值:定時(shí)時(shí)間:tmax=655362s=131.072,取100msT0 的 初值:=216-100000s/2s =15536 =3CB0H TMOD =0000 0001B =01H #include#includevoid isr_time0(void);unsigned char cword=0 x01;void main() TMOD=1; TH0=-500008; TL0=-50000; TR0=1;EA=1;ET0=1; P0=cword; while

24、(1);void isr_time0() interrupt 1 TH0=-500008; TL0=-50000; cword=_crol_(cword,1); P0=cword;單片機(jī)控制流水燈單片機(jī)控制流水燈要求:要求:8只發(fā)光二極管以只發(fā)光二極管以1s間隔循環(huán)點(diǎn)亮。間隔循環(huán)點(diǎn)亮。已知:系統(tǒng)晶振為已知:系統(tǒng)晶振為6MHz。分析:分析:TCY?工作方式?工作方式0、1、2、3下定時(shí)時(shí)下定時(shí)時(shí)間最多為多少?能不能先定時(shí)一個(gè)較小的時(shí)間,間最多為多少?能不能先定時(shí)一個(gè)較小的時(shí)間,再循環(huán)適當(dāng)?shù)拇螖?shù),從而實(shí)現(xiàn)再循環(huán)適當(dāng)?shù)拇螖?shù),從而實(shí)現(xiàn)1s延時(shí)?延時(shí)?單片機(jī)控制流水燈單片機(jī)控制流水燈void isr_t

25、ime0() interrupt 1 TH0=0 x3c;TL0=0 xb0;count-;if(count=0) output=1; if(output!=0 xfe) output|=1; P1=output; count=10; #includeunsigned char count=10, output=0 xfe;void main() TMOD=1; TH0=0 x3c; TL0=0 xb0; TR0=1; EA=1; ET0=1; P1=output; while(1) CKQQD11+5VUPDOWN830pF30pFT+5VR+5VSTARTOEABCD0D7IN0CLKAD

26、C0809P1P2P3.7EA+5VINT0INT1ALEP0P3.0P3.1XTAL1XTAL2VCCRST80C51220VM壓縮機(jī)指示燈繼電器直流電流220V指示燈10F1008.2kR8R888空調(diào)制冷系統(tǒng)案例空調(diào)制冷系統(tǒng)案例輸出口啟停壓縮機(jī)輸出口啟停壓縮機(jī)定時(shí)檢測(cè)室內(nèi)溫度定時(shí)檢測(cè)室內(nèi)溫度按鍵中斷設(shè)溫度按鍵中斷設(shè)溫度輸出口顯示溫度輸出口顯示溫度練習(xí)練習(xí)v定時(shí)器定時(shí)器/計(jì)數(shù)器的工作方式通過(guò)()寄存器計(jì)數(shù)器的工作方式通過(guò)()寄存器編程設(shè)定編程設(shè)定v定時(shí)器定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器1的中斷號(hào)為()的中斷號(hào)為()v若晶振為若晶振為6MHz,定時(shí)器,定時(shí)器/計(jì)數(shù)器最大的定計(jì)數(shù)器最大的定時(shí)時(shí)間是()時(shí)時(shí)間是()v8位自動(dòng)重裝載的定時(shí)器位自動(dòng)重裝載的定時(shí)器/計(jì)數(shù)器工作在方計(jì)數(shù)器工作在方式()式()v單片機(jī)振蕩頻率為單片機(jī)振蕩頻率為6MHz,定時(shí)器,定時(shí)器/計(jì)數(shù)器計(jì)數(shù)器工作在方式工作在方式1需要定時(shí)需要定時(shí)1ms,則定時(shí)器初值則定時(shí)器初值應(yīng)為()應(yīng)為()作業(yè):作業(yè):1、已知晶振為、已知晶振為12MHz,試編程使,試編程使8051的的P1.0和和P1.1分別輸出周期為分別輸出周期為2ms和和500ms的方波的方波2、已知晶振為、已知晶振為6MHz,試

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論