單片機第9章 S12 增強型定時器模塊課件_第1頁
單片機第9章 S12 增強型定時器模塊課件_第2頁
單片機第9章 S12 增強型定時器模塊課件_第3頁
單片機第9章 S12 增強型定時器模塊課件_第4頁
單片機第9章 S12 增強型定時器模塊課件_第5頁
已閱讀5頁,還剩124頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、基于基于HCS12HCS12的嵌入式系統設計的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊合肥工業大學合肥工業大學機械與汽車工程學院機械與汽車工程學院滕滕 勤勤2014.42014.4基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊本章內容本章內容p 9.1 ECT9.1 ECT模塊概述模塊概述p 9.2 9.2 自由運行計數器及定時器基本寄存器自由運行計數器及定時器基本寄存器p 9.3 9.3 輸入捕捉功能及寄存器設置輸入捕捉功能及寄存器設置p 9.4 9.4 輸出比較功能及寄存器設置輸出比較功能及寄存器

2、設置p 9.5 9.5 脈沖累加器功能及寄存器設置脈沖累加器功能及寄存器設置p 9.6 9.6 模數遞減計數器功能及寄存器設置模數遞減計數器功能及寄存器設置p 9.7 ECT9.7 ECT模塊的應用模塊的應用基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述【定時器【定時器/ /計數器應用場合】計數器應用場合】p按照時間間隔或計數結果進行控制。按照時間間隔或計數結果進行控制。 【可編程定時器【可編程定時器/ /計數器基本原理】計數器基本原理】p在簡單的軟件控制下工作。根據需要的定時時間,用指令設在簡單的

3、軟件控制下工作。根據需要的定時時間,用指令設置定時器置定時器/ /計數器的定時常數,并用指令啟動定時器計數器的定時常數,并用指令啟動定時器/ /計數器。計數器。當定時器當定時器/ /計數器計數到預定值時,自動產生一個定時輸出。計數器計數到預定值時,自動產生一個定時輸出。【優點】【優點】p定時定時/ /計數不占用計數不占用CPUCPU的時間,利用定時器的時間,利用定時器/ /計數器產生的中斷計數器產生的中斷信號,可以建立多作業的環境,大大地提高信號,可以建立多作業的環境,大大地提高CPUCPU的利用率。的利用率。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型

4、捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述【可編程定時器【可編程定時器/ /計數器的特點】計數器的特點】p多種工作方式多種工作方式定時方式或計數方式等。定時方式或計數方式等。p計數器的模值可變計數器的模值可變計數的最大值有一定的限制,取決于計數器的位計數的最大值有一定的限制,取決于計數器的位數。計數的最大值限制了定時的最大值。數。計數的最大值限制了定時的最大值。p產生中斷產生中斷根據設定的定時或計數值,當定時時間到或到達計數終點根據設定的定時或計數值,當定時時間到或到達計數終點時,發出中斷請求信號。時,發出中斷請求信號。【定時器】【定時器】計數脈沖來自于系統時鐘或經過分頻后的系

5、統時鐘,即計數脈沖來自于系統時鐘或經過分頻后的系統時鐘,即驅動驅動信號為內部時鐘脈沖信號為內部時鐘脈沖;【計數器】【計數器】計數脈沖來自于芯片外部引腳,即計數脈沖來自于芯片外部引腳,即驅動信號為外部脈沖驅動信號為外部脈沖。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述【嵌入式系統中定時器【嵌入式系統中定時器/ /計數器模塊的作用】計數器模塊的作用】p【產生波形輸出】【產生波形輸出】從從MCUMCU的的I/OI/O引腳向外輸出一系列符合一定時序規范的引腳向外輸出一系列符合一定時序規范的周期信號。周期信

6、號。p【測量輸入波形】【測量輸入波形】檢測檢測MCU I/OMCU I/O引腳上輸入的一系列周期信號的脈寬、周引腳上輸入的一系列周期信號的脈寬、周期或頻率。期或頻率。p【統計脈沖或邊沿個數】【統計脈沖或邊沿個數】對端口引腳輸入的、由外部事件產生的觸發信對端口引腳輸入的、由外部事件產生的觸發信號進行計數。號進行計數。p【作為定時基準】【作為定時基準】產生內部定時,例如用于定時采樣等。產生內部定時,例如用于定時采樣等。pS12S12系列系列MCUMCU的定時器模塊稱為的定時器模塊稱為增強型捕捉定時器增強型捕捉定時器( (ECTECT) )模塊模塊( (E Enhancednhanced C Cap

7、tureapture T Timerimer M Moduleodule) )。 基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述9.1.1 ECT9.1.1 ECT的基本組成的基本組成與工作原理與工作原理【ECTECT組成】組成】1 1個個1616位自由運行計數器位自由運行計數器8 8個個1616位輸入捕捉位輸入捕捉/ /輸出比輸出比較(較(IC/OCIC/OC)通道)通道4 4個個8 8位脈沖累加器或位脈沖累加器或2 2個個1616位脈沖累加器位脈沖累加器1 1個個1616位模數遞減計數器位模數遞

8、減計數器MDCMDC基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1.1 ECT9.1.1 ECT的基本組成與工的基本組成與工作原理作原理【特點】【特點】4 4個個輸入捕捉通道輸入捕捉通道具有具有1616位位緩緩沖沖( (保持保持) )寄存器寄存器4 4個個輸入捕捉通道輸入捕捉通道具有可選擇具有可選擇延遲時間的延遲時間的延遲計數器延遲計數器4 4個個8 8位位脈沖累加器脈沖累加器,可以通,可以通過過級聯級聯形成形成2 2個個1616位的脈沖累位的脈沖累加器加器1616位位模數遞減計數器模數遞減計數器具有具有4 4位位的的預分頻器預分頻器基

