下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、第六章 定時器,6.1 .1 定時器模塊概述 S12定時器模塊在標準定時器基礎上增加了一些新功能,稱為增強型定時器模塊(Enhanced Capture Timer Module, ECT) 有一下特點: 4個具有16位緩沖寄存器(TCnH)的輸入捕捉通道; 4個8位脈沖累加器可以通過級聯(lián)形成2個16位的脈沖累加器(PA,PB); 1個具有4位預分頻器的16位遞減模數(shù)計數(shù)器; 4個可選的延遲計數(shù)器用來增強輸入抗干擾能力。,S12 定時器的基本結(jié)構(gòu),PT0-PT7: IC0-IC7,OC0-0C7, ICn、OCn。 TCNT: 16位計數(shù)器,加1,不能任意改變計數(shù)值,只讀; PA ,PB:16
2、位脈沖累加器,PB無中斷溢出功能; ICO0-ICO7具有中斷功能 ,由CnI控制,CnF 標志。,重慶大學通信工程學院 王毅 王永東,Pin Logic,Delay Counter,輸出比較寄存器,輸入捕捉寄存器,脈沖累加器 PA1,保持寄存器PA1H,保持寄存器TC1H,預分頻1,Bus Clock,CH1,預分頻2,0,控制邏輯,Control Bits,Reset,定時器結(jié)構(gòu),兩個計時基礎 :MAIN TIMER , 具有預分頻器: 分別是 1-128 輸入捕捉、輸出比較寄存器:TCn、脈沖累加器PAn 輸入捕捉、輸出比較保持寄存器 :TCnH PAnH 控制位:控制計時數(shù)據(jù)打入保持寄
3、存器。與鎖存模式相關(guān);,6.1.2 輸入捕捉/輸出比較,非緩沖IC通道 有4個非緩沖通道(IOC4IOC7)各自具有一個捕捉寄存器TCn。 可以由輸入覆蓋控制寄存器ICOVW決定捕捉到的數(shù)據(jù)是否允許被覆蓋。 緩沖IC通道 有4個緩沖通道(IOC0IOC3)除了各自具有一個捕捉寄存器外,還有一個保持寄存器,可以連續(xù)捕捉2次不同時刻的值。 可以工作在鎖存方式或隊列方式。 (注:鎖存方式類似于非緩沖通道,隊列方式就是先進先出),6.1.2 輸入捕捉/輸出比較,1.輸入捕捉 輸入捕捉是通過捕獲自由運行計數(shù)器來監(jiān)視外部事件。主要用于信號檢測、頻率測量、脈沖寬度和輸入計數(shù)。 輸入捕捉的基本定義: 外部事件
4、或信號發(fā)生規(guī)定變化; 主計數(shù)寄存器TCNT內(nèi)容鎖存到TCn; CnI= 1 , 允許中斷, 發(fā)中斷,置標志位CnF 記錄事件發(fā)生的時刻、信號變化的時刻; TCnH 可實現(xiàn)兩次輸入捕捉, 產(chǎn)生中斷或置位 TCNT TCn TCnH,對于帶緩沖輸入捕捉通道 輸入鎖存模式 (LATQ=1) TCNTTCn :事件條件滿足自動傳送; TCn TCnH : 需要” 鎖存打入信號“。 由模數(shù)計數(shù)器定時控制、或強制鎖存。 輸入隊列模式 (LATQ=0) TCNT TCn TCn TCnH,輸入捕捉過程,比較/捕捉 單元 16位自由運行計數(shù)器,16位輸入捕捉鎖存器 TCn,捕捉發(fā)生時,狀態(tài)位置1,向CPU發(fā)出
5、中斷請求,Edge,沿選擇 檢測,ICx,ICxF,ICxI,上升/下降沿,可選中斷屏蔽,當外部事件發(fā)生時,或外部信號輸入發(fā)生變化時,記錄當前時間,TCNT,TICx,延時 計數(shù)器,OR,OR,應用: ABS 剎車. 雷達測距,發(fā)動機,引腳, 共有8個輸入捕捉通道 每個通道有自己的向量表和控制寄存器,輸入捕捉的用途 對外部信號脈沖, 使用中斷方法, 記錄脈沖的個數(shù); 管理外部中斷手段,時間及中斷源; 測量信號的周期;,重慶大學通信工程學院 王毅 王永東,2.輸出比較,輸出比較功能過程,16位自由運行計數(shù)器,16位輸出比較寄存器 比如:0 x5678 軟件可以修改,引腳控制邏輯,中斷請求,OCn
6、F,狀態(tài)標志位置位, 當比較發(fā)生時(值相等時),OCnI, 共有8個輸出比較通道 每個通道有自己的向量表和控制寄存器,用途 在特定的時刻輸出一個信號; 產(chǎn)生周期可控制信號; 精確計時;,當比較寄存器的值和計數(shù) 器的值相等時,采取行動 比如:當TCNT=0 x5678,TCNT,TCn,Pin OCn,比較器,相等,置位,OR,OR,清零,翻轉(zhuǎn),例:6-1 時鐘定時 設計,定時器時間 = 預置數(shù) * 總線周期 * 預分頻系數(shù) 總線頻率2M (周期=1/2000000秒), 最大延時時間= 65536 *(1/2000000)*128=4.1942秒。 預置數(shù) = 定時時間/(總線周期 * 預分頻
7、系數(shù)) 當:定時時間1秒, 總線頻率2M (周期=1/2000000秒), 預分頻=128 時 預置數(shù)= 1*2000000/128=15625 3秒延時= 3*15625=46875 0.1秒 延時 = 1563,INIECT: LDAA #$80 ; 開定時器 TEN=1;WAIT 禁止工作 STAA TSCR1 ; 非快速清標志位 LDAA #$87 ; TOI=1,PR0:2=111 STAA TSCR2 ;分頻128 LDAA #$01 ;通道0中斷使能 STAA TIE LDAA #$FF ;設置為輸出比較 STAA TIOS LDAA #$00 ;輸出與外界斷開 STAA TCT
8、L2 BSET TFLG1,#$01 ;清中斷標志位 RTS,Entry: LDS #_SEG_END_SSTACK CLI LDAA #$F0 STAA DDRB BSR INIECT LDX TCNT ADDX #$3*15625 STX TC0 W:LDAA #$7f STAA PORTB BSR DELAY1 BRA W ORG Virq DC.W ISR ORG Vtimch0 ; DC.W ISR ORG Vtimovf DC.W ISR_OVER,ISR: SEI BSET TFLG1,#$01 ;清中斷標志 LDX TCNT ADDX #3*15625 STX TC0 LDAB
9、 #%00001010 STAB PORTB BSR DELAY CLI RTI,ISR_OVER: SEI BSET TFLG2, #$80;清中斷標志 LDAB #%10011010 STAB PORTB JSR DELAY CLI RTI,主程序 定時 溢出,問題:如果TCn送一個固定時間數(shù)據(jù), 產(chǎn)生中斷的時間周期?,6.1.3脈沖累加器和模數(shù)計數(shù)器,1.脈沖累加器功能引腳 P0-P4 共4個累加器,對應IOC0-IOC4通道。 每個通道具有8位累加器 PAn及保持寄存器PAnH PA0+PA1=PACB , IOC0/PT0 , PBCTL , PBFLG PA2+PA3=PACA ,
10、 IOC7/PT7 , PACTL , PAFLG,2.脈沖累加器工作模式: LATQ=1:脈沖鎖存模式。 PAn PAnH ,打入到累加器的條件: MCCNT計數(shù)器減到0 ,即計時到,可以產(chǎn)生中斷; 向MCCNT 寫0 ,不產(chǎn)生中斷; MCCNT對應控制寄存器MCCTL的ICLAT位置1(對所有累加 器); LATQ = 0 脈沖累加隊列模式 LDAA TCnH :PAn -PAnH 并且 PAn=0;,3.脈沖累加器的計數(shù)方式,8 位計數(shù)器,PA7/PAI,脈沖累加器輸入引腳,事件計數(shù)模式; 引腳作為計數(shù)器時鐘; 軟件選擇以什么沿來計數(shù); 計數(shù)器溢出時,產(chǎn)生中斷(可選); 在PAI引腳每個
11、主動電平將產(chǎn)生中斷 ;,8 位計數(shù)器,PA7/PAI,脈沖累加器輸入引腳,時間累加模式 引腳作為計數(shù)器,軟件選擇主動電平作為門的輸入; 當計數(shù)器溢出時產(chǎn)生中斷; 在使能的引腳上后面的邊緣時產(chǎn)生中斷;,自由運行E/64時鐘,對事件計數(shù)模式:PEDGE 選擇哪個PAI的沿用來增加 PACNT寄存器,對門累加模式: PEDGE選擇哪個PAI 狀態(tài)用來禁止計數(shù) (比如. PEDGE = 1 則 當PAI 為高電平時,禁止計數(shù) )。,重慶大學通信工程學院 王毅 王永東,6.2 PIT周期中斷定時器,重慶大學通信工程學院 王毅 王永東,強制加載位,PITFLT.PFLTn,計數(shù)寄存器,選通微計數(shù)器,硬件
12、觸發(fā),中斷 請求,重慶大學通信工程學院 王毅 王永東,裝載寄存器: PITLD0PITLD3 四個16位; PITMTLD0 ,PITMLD1 兩個8位. 啟動計時條件: 計時模塊(PITCFLMT.PITE)和 通道使能PITCE.PCEn)同時有效,n = 0,1,2,3; 強制加載位置1; 啟動計時器引發(fā)數(shù)據(jù)裝載操作: PITLDn PITCNTn PITMTLDn 微計時器n,重慶大學通信工程學院 王毅 王永東,ORG $4000 ;500個總線時鐘延時程序 LDS #$4000 LDAA #$FF STAA DDRB LDAA #0 STAA PORTB MOVW #CH0_ISR
13、, VEC_PIT_CH0 ;$FF7A CLR PITCFLMT ;禁止PIT模塊(控制寄存器) MOVB #$01 , PITCE ;定時器通道0打開 CLR PITMUX ;通道0關(guān)聯(lián)微計算器0 MOVB #$4, PITMTLD0 ;設置微計算器0的加載寄存器 MOVB #$99 ,PITLD0 ;設置16位計數(shù)器的加載寄存器 MOVB #$01 , PITINTE ;通道0 中斷使能 MOVB #$80 , PITCFLMT ;打開PIT模塊 CLI BRA * CH0_ISR: MOVB #$01 , PITTF ;清通道0超時中斷標志 COMB ;B口輸出電平翻轉(zhuǎn) TRI,重慶大
14、學通信工程學院 王毅 王永東,6.3 實時中斷,用途:用來產(chǎn)生固定周期的硬件定時中斷。,重慶大學通信工程學院 王毅 王永東,RH-1 T = 晶振周期 2 ( RL+1) 1024 其中:RH = RTICTL 64, RL = RTICTL 30。 RH=0,關(guān)閉實時中斷。 列:振蕩周期為T , RH =3, RL=10 T = T * 4*11*1024,重慶大學通信工程學院 王毅 王永東,Pin Logic,Delay Counter,輸出比較寄存器,輸入捕捉寄存器,脈沖累加器 PA1,保持寄存器PA1H,保持寄存器TC1H,預分頻1,Bus Clock,CH1,預分頻2,0,控制邏輯,
15、Control Bits,Reset,定時器結(jié)構(gòu),兩個計時基礎 :MAIN TIMER , 16 BIT MODULO DOWN_COUNTE; 具有預分頻器: 分別是 1-128 , 1-16; 引腳邏輯控制器:PIN LOGIC 延時計數(shù): DELAY COUNTER 輸入捕捉、輸出比較寄存器:TCn、脈沖累加器PAn 輸入捕捉、輸出比較保持寄存器 :TCnH PAnH 控制位:控制計時數(shù)據(jù)打入保持寄存器。與鎖存模式相關(guān); 裝載寄存器 : LOAD REGISTE ;,8.3.1脈沖累加控制寄存器 1. 16位脈沖累加器A控制寄存器PACTL,PAEN: 脈沖累加器使能位:1:使能 ;0:
16、禁止 PAMOD:脈沖累加器模式控制位:1:門控方式;0:事件計數(shù) PEDGE:有效邊沿設定:,PEMOD=0,事件計數(shù)模式: PEDGE =0: PT7的下降沿引發(fā)計數(shù)器加一; =1: PT7的上升沿引發(fā)計數(shù)器加一。 PEMOD=1, 門控模式: PEDGE = 0:當PT7引腳高電平時,PACA累加開始,累加頻率=總線頻率/64。在PT7的下降沿,置中斷標志位PAIF。 PEDGE = 1:當PT7引腳低電平時,PACA累加開始,累加頻率=總線頻率/64。在PT7的上升沿,置中斷標志位PAIF。,2. 16位脈沖累加器A 標志寄存器PAFLAG,PAOVF : 脈沖累加器溢出中斷標志位 P
17、AIF :脈沖累加器輸入跳變標志 計數(shù)方式:有效邊沿產(chǎn)生計數(shù)同時產(chǎn)生中斷標志; 事件方式:輸入信號結(jié)束邊沿產(chǎn)生中斷標志。,PAOVI : 脈沖累加器溢出中斷使能: 0:禁止 ;1:使能。 PAI :脈沖累加器輸入中斷使能: 0:禁止 ;1:使能。 CLK0,CLK1:TCNT計時輸入頻率選擇4種。 注意: PACLK = 總線頻率/64.,MCZI:模數(shù)計數(shù)器向下溢出中斷使能: 0:禁止 :1:使能 MODCM: 0:單次計數(shù)方式 ; 1:循環(huán)計數(shù)方式 RDMCL:模數(shù)讀取位選擇: 0:讀回模數(shù)計數(shù)器當前值; 1:返回加載寄存器的值 ICLAT:捕捉寄存器強制轉(zhuǎn)移控制位 0:無效: 1: TC
18、n TCnH ; PAn PAnH;0 PAn MCEN:模數(shù)遞減計數(shù)器使能位。 0:禁止 1:使能 FLMC:僅寫1的時候,產(chǎn)生裝載寄存器的內(nèi)容強制裝入MCCNT,復位分頻因子; MCPR1,MCPR0:,8.3.2模數(shù)計數(shù)器 (1)16位模數(shù)計數(shù)器控制寄存器MCCTCL,(2)16位模數(shù)計數(shù)器標志寄存器MCFLG,MCZF : 模數(shù)計數(shù)溢出中斷標志位 POLF0 : 首次捕捉的極性;0:上升;1:下降,(3)16位模數(shù)遞減計數(shù)寄存器MCCNT 讀MCCNT ,返回: RDMCL=0 計數(shù)器當前值 ;RDMCL=1 加載寄存器值; 對輸入捕捉或脈沖累加,如果設置為鎖存模式且輸入緩沖使能(LA
19、TQ=1,BUFFEN=1),寫$0000到MCCNT鎖存TC 、PA到保持寄 存器 ;并且MCCNT保持位0 ,不會產(chǎn)生中斷標志置1; 當MCCNT 計數(shù)到零時, 自動產(chǎn)生鎖存信號并產(chǎn)生中斷。 對應循環(huán)使用方式(MODMC=1),寫MCCNT的數(shù)據(jù), 在 MCCNT回零后卡是生效,非立即生效; 對于單次計數(shù)方式(MODMC=0),寫MCCNT,清零MCCNT,然后用新值更新計數(shù)器。實現(xiàn)規(guī)定時刻的計數(shù)減一開始。,晶振頻率= 16 MHZ 總線頻率= 晶振/2 = 8MHZ 總線周期= 1/8000000= 125 /1000000/1000=125NS 計算中斷下溢周期時間為191 US 時,
20、MCCNT預置數(shù)? MCCNT下溢出中斷周期 = 總線周期 * 預分頻(1,4,8,16)* MCCNT MCCNT = 中斷周期/總線周期/預分頻 = 191 * 1000 / 125/4 = 382,如何計算MCCNT常數(shù),模向下計數(shù)器總結(jié),二進制向下計數(shù)器. 可以完全控制計數(shù)起始值 應用于精確事件計時-用于產(chǎn)生周期性的標志位和中斷 主定時器單獨運行。時鐘來自總線時鐘,并經(jīng)過預分頻。 可以被設置為定時中斷或產(chǎn)生標志位?;蜓b載初始值后向下計數(shù)到$0000。,裝載,向下計數(shù)至0,執(zhí)行動作,關(guān)于TCNT、 MCCNT總結(jié) TCNT:一直運行。每當條件滿足, 產(chǎn)生捕捉或輸出比較,內(nèi)容部能改變,不能
21、寫; MCCNT:可以控制計時的開始,作為鎖存模式時間控制的基礎,并形成打入鎖存的信號,可以讀寫。 脈沖累加:對脈沖計數(shù)或?qū)﹂T控信號計數(shù)。 脈沖累加器以輸入引腳作為條件時鐘, 或輸入作為控制計時的起始結(jié)束。,隊列,鎖存,鎖存,補充說明: 定時器模塊的中斷 13個中斷向量 8個定時器通道產(chǎn)生的中斷: CnF 1個模數(shù)計數(shù)器下溢中斷 : MCZF 1個脈沖累加器B溢出中斷: PBOVF 1個脈沖累加器A輸入中斷: PAOVI 1個脈沖累加器A溢出中斷: PAOVF 1個自由定時器溢出中斷 : TOF,重慶大學通信工程學院 王毅 王永東,強制加載位,PITFLT.PFLTn,計數(shù)寄存器,選通微計數(shù)器
22、,硬件 觸發(fā),中斷 請求,重慶大學通信工程學院 王毅 王永東,6.2 PIT周期中斷定時器,重慶大學通信工程學院 王毅 王永東,加載寄存器: PITLD0PITLD3 四個16位; PITMTLD0 ,PITMLD1 兩個8位. 啟動計時條件: 計時模塊和通道使能同時有效; 強制加載位置1; 啟動計時器引發(fā)操作: PITLDn PITCNTn PITMTLDn 微計時器n,重慶大學通信工程學院 王毅 王永東,ORG $4000 ;500個總線時鐘延時程序 LDS #$4000 LDAA #$FF STAA DDRB LDAA #0 STAA PORTB MOVW #CH0_ISR , VEC_
23、PIT_CH0 CLR PITCFLMT ;禁止PIT模塊(控制寄存器) MOVB #$01 , PITCE ;定時器通道0打開 CLR PITMUX ;通道0關(guān)聯(lián)微計算器0 MOVB #$4, PITMTLD0 ;設置微計算器0的加載寄存器 MOVB #$99 ,PITLD0 ;設置16位計數(shù)器的加載寄存器 MOVB #$01 , PITINTE ;通道0 中斷使能 MOVB #$80 , PITCFLMT ;打開PIT模塊 CLI BRA * CH0_ISR: MOVB #$01 , PITTF COMB ;B口輸出電平翻轉(zhuǎn) TRI,重慶大學通信工程學院 王毅 王永東,6.3 實時中斷,用
24、途:用來產(chǎn)生固定周期的硬件定時中斷。,重慶大學通信工程學院 王毅 王永東,RH-1 T = 晶振周期 2 ( RL+1) 1024 其中:RH = RTICTL 64, RL = RTICTL 30。 RH=0,關(guān)閉實時中斷。 列:振蕩周期為T , RH =3, RL=10 T = T * 4*11*1024,重慶大學通信工程學院 王毅 王永東,重慶大學通信工程學院 王毅 王永東,TIMER 定時器使能:1 計數(shù)器使能 ;0 計數(shù)器禁止,(1)TSCR1 定時器系統(tǒng)控制寄存器 -低功耗模式,RST: 00,$0006,TEN TSWAI TSFRZ TFFCA Reserved,TSWAI 在
25、WAIT模式時: 0 = 不停止; 1 = 停止,TSBCK 在DEBUG模式時, 定時器停止。 0 = 不停止 ; 1 = 停止,TFFCA 定時器快速標志位清除使能 0 = 定時器標志位正常清零 1 = 讀取輸入捕捉或 寫輸出比較寄存器, 對相應通道標志位清零(0 CnF) 讀TCNT 清TOF標志,(2) TSCR2 定時器系統(tǒng)控制寄存器,TCRE - 允許使用PWM功能,總線頻率FBUS,分頻因子為FACTOR 。 溢出時間 T = 65536 * FRCTOR / FBUS,定時器中斷使能寄存器TIE - CnI,(4) 定時計數(shù)寄存器TCNT,CnI與TFLG1標志寄存器CnF一一對應。,正常模式下, 寫該寄存器無意義。,TCTL1,TCTL2,(5)控制寄存器TCTL1、TCTL2(僅對輸出比較) 定義輸出比較成功時的輸出動作: 斷開、翻轉(zhuǎn)、低電平、高電平,(6)通道選擇寄存器 TIOS - IOSn,(7) 輸入捕捉和輸出比較(IC/OC )寄存器TCn,0: 對應通道為輸入捕捉; 1:對應通道為輸出比較。,對輸入捕捉,有效邊沿發(fā)生,鎖存TCNT值,讀TCn獲得計數(shù)值; 寫TCn設置輸出比較的計數(shù)值。 在輸入捕捉模式,可以讀, 寫沒有意義; 在輸出比
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 達亮電子安全培訓課件
- 辰鑫安全培訓服務課件
- 生產(chǎn)企業(yè)垃圾場封閉建設方案
- 車險公司柜面培訓課件
- 2025年安全隱患整治月活動總結(jié)例文(2篇)
- 河北事業(yè)單位技師考試(行政辦事員)試題
- 車間防汛安全教育培訓課件
- 車間職工崗位培訓課件
- 酒店客房衛(wèi)生管理標準制度
- 2025年老年護理??谱o士醫(yī)養(yǎng)結(jié)合模式實踐工作總結(jié)(3篇)
- 動火作業(yè)施工方案5篇
- 2024年重慶市優(yōu)質(zhì)企業(yè)梯度培育政策解讀學習培訓課件資料(專精特新 專精特新小巨人中小企業(yè) 注意事項)
- 老年人高血壓的護理
- 糧油產(chǎn)品授權(quán)書
- 責任督學培訓課件
- 關(guān)于安吉物流市場的調(diào)查報告
- 抑郁病診斷證明書
- 心電監(jiān)測技術(shù)操作考核評分標準
- 歷史時空觀念的教學與評價
- 維克多高中英語3500詞匯
- 第五屆全國輔導員職業(yè)能力大賽案例分析與談心談話試題(附答案)
評論
0/150
提交評論