版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
定時(shí)器/計(jì)數(shù)器定時(shí)器第1頁(yè)9MCS-51定時(shí)器/計(jì)數(shù)器軟件延時(shí)占據(jù)CPU時(shí)間,CPU效率極低控制中常有定時(shí)任務(wù)(周期性工作)在操作系統(tǒng)中任務(wù)調(diào)度(輪轉(zhuǎn))時(shí)間片功效計(jì)數(shù)要求(繞制線圈,流水線上工件,自動(dòng)包裝機(jī)械)定時(shí)器第2頁(yè)定時(shí)與計(jì)數(shù)原理事件脈沖fosc預(yù)分頻初值存放器溢出回零門+1/-1二進(jìn)制計(jì)數(shù)器加計(jì)數(shù)減計(jì)數(shù)MCS-51計(jì)數(shù)是加還是減?定時(shí)器第3頁(yè)相關(guān)定時(shí)/計(jì)數(shù)器SFR
TMOD:方式字
TCON:控制字
TH0TL0:0#計(jì)數(shù)/初值存放器
TH1TL1:1#計(jì)數(shù)/初值存放器
T2CON:2#控制字
TH2TL2:2#計(jì)數(shù)存放器
RCAP2HRCAP2L:2#初值/捕捉存放器定時(shí)器第4頁(yè)沒(méi)有位尋址功效只能使用字節(jié)傳送MOVTMOD,#..T0,T1方式控制字GATEGATEC/TM1M0C/TM1M0T1控制字段T0控制字段
TMOD89H啟用P3.2/P3.3(分別對(duì)應(yīng)于T0/T1)作為外部控制引腳0為定時(shí)1為計(jì)數(shù)M1,M0為方式0,1,2,3編碼定時(shí)器第5頁(yè)控制字存放器TF1TF0TR0TR1IE1IE0IT0IT1TCON88HT0觸發(fā)控制T1觸發(fā)控制T0溢出標(biāo)志T1溢出標(biāo)志編程指令采取CLRTR0/TR1SETBTR0/TR1定時(shí)器第6頁(yè)方式0,1信號(hào)流圖方式0、方式1計(jì)數(shù)/定時(shí)范圍哪個(gè)更大?相對(duì)于原理框圖,初值存放器在什么地方?定時(shí)器第7頁(yè)方式2信號(hào)流圖本計(jì)數(shù)方式有沒(méi)有初值存放器?計(jì)數(shù)范圍有多大?假如問(wèn)定時(shí)時(shí)長(zhǎng)呢范圍?定時(shí)器第8頁(yè)方式2優(yōu)缺點(diǎn)以晶體頻率12MHz為例,預(yù)分頻÷12,實(shí)際計(jì)數(shù)頻率為1MHz,按時(shí)鐘周期來(lái)看,相當(dāng)于1uS;方式2計(jì)數(shù)范圍是0~255,假如是0,則256次加以后產(chǎn)生溢出,所以溢出周期是256uS=0.256mS=0.000256s;缺點(diǎn):長(zhǎng)時(shí)間定時(shí)、大范圍計(jì)數(shù)是不適當(dāng)。優(yōu)點(diǎn):初值由硬件重裝,所以溢出周期非常準(zhǔn)確。軟件重裝初值難免或多或少延誤,不夠準(zhǔn)確。定時(shí)器第9頁(yè)T0方式3信號(hào)流圖定時(shí)器第10頁(yè)定時(shí)器/計(jì)數(shù)器應(yīng)用經(jīng)初始化,在CPU執(zhí)行程序同時(shí),硬件進(jìn)行計(jì)時(shí)或計(jì)數(shù),形成并行工作;當(dāng)計(jì)時(shí)/計(jì)數(shù)到,則請(qǐng)求CPU處理;如此就提升了CPU執(zhí)行效率,防止了軟件延時(shí)或等候(無(wú)效率程序循環(huán))。程序中初試化硬件包含工作方式設(shè)定,開(kāi)啟;在中止方式工作時(shí),CPU必須開(kāi)中止。定時(shí)器第11頁(yè)T0/T1初始化TMOD方式設(shè)置計(jì)數(shù)初值計(jì)算、TH1(TH0),TL1(TL0)設(shè)置。開(kāi)啟定時(shí)/計(jì)數(shù)。假如需要請(qǐng)求中止,則需要開(kāi)啟中止;以下討論計(jì)數(shù)初值計(jì)算。定時(shí)器第12頁(yè)方式013位計(jì)數(shù),范圍0~213-1;方式116位計(jì)數(shù),范圍0-216-1;方式2,3為8位計(jì)數(shù),范圍0~255;最小定時(shí)單位:fosc/12T0/T1初始化計(jì)數(shù)初值范圍定時(shí)器第13頁(yè)例9-1晶體頻率為12MHz,欲每5ms能向CPU發(fā)出一個(gè)定時(shí)處理請(qǐng)求。試編程完成初始化任務(wù)。解:選T0,定時(shí)工作方式;標(biāo)準(zhǔn)MCS-51單片機(jī)硬件預(yù)分頻是1/12,所以進(jìn)入T0脈沖頻率是f=fosc/12=12/12=1MHz;即計(jì)數(shù)周期為tc=1/f=1us;5ms需要計(jì)數(shù)為5×10-3/1×10-6=5000;選13位方式即可,計(jì)算范圍為213=8192,方式0;計(jì)數(shù)初值為:8192–5000=31923192=0C78h=01100011,11000B(分為高8位與低5位)定時(shí)器第14頁(yè)初始化語(yǔ)句 MOV TMOD,#00000000B ;T0無(wú)GATE,Timer,Mode0MOV TH0,#63H ;01100011BMOV TL0,#18H ;11000BSETB TR0… 定時(shí)器第15頁(yè)另解假如選取方式1,是16位方式,計(jì)算范圍為216=65536,計(jì)數(shù)初值為:65536–5000=61536=F060H初始化語(yǔ)句:MOV TMOD,#00000001h ;T0無(wú)GATE,Timer,Mode0MOV TH0,#0F0HMOV TL0,#60HSETB TR0…
思索:假如是采取T1,應(yīng)該怎樣做?定時(shí)器第16頁(yè)初始化T1,T0時(shí)相互影響TMOD控制著T0和T1方式初試化或重新T0、T1初試化之一時(shí),TMOD必須按字節(jié)尋址,可能影響到另外一個(gè)定時(shí)器工作方式處理方法是兩個(gè)定時(shí)器一并設(shè)置;或者采取以下方法:定時(shí)器第17頁(yè)TMOD訪問(wèn)方法以T0設(shè)置為無(wú)GATE,定時(shí);方式1為例向TMOD送數(shù):MOV A,TMOD ;讀回當(dāng)前TMODANL A,#0F0h ;高4位T1方式保留ORL A,#01h ;低4位設(shè)定方式MOV TMOD,A ;初始化T0不影響T1定時(shí)器第18頁(yè)例9-2以P1.0,P1.1,P1.3分別控制三相步進(jìn)電機(jī)A,B,C三相依次通電,通電規(guī)律為“A-AB-B-BC-C-CA-A-...”,換相時(shí)間間隔為0.5ms(CPU時(shí)鐘為6MHz)。采取T0定時(shí),查詢方式工作。定時(shí)器第19頁(yè)解:CPU時(shí)鐘為6MHz,則計(jì)數(shù)頻率為6MHz/12=0.5MHz,周期為2μs;定時(shí)間隔為0.5ms=500μs;計(jì)數(shù)值為500μs/2μs=250;只需要8位計(jì)數(shù)就夠了,選取方式2。初值為28-250=6定時(shí)器第20頁(yè)通電規(guī)律A-AB-B-BC-C-CA-A-...各相通電規(guī)律能夠用查表方法實(shí)現(xiàn),依據(jù)通電規(guī)律和A,B,C與P1.0,P1.1,P1.2對(duì)應(yīng)關(guān)系,能夠組成數(shù)據(jù)表以下:00000001B,00000011B,00000010B,00000110B,00000100B,00000101B或(10進(jìn)制)1,3,2,6,4,5 定時(shí)器第21頁(yè)算法循環(huán)地、依次取表中數(shù)據(jù)送到P1口為查表設(shè)置一個(gè)指針變量X每次取一數(shù)以后指針加1當(dāng)指針大于等于6就會(huì)到0送數(shù)間隔由T0定時(shí)器決定,能夠查詢TF0。正常情況指針本身小于6,這里為了容錯(cuò)。定時(shí)器第22頁(yè)程序——初始化部分
CSEG AT 0000H
LJMP STARTMAIN_C SEGMENT
CODE
RSEG MAIN_CSTART: MOV P1,#0 ;步進(jìn)電機(jī)各相斷電
MOV TMOD,#00000010B ;T0,無(wú)GATE,定時(shí),方式2
MOV TH0,#6 ;初值存放器初值
MOV TL0,#6 ;第一次計(jì)數(shù)初值,以后重載
SETB TR0 ;開(kāi)啟定時(shí)器T0定時(shí)器第23頁(yè)程序(控制部分)
MOV B,#0 ;表指針清0
MOV DPTR,#TABLE ;表首地址設(shè)置LOOP: JNB TF0,LOOP ;(TF0)=0,等候
CLR TF0
MOV A,B
MOVC A,@A+DPTR ;查表指令
MOV P1,A
;送數(shù),步進(jìn)電機(jī)通電相序改變
INC B ;表指針+1調(diào)整
MOV A,#5 ;表指針比較值
CLR C
SUBB A,B ;減法,比較
JNC LOOP ;無(wú)進(jìn)位,(B)≤5,繼續(xù)
MOV B,#0 ;不然,(B)←0
SJMP LOOPTABLE: DB 1,3,2,6,4,5 ;通電相序表
END定時(shí)器第24頁(yè)例9-3在某牛奶自動(dòng)灌裝線上,每檢測(cè)到20瓶,產(chǎn)生一個(gè)裝箱指令脈沖,使相關(guān)設(shè)備動(dòng)作。試用MCS-51型微控制器計(jì)數(shù)器實(shí)現(xiàn)該控制要求。檢測(cè)信號(hào)從T1引腳(P3.5)輸入,指令脈沖從P1.2輸出。定時(shí)器第25頁(yè)解:自動(dòng)灌裝線上裝有傳感裝置,每檢測(cè)到一瓶牛奶向T1引腳發(fā)送一個(gè)脈沖信號(hào);使用計(jì)數(shù)功效,可實(shí)現(xiàn)該控制要求;選T1方式2;初值為256-20=236=ECh。
定時(shí)器第26頁(yè)程序:
CSEG AT0000H
LJMP STARTMC SEGMENT MC
RSEG MCSTART:CLR T1 ;去除輸出
MOVTMOD,#60H ;T1,無(wú)GATE,計(jì)數(shù),方式2
MOVTL1,#0ECH ;初值
MOVTH1,#0ECH ;初值
SETBTR1 ;開(kāi)啟LOOP:WAIT:JBCTF1,OUT
AJMPWAITOUT: SETBP1.2
NOP NOP NOP CLRP1.2
AJMPLOOP
END定時(shí)器第27頁(yè)MOV TMOD,#00000001BMOV TH0,#1FhMOV TL0,#00hSETB TR0MOV COUNT,#0 ;計(jì)數(shù)清0用MCS-51MCU組成一個(gè)石英時(shí)鐘:fosc=11.0592MHz,每秒需要計(jì)數(shù)921600次;1/16秒需要計(jì)數(shù)57600次,在T0或T1允許范圍之內(nèi);硬件計(jì)數(shù)每個(gè)周期57600個(gè)時(shí)鐘,再用軟件與之結(jié)合,對(duì)一個(gè)變量進(jìn)行累加,計(jì)滿16就是一秒;60秒為一分,60分為1小時(shí),…計(jì)數(shù)時(shí)間間隔初值計(jì)算65536-57600=7936=1F00h,高8位是1Fh,低8位是00h,方式1、定時(shí)、結(jié)累計(jì)數(shù)變量定時(shí)器第28頁(yè)例采取雙積分A/D,芯片ICL7135與單片機(jī)怎樣連接?電壓輸入在BUSY為高電平期間,對(duì)CLK計(jì)數(shù),設(shè)該計(jì)數(shù)值為N,則(N-10000)與輸入電壓成正比。[(N-10000)小于0]T0INT0(P3.2)AT89S51定時(shí)/計(jì)數(shù)?用GATE?什么方式?MOVTMOD,#????????BCLKVinBUSY7135CLK怎樣利用用MCS-51系列單片機(jī)取得這個(gè)計(jì)數(shù)、而且由此計(jì)算得到當(dāng)前電壓值?雙積分A/D原理:電容電壓正反向積分定時(shí)器第29頁(yè)ADVAL SEGMENT DATA ;定義數(shù)據(jù)段 RSEG ADVAL ;為可相對(duì)段RESULT: DS 2 ;A/D結(jié)果保留兩個(gè)字節(jié) CSEG AT0000H ;程序起點(diǎn),絕對(duì)定位 LJMP START ;跳轉(zhuǎn)到相對(duì)段繼續(xù)執(zhí)行AD7135 SEGMENT CODE RSEG AD7135START: MOV TMOD,#00001101B ;T0帶GATE,Count,方式1 MOV A,#0 ;初值初始化 MOV TH0,A MOV TL0,A MOV RESULT,A MOV RESULT+1,A
定時(shí)器第30頁(yè)BIG_LOOP: JB INT0,BIG_LOOP ;等候INT0為低
SETB TR0 ;開(kāi)啟T0計(jì)數(shù) WAIT_H: JNB INT0,WAIT_H ;等候直到INT變WAIT_L: JB INT0,WAIT_L ;等候直到INT又低 CLR TR0 CLR C MOV A,TL0 ;讀取低位計(jì)數(shù)值
SUBB A,#10H ;10000=2710H,減低位
MOV RESULT+1,A ;保留結(jié)果低位
MOV A,TH0
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度醫(yī)院醫(yī)療廢物處理設(shè)施建設(shè)合同4篇
- 2025年度個(gè)人創(chuàng)業(yè)貸款合同示范文本8篇
- 二零二五年度美容院美容護(hù)膚品生產(chǎn)股份合作合同4篇
- 二零二五版木質(zhì)家具定制設(shè)計(jì)與生產(chǎn)加工合同3篇
- 二零二五年度電子商務(wù)平臺(tái)標(biāo)志設(shè)計(jì)及用戶體驗(yàn)合同3篇
- 二零二五年度托盤租賃與供應(yīng)鏈金融結(jié)合合同范本3篇
- 二零二五年度昌平區(qū)食堂員工激勵(lì)與績(jī)效考核合同3篇
- 2025年度汽車租賃與品牌合作推廣合同范本3篇
- 二零二五年度城市綠化工程承包合同14篇
- 2025年度線上線下聯(lián)動(dòng)大型促銷活動(dòng)合作合同3篇
- 邊防通行證委托書
- 《浸沒(méi)式液冷冷卻液選型要求》
- 我的消防文員職業(yè)規(guī)劃
- 2024年世界職業(yè)院校技能大賽高職組“市政管線(道)數(shù)字化施工組”賽項(xiàng)考試題庫(kù)
- 介紹蝴蝶蘭課件
- CSC資助出國(guó)博士聯(lián)合培養(yǎng)研修計(jì)劃英文-research-plan
- 《環(huán)境管理學(xué)》教案
- 《阻燃材料與技術(shù)》課件 第5講 阻燃塑料材料
- 2025年蛇年年度營(yíng)銷日歷營(yíng)銷建議【2025營(yíng)銷日歷】
- (一模)寧波市2024學(xué)年第一學(xué)期高考模擬考試 數(shù)學(xué)試卷(含答案)
- 金蛇納瑞企業(yè)2025年會(huì)慶典
評(píng)論
0/150
提交評(píng)論