9、于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述9.1.1 ECT9.1.1 ECT的基本組成與工作原理的基本組成與工作原理【自由運行計數器】【自由運行計數器】F ECTECT的核心的核心1616位位自由運行自由運行(Free running)(Free running)計數器,也稱為計數器,也稱為自由運行主自由運行主定時器定時器。F系統復位時系統復位時自由運行計數器為自由運行計數器為$0000$0000。F模塊運行時模塊運行時自由運行計數器從自由運行計數器從$0000$0000$FFFF$FFFF循環

10、遞增計數。循環遞增計數。F溢出復零時溢出復零時置位中斷標志。置位中斷標志。F時鐘源時鐘源TIMCLK PCLKTIMCLK PCLK,PACLKPACLK,PACLK/256PACLK/256,PACLK/65536PACLK/65536。F預分頻器時鐘預分頻器時鐘PCLKPCLK由總線時鐘(由總線時鐘(ECLKECLK)經過一個)經過一個7 7位預分頻器得到。位預分頻器得到。F預分頻系數預分頻系數 8 8種。種。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概模塊概述述9.1.1 ECT9.1.1 ECT的基

11、的基本組成與工本組成與工作原理作原理【ECTECT運行模式】運行模式】 停止停止(STOP)(STOP)模式模式 凍結凍結(Freeze)(Freeze)模模式式 等待等待(Wait)(Wait)模式模式 正常正常(Normal)(Normal)模模式式基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊p輸入捕捉輸入捕捉( (Input CaptureInput Capture,ICIC) ):輸入引腳:輸入引腳上的跳變沿上的跳變沿( (上升沿或下降沿上升沿或下降沿) )觸發輸入捕觸發輸入捕捉,將當前自由運行計數器中的計數值復捉,將當前自由運行計

12、數器中的計數值復制到通道寄存器中,并置位中斷標志,如制到通道寄存器中,并置位中斷標志,如果允許中斷,則產生一次輸入捕捉中斷。果允許中斷,則產生一次輸入捕捉中斷。p帶保持寄存器的帶保持寄存器的ICIC通道在第通道在第1 1個觸發事件到個觸發事件到來時進行來時進行捕捉捕捉,第,第2 2個觸發事件到來時進行個觸發事件到來時進行鎖存鎖存。可以在不產生中斷的條件下,連續。可以在不產生中斷的條件下,連續記錄兩次自由運行計數器的值。記錄兩次自由運行計數器的值。輸入捕捉輸入捕捉模塊框圖模塊框圖 9.1 ECT9.1 ECT模塊概述模塊概述9.1.1 ECT9.1.1 ECT的基本組成與工作原理的基本組成與工作

13、原理【輸入捕捉】【輸入捕捉】基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述9.1.1 ECT9.1.1 ECT的基本組成與工作原理的基本組成與工作原理【輸出比較】【輸出比較】p輸出比較輸出比較( (Output CompareOutput Compare,OCOC) ):根據需要設置輸出比較寄存器的值,:根據需要設置輸出比較寄存器的值,自由運行計數器的值與輸出比較寄存器的值每隔自由運行計數器的值與輸出比較寄存器的值每隔4 4個總線周期比較一次,個總線周期比較一次,當兩者相等時,會在規定的通道引腳上輸

14、出預定的電平。當兩者相等時,會在規定的通道引腳上輸出預定的電平。p如果允許中斷,會產生一次輸出比較中斷。如果允許中斷,會產生一次輸出比較中斷。輸出比較輸出比較模塊框圖模塊框圖 基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述9.1.1 ECT9.1.1 ECT的基本組成與工作原理的基本組成與工作原理【脈沖累加器】【脈沖累加器】p脈沖累加器(脈沖累加器(Pulse accumulatorPulse accumulator,PAPA)脈沖計數器脈沖計數器p【功能】【功能】統計相應管腳上的脈沖個數。統計相應

15、管腳上的脈沖個數。在管腳上有效電平期間對內部時鐘進行計數。在管腳上有效電平期間對內部時鐘進行計數。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1.1 ECT9.1.1 ECT的基的基本組成與工本組成與工作原理作原理【脈沖累加器】【脈沖累加器】p脈沖累加器與脈沖累加器與帶緩沖的帶緩沖的ICIC通通道相聯。道相聯。p緩沖器緩沖器( (保持寄保持寄存器存器) ) 可以在可以在外部引腳出現外部引腳出現預定動作時,預定動作時,保存其累加值。保存其累加值。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器

16、模塊【脈沖累加器】【脈沖累加器】p 根據工作方式不同,脈沖累加器的計數脈沖來自不同的渠道。根據工作方式不同,脈沖累加器的計數脈沖來自不同的渠道。 計數方式計數方式 事件計數方式事件計數方式計數脈沖直接來自引腳邏輯,脈沖累加器相當于計數脈沖直接來自引腳邏輯,脈沖累加器相當于普通普通計數器計數器,對有效邊沿計數,有效邊沿可設定為上升沿或下降沿。,對有效邊沿計數,有效邊沿可設定為上升沿或下降沿。輸入引腳上每產生一個有效邊沿跳變,脈沖累加計數器的值加輸入引腳上每產生一個有效邊沿跳變,脈沖累加計數器的值加1 1。當脈沖。當脈沖累加器溢出時,將置位中斷標志。如果允許中斷,則產生一次溢出中斷。累加器溢出時,

17、將置位中斷標志。如果允許中斷,則產生一次溢出中斷。 門控時間累加方式門控時間累加方式脈沖累加器相當于脈沖累加器相當于可控計數器可控計數器。門控信號來自引。門控信號來自引腳邏輯,時鐘信號來自內部時鐘腳邏輯,時鐘信號來自內部時鐘PACLK(=ECLK/64)PACLK(=ECLK/64)。門控信號可設定為高。門控信號可設定為高電平有效或低電平有效,在有效電平期間,脈沖累加器對電平有效或低電平有效,在有效電平期間,脈沖累加器對ECLK/64ECLK/64時鐘信時鐘信號計數。有效電平結束時的跳變沿將停止計數,并置位中斷標志。如果允號計數。有效電平結束時的跳變沿將停止計數,并置位中斷標志。如果允許中斷,

18、則產生一次硬件中斷。許中斷,則產生一次硬件中斷。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述9.1.1 ECT9.1.1 ECT的基本組成與工作原理的基本組成與工作原理【模數遞減計數器】【模數遞減計數器】p1616位位模數遞減計數器模數遞減計數器( (Modulus Down CounterModulus Down Counter,MDCMDC) )。p【功能】【功能】作為一個時基,定時產生中斷。作為一個時基,定時產生中斷。產生一個控制信號,將輸入捕捉寄存器或脈沖累加器的值鎖存到各自的產生一個控制

19、信號,將輸入捕捉寄存器或脈沖累加器的值鎖存到各自的保持寄存器中。保持寄存器中。鎖存動作可以通過程序設定為周期性的或一次性的。鎖存動作可以通過程序設定為周期性的或一次性的。pMDCMDC時鐘源時鐘源總線時鐘經過總線時鐘經過4 4位預分頻器提供,有位預分頻器提供,有4 4個分頻系數可供選個分頻系數可供選擇。擇。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述9.1.1 ECT9.1.1 ECT的基本組成與工作原理的基本組成與工作原理【模數遞減計數器】【模數遞減計數器】pMDCMDC常數常數( (加載加載)

20、 )寄存器寄存器定時常數可自動重裝載,可以根據定時的需要,定時常數可自動重裝載,可以根據定時的需要,向加載寄存器中賦初值。但向加載寄存器中賦初值。但MDCMDC的常數寄存器與其計數寄存器的常數寄存器與其計數寄存器MCCNTMCCNT使用使用相同的地址,加載時通過特殊的時序實現。相同的地址,加載時通過特殊的時序實現。p復位后,復位后,MCCNT=$FFFFMCCNT=$FFFF。MDCMDC啟動后,啟動后,MCCNTMCCNT從當前值開始遞減計數。當計從當前值開始遞減計數。當計數值減到數值減到0 0時,置位中斷標志。如果允許中斷,則向時,置位中斷標志。如果允許中斷,則向CPUCPU發出中斷請求。

21、發出中斷請求。 計數方式計數方式 單次計數方式單次計數方式當計數值減到當計數值減到$0000$0000時,時,MDCMDC便停止計數。便停止計數。 循環循環( (連續連續) )計數方式計數方式當計數值減到當計數值減到$0000$0000時,自動加載定時常數,并時,自動加載定時常數,并繼續遞減計數。繼續遞減計數。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1.2 9.1.2 模塊內存映射模塊內存映射pECTECT模塊的寄模塊的寄存器分為存器分為3 3類:類:控制寄存器、控制寄存器、數據寄存器和數據寄存器和狀態寄存器。狀態寄存器。控制寄存器

22、控制寄存器基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1.2 9.1.2 模塊內存映射模塊內存映射數據寄存器數據寄存器狀態寄存器狀態寄存器基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.1 ECT9.1 ECT模塊概述模塊概述9.1.3 ECT9.1.3 ECT模塊的中斷系統模塊的中斷系統【ECTECT模塊中斷源】模塊中斷源】8 8個定時器通道中斷個定時器通道中斷1 1個模數遞減計數器向下溢出中斷個模數遞減計數器向下溢出中斷1 1個脈沖累加器個脈沖累加器A A輸入中斷輸入中斷1 1個

23、脈沖累加器個脈沖累加器A A溢出中斷溢出中斷1 1個脈沖累加器個脈沖累加器B B溢出中斷溢出中斷基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊 9.1.3 ECT9.1.3 ECT模塊的中斷系統模塊的中斷系統p ECT模塊中斷描述模塊中斷描述基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.2 9.2 自由運行計數器及定時器基本寄存器自由運行計數器及定時器基本寄存器9.2.1 9.2.1 自由運行主定時器與時鐘頻率設置自由運行主定時器與時鐘頻率設置p1616位自由運行主定時器的工作頻率決定輸

24、入捕捉位自由運行主定時器的工作頻率決定輸入捕捉/ /輸出比較的分辨能力。輸出比較的分辨能力。p【工作原理】【工作原理】定時器計數寄存器定時器計數寄存器TCNTTCNT對多路轉換器輸出的時鐘信號進行計數,當計數對多路轉換器輸出的時鐘信號進行計數,當計數值從值從$FFFF$FFFF溢出變為溢出變為$0000$0000時,主定時器中斷標志寄存器時,主定時器中斷標志寄存器TFLG2TFLG2中的中斷標中的中斷標志志TOFTOF置位,向置位,向CPUCPU申請中斷。申請中斷。如果此時定時器系統控制寄存器如果此時定時器系統控制寄存器TSCR2TSCR2中的中斷允許位中的中斷允許位TOI=1TOI=1,將產

25、生一,將產生一個中斷。個中斷。p設置設置TOI=0TOI=0可以禁止自由運行計數器溢出中斷,向可以禁止自由運行計數器溢出中斷,向TFLG2TFLG2中寫入中寫入$80$80將清除將清除TOFTOF標志。標志。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.2.1 9.2.1 自由運行主定時器與時鐘頻率設置自由運行主定時器與時鐘頻率設置p【時鐘選擇】【時鐘選擇】自由運行主定時器的時鐘自由運行主定時器的時鐘TIMCLKTIMCLK由由4 4選選1 1多路轉換器提供,多路轉換器提供,時鐘源的切換由時鐘源的切換由1616位脈沖累加器位脈沖累加器A

26、A控制寄存器控制寄存器PACTLPACTL中的控制位中的控制位CLK1CLK1和和CLK0CLK0控制,時鐘可以是控制,時鐘可以是PCLKPCLK、PACLKPACLK、PACLK/256PACLK/256、PACLK/65536PACLK/65536。pPCLKPCLK稱為稱為P P時鐘時鐘,由預分頻器將總由預分頻器將總線時鐘進行線時鐘進行2 2k k分分頻后得到頻后得到(k=0(k=07)7)。p分頻系數分頻系數由定時由定時器系統控制寄存器系統控制寄存器器TSCR2TSCR2中的中的PR2PR2、PR1PR1和和PR0PR0決定。決定。基于HCS12的嵌入式系統設計第第9 9章章 S12S

27、12增強型捕捉定時器模塊增強型捕捉定時器模塊9.2 9.2 自由運行計數器及定時器基本寄存器自由運行計數器及定時器基本寄存器9.2.1 9.2.1 自由運行主定時器與時鐘頻率設置自由運行主定時器與時鐘頻率設置pPACLKPACLK是是1616位脈沖累加器位脈沖累加器A A的時鐘,頻率為的時鐘,頻率為ECLK/64ECLK/64。p定時器系統控制寄存器定時器系統控制寄存器TSCR1TSCR1中的中的TENTEN位是位是TIMCLKTIMCLK的總開關。的總開關。p當當TEN=0TEN=0時,時,TIMCLKTIMCLK被切斷,被切斷,定時器停止工作,定時器停止工作,但并不影響脈沖但并不影響脈沖累

28、加器在事件計累加器在事件計數方式下正常工數方式下正常工作。作。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.2 9.2 自由運行計數器及定時器基本寄存器自由運行計數器及定時器基本寄存器9.2.1 9.2.1 自由運行主定時器與時鐘頻率設置自由運行主定時器與時鐘頻率設置p輸出比較通道輸出比較通道7(OC7)7(OC7)對自由運行主定時器具有特殊的控制功對自由運行主定時器具有特殊的控制功能。能。當定時器系統控制寄存器當定時器系統控制寄存器TSCR2TSCR2中的控制位中的控制位TCRE=1TCRE=1時,如果通時,如果通道道7 7輸出比較成功

29、,則輸出比較成功,則TCNTTCNT自動復位到自動復位到$0000$0000。可利用可利用OC7OC7實現實現TCNTTCNT在在$0000$0000$ $($FFFF)($FFFF)之間循環計數。之間循環計數。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.2 9.2 自由運行計數器及定時器基本寄存器自由運行計數器及定時器基本寄存器9.2.2 ECT9.2.2 ECT模塊的基本寄存器模塊的基本寄存器1. 定時器系統控制寄存器定時器系統控制寄存器1 (Timer System Control Register 11 (Timer Syste

30、m Control Register 1,TSCR1)TSCR1)【作用】【作用】p定時器啟動、停止控制。定時器啟動、停止控制。p在在MCUMCU等待模式下,是否允許等待模式下,是否允許ECTECT模塊工作。模塊工作。p在在MCUMCU凍結模式下,是否允許定時器和凍結模式下,是否允許定時器和MDCMDC運行。運行。p設置定時器模塊所有中斷標志的清除方式。設置定時器模塊所有中斷標志的清除方式。 基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.2.2 ECT9.2.2 ECT模塊的基本寄存器模塊的基本寄存器1. 定時器系統控制寄存器定時器系統控

31、制寄存器1 (Timer System Control Register 11 (Timer System Control Register 1,TSCR1)TSCR1)TENTEN:定時器允許位:定時器允許位 1 = 1 = 允許定時器正常運行。允許定時器正常運行。 0 = 0 = 禁止主定時器禁止主定時器( (包括計數器包括計數器) ),可用于降低功耗。,可用于降低功耗。TSWAITSWAI:等待模式下定時器模塊停止位:等待模式下定時器模塊停止位1 = 1 = 當當MCUMCU處于等待模式時,禁止定時器模塊。定時器中斷不能使處于等待模式時,禁止定時器模塊。定時器中斷不能使MCUMCU退退出

32、等待模式。出等待模式。0 = 0 = 在等待期間允許在等待期間允許ECTECT模塊繼續運行。模塊繼續運行。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊1. 1. 定時器系統控制寄存器定時器系統控制寄存器1 (Timer System Control Register 11 (Timer System Control Register 1,TSCR1)TSCR1)TSFRZTSFRZ:凍結模式下定時器和模數計數器停止位:凍結模式下定時器和模數計數器停止位 1 = 1 = 只要只要MCUMCU處于凍結模式,禁止定時器和模數計數器。處于凍結模式,

33、禁止定時器和模數計數器。 0 = 0 = 凍結模式下允許定時器和模數計數器繼續運行。凍結模式下允許定時器和模數計數器繼續運行。TFFCA TFFCA :快速清除定時器所有標志位:快速清除定時器所有標志位1 = 1 = 對于對于TFLG1TFLG1寄存器,讀寄存器,讀ICIC通道或寫通道或寫OCOC通道將清除相應的標志通道將清除相應的標志CnFCnF。對于對于TFLG2TFLG2寄存器,對寄存器,對TCNTTCNT寄存器的任何訪問將清除寄存器的任何訪問將清除TOFTOF標志。標志。對對PACN3PACN3和和PACN2PACN2寄存器的任何訪問將清除寄存器的任何訪問將清除PAFLGPAFLG寄存

34、器中的寄存器中的PAOVFPAOVF和和PAIFPAIF標標志。志。對對PACN1PACN1和和PACN0PACN0寄存器的任何訪問將清除寄存器的任何訪問將清除PBFLGPBFLG寄存器中的寄存器中的PBOVFPBOVF標志。標志。0 = 0 = 定時器標志普通清除方式。允許清除定時器標志,使其正常運行。定時器標志普通清除方式。允許清除定時器標志,使其正常運行。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.2.2 ECT9.2.2 ECT模塊的基本寄存器模塊的基本寄存器2. 2. 定時器系統控制寄存器定時器系統控制寄存器2 (Timer

35、System Control Register 22 (Timer System Control Register 2,TSCR2)TSCR2)TOITOI:定時器溢出中斷允許位:定時器溢出中斷允許位 1 = 1 = 當當TOFTOF標志置位時,允許定時器溢出中斷。標志置位時,允許定時器溢出中斷。 0 = 0 = 禁止定時器溢出中斷。禁止定時器溢出中斷。TCRETCRE:定時器計數器復位允許:定時器計數器復位允許 1 = 1 = 通過成功的輸出比較通過成功的輸出比較7 7復位自由運行計數器。復位自由運行計數器。 0 = 0 = 禁止計數器復位,計數器自由運行。禁止計數器復位,計數器自由運行。p

36、如果如果TC7 = $0000TC7 = $0000且且TCRE = 1TCRE = 1,TCNTTCNT一直保持一直保持$0000$0000。p如果如果TC7 = $FFFFTC7 = $FFFF且且TCRE = 1TCRE = 1,當,當TCNTTCNT從從$FFFF$FFFF復位到復位到$0000$0000時,時,TOFTOF將不會置位。將不會置位。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊預分頻系數選擇預分頻系數選擇9.2.2 ECT模塊的基本寄存器模塊的基本寄存器2. 2. 定時器系統控制寄存器定時器系統控制寄存器2 (Time

37、r System Control Register 22 (Timer System Control Register 2,TSCR2)TSCR2)PR2PR2、PR1PR1、PR0PR0:定時器預分頻器選擇位:定時器預分頻器選擇位3. 3. 定時器計數寄存器定時器計數寄存器(Timer Count Register(Timer Count Register,TCNT)TCNT)p1616位主定時器是一個遞增計數器,不停地對時鐘信號位主定時器是一個遞增計數器,不停地對時鐘信號TIMCLKTIMCLK進行計數,進行計數,定時器計數寄存器定時器計數寄存器TCNTTCNT的內容即為計數結果。的內容即

38、為計數結果。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.2 9.2 自由運行計數器及定時器基本寄存器自由運行計數器及定時器基本寄存器9.2.2 ECT9.2.2 ECT模塊的基本寄存器模塊的基本寄存器4. 4. 主定時器中斷標志寄存器主定時器中斷標志寄存器2 (Main Timer Interrupt Flag 22 (Main Timer Interrupt Flag 2,TFLG2)TFLG2)TOFTOF:主定時器溢出標志:主定時器溢出標志p當自由運行定時器溢出時,當自由運行定時器溢出時,TOF=1TOF=1,如果允許中斷(,如果

39、允許中斷(TSCR2TSCR2寄存器中寄存器中TOI=1TOI=1),則將引發溢出中斷。),則將引發溢出中斷。p向該位寫向該位寫1 1將清除將清除TOFTOF標志。標志。p如果如果TSCR1TSCR1寄存器中的寄存器中的TFFCA=1TFFCA=1,對,對TCNTTCNT的任何訪問將清零的任何訪問將清零TFLG2TFLG2寄存器。寄存器。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.3 9.3 輸入捕捉功能及寄存器設置輸入捕捉功能及寄存器設置9.3.1 ECT9.3.1 ECT模塊的輸入捕捉功能模塊的輸入捕捉功能【功能選擇】【功能選擇】p

40、當定時器當定時器IC/OCIC/OC選擇寄存器選擇寄存器TIOSTIOS中的中的IOSn=0IOSn=0時,通道定義為輸入捕捉。時,通道定義為輸入捕捉。【工作原理】【工作原理】p自由運行定時器啟動后,邊沿檢測器便開始監視引腳事件,一旦引腳電平自由運行定時器啟動后,邊沿檢測器便開始監視引腳事件,一旦引腳電平出現設定的有效跳變,自由運行計數器寄存器出現設定的有效跳變,自由運行計數器寄存器TCNTTCNT的當前值便被捕捉到捕的當前值便被捕捉到捕捉寄存器捉寄存器TCnTCn中中(n=0(n=07)7)。p【有效跳變邊沿】【有效跳變邊沿】上升沿、下降沿或任意跳變,由定時器控制寄存器上升沿、下降沿或任意跳

41、變,由定時器控制寄存器TCTL3TCTL3和和TCTL4TCTL4中的中的EDGxBEDGxB和和EDGxAEDGxA位決定。位決定。p設置設置EDGxB:EDGxA=00EDGxB:EDGxA=00,可以關閉邊沿檢測器,停止該通道的捕捉。,可以關閉邊沿檢測器,停止該通道的捕捉。p要求引腳輸入的最小脈寬大于要求引腳輸入的最小脈寬大于2 2個模塊時鐘周期。個模塊時鐘周期。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.3 9.3 輸入捕捉功能及寄存器設置輸入捕捉功能及寄存器設置9.3.1 ECT9.3.1 ECT模塊的輸入捕捉功能模塊的輸入捕

42、捉功能【中斷產生】【中斷產生】p捕捉完成后,主定時器中斷標志寄存器捕捉完成后,主定時器中斷標志寄存器TFLG1TFLG1中的中斷請求標志中的中斷請求標志CnFCnF置位。置位。p如果定時器中斷允許寄存器如果定時器中斷允許寄存器TIETIE中的中斷允許位中的中斷允許位CnI=1CnI=1,且,且CCRCCR中的控制位中的控制位I=0I=0,則系統會產生一次,則系統會產生一次輸入捕捉中斷輸入捕捉中斷。p如果不采用中斷方式響應引腳事件,可以置如果不采用中斷方式響應引腳事件,可以置CnI=0CnI=0,通過軟件查詢標志,通過軟件查詢標志CnFCnF來進行處理。各個來進行處理。各個IC/OCIC/OC通

43、道可以單獨發出中斷請求,也可以分別關通道可以單獨發出中斷請求,也可以分別關閉中斷。閉中斷。p事件處理后,可以向事件處理后,可以向TFLG1TFLG1寄存器的對應位寫入寄存器的對應位寫入1 1,清除標志,清除標志CnFCnF。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.3 9.3 輸入捕捉功能及寄存器設置輸入捕捉功能及寄存器設置9.3.1 ECT9.3.1 ECT模塊的輸入捕捉功能模塊的輸入捕捉功能【通道類型】【通道類型】p帶緩沖的通道帶緩沖的通道IC0IC0IC3(IC3(引腳引腳PT0PT0PT3)PT3)和和非緩沖通道非緩沖通道IC

44、4IC4IC7(IC7(引腳引腳PT4PT4PT7)PT7)。【覆蓋保護功能】【覆蓋保護功能】p每個通道的每個通道的IC/OCIC/OC寄存器寄存器TCnTCn都具有覆蓋保護功能,以防止都具有覆蓋保護功能,以防止ICIC寄存器內容尚寄存器內容尚未讀出之前,上一次捕捉的值被新值所覆蓋。通過設置輸入控制覆蓋寄存未讀出之前,上一次捕捉的值被新值所覆蓋。通過設置輸入控制覆蓋寄存器器ICOVWICOVW的相應位,決定是否允許用新的捕捉值覆蓋上一次的捕捉值。的相應位,決定是否允許用新的捕捉值覆蓋上一次的捕捉值。1 1帶緩沖的帶緩沖的ICIC通道通道p 【組成】【組成】邊沿檢測、延遲濾波、捕捉寄存器和保持寄

45、存器。邊沿檢測、延遲濾波、捕捉寄存器和保持寄存器。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.3.1 ECT9.3.1 ECT模塊的輸入捕捉功能模塊的輸入捕捉功能1 1帶緩沖的帶緩沖的ICIC通道通道(1) (1) 邊沿檢測邊沿檢測p引腳邏輯電平的變化由內部邊沿檢測電路判別,判別規則由定時器控制寄引腳邏輯電平的變化由內部邊沿檢測電路判別,判別規則由定時器控制寄存器存器TCTL3TCTL3和和TCTL4TCTL4中的控制位中的控制位EDGxBEDGxB和和EDGxAEDGxA的狀態決定,判別結果送到延的狀態決定,判別結果送到延遲計數器進行

46、濾波處理。遲計數器進行濾波處理。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊1 1帶緩沖的帶緩沖的ICIC通道通道(2) (2) 延遲濾波延遲濾波p當延遲功能有效時,輸入引腳檢測到一個有效邊沿后,延遲計數器按照預當延遲功能有效時,輸入引腳檢測到一個有效邊沿后,延遲計數器按照預先選擇的先選擇的M M時鐘時鐘( (模塊時鐘,等于內部總線時鐘模塊時鐘,等于內部總線時鐘) )周期數,延遲給定的時間周期數,延遲給定的時間間隔,才產生輸出脈沖。間隔,才產生輸出脈沖。p延遲時間由延遲計數器控制寄存器延遲時間由延遲計數器控制寄存器DLYCTDLYCT中的中

47、的DLY1DLY1、DLY0DLY0決定。延遲計數決定。延遲計數結束后,延遲計數器自動清結束后,延遲計數器自動清0 0。p要求輸入信號兩個有要求輸入信號兩個有效邊沿之間的持續時效邊沿之間的持續時間必須大于設定的延間必須大于設定的延遲時間。遲時間。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.3.1 ECT9.3.1 ECT模塊的輸入捕捉功能模塊的輸入捕捉功能1 1帶緩沖的帶緩沖的ICIC通道通道(3) (3) 輸入捕捉與鎖存輸入捕捉與鎖存p延遲后的有效信號送到輸入捕捉邏輯,根據輸入控制系統控制寄存器延遲后的有效信號送到輸入捕捉邏輯,根據輸

48、入控制系統控制寄存器ICSYSICSYS控制位控制位BUFENBUFEN的狀態和輸入控制覆蓋寄存器的狀態和輸入控制覆蓋寄存器ICOVWICOVW相關位的設置,決相關位的設置,決定是否將定是否將TCNTTCNT的當前值捕捉到捕捉寄存器的當前值捕捉到捕捉寄存器TCnTCn中,以及是否將中,以及是否將TCnTCn中原來中原來的捕捉值鎖存到保持寄存器的捕捉值鎖存到保持寄存器TCnHTCnH中。中。p保持寄存器允許在不保持寄存器允許在不產生中斷的條件下,產生中斷的條件下,連續捕捉兩次不同時連續捕捉兩次不同時刻的值。刻的值。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強

49、型捕捉定時器模塊9.3.1 ECT9.3.1 ECT模塊的輸入捕捉功能模塊的輸入捕捉功能1 1帶緩沖的帶緩沖的ICIC通道通道(3) (3) 輸入捕捉與鎖存輸入捕捉與鎖存p當輸入捕捉寄存器當輸入捕捉寄存器TCnTCn的值被讀取后或被鎖存到保持寄存器的值被讀取后或被鎖存到保持寄存器TCnHTCnH中時,相中時,相應的應的TCnTCn被清空。被清空。p當保持寄存器的內容被讀出時,當保持寄存器的內容被讀出時,TCnHTCnH也被清空。也被清空。p鎖存完成后,根據中鎖存完成后,根據中斷允許寄存器斷允許寄存器TIETIE中中CnICnI位的設置,決定是位的設置,決定是否向否向CPUCPU提出中斷請求。提

50、出中斷請求。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊1 1帶緩沖的帶緩沖的ICIC通道通道(4) (4) 帶緩沖的帶緩沖的ICIC通道的工作模式通道的工作模式p【工作模式】【工作模式】鎖存模式鎖存模式和和隊列模式隊列模式,由輸入控制系統控制寄存器,由輸入控制系統控制寄存器ICSYSICSYS的的控制位控制位LATQLATQ決定。決定。 鎖存模式鎖存模式當輸入控制系統控制寄存器當輸入控制系統控制寄存器ICSYS中中的的LATQ=1時,為輸入捕捉鎖存模式。時,為輸入捕捉鎖存模式。p 每個有效的輸入每個有效的輸入引腳跳變將自由引腳跳變將自由定

51、時器的值復制定時器的值復制到捕捉寄存器到捕捉寄存器TCnTCn中,而中,而TCnTCn到到TCnHTCnH的傳送必須依賴的傳送必須依賴MDCMDC復復0 0或強制鎖或強制鎖存命令實現。存命令實現。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊 鎖存模式鎖存模式【覆蓋控制】【覆蓋控制】p如果輸入控制覆蓋寄存器如果輸入控制覆蓋寄存器ICOVWICOVW中的相應位中的相應位NOVWxNOVWx0 0,當發生,當發生新的輸入捕捉時,輸入捕捉寄新的輸入捕捉時,輸入捕捉寄存器存器TCnTCn的值將被新值所覆蓋。的值將被新值所覆蓋。如果發生鎖存操作,其保持

52、寄如果發生鎖存操作,其保持寄存器存器TCnHTCnH的內容也會被覆蓋。的內容也會被覆蓋。p如果如果ICOVWICOVW寄存器中的相應位寄存器中的相應位NOVWxNOVWx1 1,TCnTCn或或TCnHTCnH必須處于必須處于清空狀態才允許寫入,否則不清空狀態才允許寫入,否則不能寫入新值。這樣就可以在讀能寫入新值。這樣就可以在讀取捕捉值或將該捕捉值轉移到取捕捉值或將該捕捉值轉移到保持寄存器之前,避免保持寄存器之前,避免TCnTCn和和TCnHTCnH被覆蓋。被覆蓋。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊1 1帶緩沖的帶緩沖的ICIC通

53、道通道(4) (4) 帶緩沖的帶緩沖的ICIC通道的工作模式通道的工作模式 鎖存模式鎖存模式【鎖存條件】【鎖存條件】v MDCMDC自然回自然回0 0。v 向向MDCMDC直接寫直接寫入入$0000$0000。v 向向MDCMDC控制寄控制寄存器存器MCCTLMCCTL強強制鎖存控制位制鎖存控制位ICLATICLAT直接寫直接寫1 1。LATQ=1基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊p 【鎖存條件】【鎖存條件】 當當MDCMDC向下溢出向下溢出( (計數值計數值=0)=0)時,時,TCnTCn中的內容被鎖存到各自的中的內容被鎖存到各

54、自的保持寄存器保持寄存器TCnHTCnH中。中。 當輸入控制系統控制寄存器當輸入控制系統控制寄存器ICSYSICSYS中的控制位中的控制位BUFEN=1BUFEN=1時,時,向向MDCMDC和其計數寄存器和其計數寄存器MCCNTMCCNT寫入寫入$0000$0000,將使,將使TCnTCn的內容的內容鎖存到各自的保持寄存器鎖存到各自的保持寄存器TCnHTCnH中。中。 當當ICSYSICSYS寄存器中的控制位寄存器中的控制位BUFEN=1BUFEN=1時,向時,向MDCMDC控制寄存控制寄存器器MCCTLMCCTL強制鎖存控制位強制鎖存控制位ICLATICLAT寫寫1 1,將使,將使TCnTC

55、n中的內中的內容鎖存到各自的保持寄存器容鎖存到各自的保持寄存器TCnHTCnH中。中。鎖存模式下的鎖存模式下的ECT模塊框圖模塊框圖基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.3.1 ECT9.3.1 ECT模塊的輸入捕捉功能模塊的輸入捕捉功能(4) (4) 帶緩沖的帶緩沖的ICIC通道的工作模式通道的工作模式 隊列模式隊列模式p 一旦輸入引腳上出現一個有效的電平跳變,主定時器中的值被復制到捕捉寄存器一旦輸入引腳上出現一個有效的電平跳變,主定時器中的值被復制到捕捉寄存器TCnTCn中。中。TCnTCn與與TCnHTCnH形成一個類似形成

56、一個類似先進先出先進先出的隊列,每次捕捉值從的隊列,每次捕捉值從TCnTCn寄存器進入,隨著下寄存器進入,隨著下一個捕捉值的到來移入一個捕捉值的到來移入TCnHTCnH寄存器,程序可以從寄存器,程序可以從TCnHTCnH取得結果。取得結果。當輸入控制系統控制寄存器當輸入控制系統控制寄存器ICSYS中中的的LATQ=0時,為輸入捕捉時,為輸入捕捉隊列模式隊列模式。p 然而,這個隊列是然而,這個隊列是開放的,即程序也開放的,即程序也可以直接從可以直接從TCnTCn取取得捕捉結果。得捕捉結果。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊9.3.1

57、 ECT9.3.1 ECT模塊的輸入捕捉功能模塊的輸入捕捉功能(4) (4) 帶緩沖的帶緩沖的ICIC通道的工作模式通道的工作模式 隊列模式隊列模式p 【覆蓋控制】【覆蓋控制】如果輸入控制覆蓋寄存器如果輸入控制覆蓋寄存器ICOVWICOVW中的相應位中的相應位NOVWxNOVWx0 0,當發生新的輸入捕捉時,當發生新的輸入捕捉時,ICIC寄存器中的值將被鎖存到其保持寄存器中,寄存器中的值將被鎖存到其保持寄存器中,ICIC寄存器存儲新的定時器值。寄存器存儲新的定時器值。如果如果ICOVWICOVW寄存器中的相應位寄存器中的相應位NOVWxNOVWx1 1,TCnTCn或或TCnHTCnH必須處于

58、清空狀態才允許寫入,必須處于清空狀態才允許寫入,否則不能寫入新值。否則不能寫入新值。基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊隊列模式下定時器模塊框圖隊列模式下定時器模塊框圖9.3.1 ECT9.3.1 ECT模塊的輸入捕捉模塊的輸入捕捉功能功能1 1帶緩沖的帶緩沖的ICIC通道通道(4) (4) 帶緩沖的帶緩沖的ICIC通道的工作模式通道的工作模式 隊列模式隊列模式p 【鎖存條件鎖存條件】在隊列模式下,讀在隊列模式下,讀TCnHTCnH將使將使相應的脈沖累加器的值鎖存相應的脈沖累加器的值鎖存到其保持寄存器中。到其保持寄存器中。基于HCS

59、12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定時器模塊增強型捕捉定時器模塊【中斷標志建立條件】【中斷標志建立條件】p在在鎖存模式鎖存模式下,下,LATQ=1LATQ=1,無論輸入控制系統控制寄存器,無論輸入控制系統控制寄存器ICSYSICSYS中的輸入捕中的輸入捕捉緩沖允許位捉緩沖允許位BUFENBUFEN和定時器標志置位模式位和定時器標志置位模式位TFMODTFMOD的狀態如何,只有發的狀態如何,只有發生捕捉時才會置位中斷標志生捕捉時才會置位中斷標志CnFCnF。p在在隊列模式隊列模式下,下,LATQ=0LATQ=0,如果,如果BUFENBUFEN和和TFMODTFMOD中任意

60、一個狀態為中任意一個狀態為0 0,中斷標,中斷標志志CnFCnF置位條件與置位條件與LATQ=1LATQ=1時相同。只有當時相同。只有當BUFEN=1BUFEN=1和和TFMOD=1TFMOD=1時,捕捉時不時,捕捉時不會置位中斷標志會置位中斷標志CnFCnF,TCnTCn到到TCnHTCnH的鎖存操作才會置位標志的鎖存操作才會置位標志CnFCnF,這樣就可,這樣就可以在不產生中斷的條件下,連續捕捉兩次不同時刻的值。以在不產生中斷的條件下,連續捕捉兩次不同時刻的值。帶緩沖的帶緩沖的IC通道中斷標志建立邏輯通道中斷標志建立邏輯基于HCS12的嵌入式系統設計第第9 9章章 S12S12增強型捕捉定

溫馨提示

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

評論

0/150

提交評論