a片在线观看免费看视频_欧美婬片在线a_同性男男无遮挡无码视频_久久99狠狠色精品一区_《性妲己》电影在线观看_久久久99婷婷久久久久久_亚洲精品久久久久58_激情在线成人福利小电影_色婷婷久久综合五月激情网

0 賣盤信息
BOM詢價
電子百科詞庫 >定時器

定時器

[ 瀏覽次數:約2779次 ] 發布日期:2016-12-14


1876年,英國外科醫生索加取得一項定時裝置的專利,用來控制煤氣街燈的開關。它利用機械鐘帶動開關來控制煤氣閥門。起初每周上一次發條,1918年使用電鐘計時后,就不用上發條了。隨著生活水平的提高,定時器的用途也越來越廣泛。比如對開水機、熱水器的定時控制,現在有了大功率定時器,定時開機、定時關機,實現節能、安全、健康的使用。人類最早使用的定時工具是沙漏或水漏,但在鐘表誕生發展成熟之后,人們開始嘗試使用這種全新的計時工具來改進定時器,達到準確控制時間的目的。定時器確實是一項了不起的發明,使相當多需要人控制時間的工作變得簡單了許多。人們甚至將定時器用在了軍事方面,制成了定時炸彈,定時雷管。現在的不少家用電器都安裝了定時器來控制開關或工作時間。


定時器

目錄
定時器的種類
定時器的工作原理
定時器的電路圖
定時器的管理模塊
定時器的基本操作



定時器的種類


1、 接通延時型定時器:接通延時型定時器是各種PLC中最常見最基本的定時器,這種定時器在 SIEMENS的PLC中,稱為SD型定時器。

2、 斷開延時型定時器:這種定時器是當輸入條件00000為ON時無延時作用,只有在輸入條件00000為OFF時產生延時作用。在SIEMENS的PLC中,稱為SF型定時器。

3、保持型接通延時定時器:這種定時器是當輸入條件00000為ON后,即產生鎖存功能,即使輸入條件00000又變為OFF,仍視輸入條件為ON,當定時器的當前值等于設定值時,定時器動作,這種定時器在SIEMENS的PLC中,稱為SS型定時器。

4、脈沖型定時器:這種定時器是當輸入條件00000為ON后,定時器即時動作,但經過定時器所設定的時間后,即使輸入條件00000仍為ON,定時器卻變為OFF狀態。即這種定時器ON狀態的維持時間是由設定值決定的。如果00000為ON的時續時間小于定時器的設定值,定時器的ON狀態維持時間為輸入條件00000為ON的持續時間。這種定時器在SIEMENS的PLC中,稱為SP型定時器。

5、擴張型脈沖定時器:這種定時器與脈沖型定時器的區別是,只要輸入條件00000出現了ON狀態,不管其持續時間多長,均可使定時器為ON的維持的時間與定時器的設定值一致。這種定時器在SIEMENS的PLC中,稱為SE型定時器。

定時器按結構可分為機械式、電動式和電子式:


  1、機械式定時器  以發條為原動力,用擒縱調速器控制走時精度,通過齒輪傳動和凸輪,按時間控制機構預置的時段操縱執行機構動作。計時精度要求不高的定時器(如風扇定時器、洗衣機定時器、廚房用定時器、照相暗房用定時器、電視機控制用定時器、電燈開關定時器),一般采用無固有振動周期的調速器。這些定時器都是在手動上發條的同時預置時限,定時精度不高,但結構簡單,使用方便。計時精度要求高、定時范圍在3~12小時的定時器,一般采用擺輪游絲調速器。


  2、電動式定時器  用交流同步電動機或石英步進電機驅動,通過齒輪傳動和凸輪簧片觸點機構,按預置的時段或時刻控制執行機構。其中短時段控制的電動式定時器可用于程序控制式洗衣機、洗碗機、微波爐、烘箱及時間繼電器等;長時段電動式定時器是一種24小時或7天程序控制的開關裝置,可預置開關動作多次,最短時間控制間隔一般為15分鐘,可用于用戶用電情況監控、照明控制、實驗室裝置控制、空調器控制和自動生產線上某些設備的定時控制等。


  3、電子式定時器  利用石英振蕩器或民用交流電的標準頻率,經過分頻計數組成時間累加器或數字鐘,按照預置的時間編碼輸出控制信號。這種定時器走時精確,時間設定沒有誤差,定時精度高,控制程序多。其中長時段定時器最小控制時段一般為1分鐘,配上微處理器后能精確地編制一年的時間程序,組成多路可編程序的定時器。電子式定時器在工業自動化控制系統中應用廣泛,它也是節約能源管理中一種有效的技術措施。電子定時器類的電子定時開關鐘,可用于按高、平、低峰用電收取不同電費制度的場合,它將一天內的用電高峰、平峰、低谷時間在定時開關中設定,并分別接通3種電表進行計費。電子式定時器在科學實驗中和在微波爐、電飯鍋、洗衣機等電器中也有使用



   定時器的工作原理


   定時器根據其輸入條件導致完成動作的不同可分為接通延時型定時器、斷開延時型定時器、保持型接通延時定時器、脈沖型定時器和擴張型脈沖定時器五種。其中,接通延時型定時器也稱為SD型定時器,是PLC(可編程邏輯控制器)中最基本的一種;斷開延時型定時器也稱為SF型定時器,當其輸入條件為OFF即斷開時才會起到延時作用;保持型接通延時定時器也稱為SS型定時器,當輸入條件為ON即接通時起到鎖存功能,若輸入條件由ON變為OFF時,仍認為輸入條件為ON起到保持作用;脈沖型定時器也稱為SP型定時器,當輸入條件為ON時立刻發生動作,但動作屬于脈沖型,僅能維持定時器的設定時間,若設定時間過后,即使輸入條件為ON,定時器也處于OFF狀態,若設定時間內,輸入條件變為OFF,則動作停止;擴張型脈沖定時器也稱為SE型定時器,其與脈沖型定時器相類似,不同之處僅在于輸入條件為ON時,即使在設定時間內條件變為OFF,動作仍不停止,擴張到設定時間為止。

   接下來我們以PLC中的定時器為例來說明定時器的結構,并在下一部分中解釋其工作原理。PLC中的定時器根據累積的時鐘脈沖來完成計時的功能,其主要由一個存儲器、一個設定值寄存器和一個當前值寄存器構成,其中,設定值寄存器用于存儲設定時間值,當前值寄存器用于存儲當前時間值。

   當定時器輸入條件滿足計時要求時開始計時,設定值寄存器存儲設定時間值不變,當前值寄存器存儲當前時間值隨時間發生變化,一旦當前時間值增加到與設定時間值相同,定時器發生動作,常開觸點接通而常閉觸電斷開,并通過程序作用于被控制對象,以達到控制時間的目的。


定時器的電路圖


定時器的電路圖

定時器的管理模塊


定時器是通信協議正常運行的基本要素之一,主要用于各種定時和幀重傳的任務。通信協議在單片機系統上實現所使用的定時器,定時精度要求不高,但數量要求比較大。由于硬件資源有限,不可能為每一個單獨任務分配一個硬件定時器,只能通過單個硬件定時器模擬多個軟件定時器的方法,來滿足協議中的定時應用需要。

用一定的數據結構將這些軟件定時器組織起來,并提供統一的調用接口,稱為“定時器管理”。目前定時器管理主要有2種實現方法:

①靜態數組法。將定時器節點存儲在數組中。優點是邏輯簡單,占用ROM較少。但這種方案有明顯的缺點:當硬件定時器中斷發生時,要對所有定時器節點進行減法操作,時間開銷很大,且時延不確定(與定時器數目相關)。

②delta鏈表法。按照定時器的定時值升序排列,形成鏈表。后一個定時器的定時值是前面所有定時器的值加上本節點的值。這樣,在每次的時鐘中斷處理中,只需對第1個定時器節點進行減法操作,大大減少了時間開銷。但是,該方案邏輯復雜,ROM用量大,需要頻繁分配回收內存,容易形成內存碎片。

1 定時器管理模塊的設計

定時器管理模塊的設計基于靜態數組法。使用一個定時器節點數組來保存所有的定時請求,數組的每一項代表一個可用的定時器節點。每一個定時器節點都有一個狀態項,表示該定時器正處于空閑、使用或溢出狀態。定時器的定時值和定時器超時后要發送的消息也存儲在定時器節點中,從而實現用一個硬件定時器為用戶提供多個軟件定時器。

為了解決中斷處理時間開銷大的問題,在模塊中引入一個輔助定時器,輔助定時器的值總是等于所有定時器節點中的最小定時值。在硬件定時器中斷處理中,僅對輔助定時器進行減法操作,從而大大縮短了中斷處理的時間。設計原理如圖1所示。

定時器管理模塊的設計

2定時器管理模塊的實現

2.1數據結構和函數接口

定時器管理模塊使用的相關數據結構定義如下:

字段state保存了定時器節點的狀態,可能取值為空閑(T_FREE)、使用(T_INUSE)或溢出(T_OVERFLOW)。

字段count保存了定時器節點的定時值,最大取值為65 535。如果設置硬件定時器中斷為10 ms,則軟件定時器最大定時約為655 s,可以滿足大多數應用需要。

字段msg指向定時器的用戶消息。在啟動定時器時,指向消息的指針被保存在此字段。當定時時間結束后,中斷處理函數會自動發出這個消息以通知用戶任務。

由于數組的下標是唯一的,可作為識別節點的唯一ID號。下文中提到的節點ID號均表示節點在數組中的下標。

定時器的數據結構和函數接口

MAX_TIMER_NUM表示系統允許的最大定時器數,其值取決于具體應用需要。

本模塊提供的關鍵接口函數如下:

2.2定時器的初始化

使用定時器管理模塊前,需要進行定時器的初始化。主要是初始化定時器節點數組,將每一個定時器節點設置為空閑狀態,同時將輔助定時器置零,輔助ID指向0xFF(表示空)。

2.3定時器的啟動


啟動一個定時器,主要是將節點數組中一個空閑狀態的節點置為使用狀態。如果這個新啟用的定時器,是所有定時器中定時值最小的,還要更新輔助定時器。函數以指向定時器消息的指針和定時值為參數,啟動定時器流程如圖2所示。成功啟動定時器后,返回該定時器節點的ID號。


定時器的啟動流程

2.4定時器的刪除

在目標定時器到期之前,由于某種原因用戶可能會要求取消定時器。如重發定時器,用戶在發送數據幀后啟動該定時器,并等待對方返回響應幀。如果在定時時間結束時沒有收到響應幀,用戶就需要重發原數據幀;如果在定時時間結束之前收到響應幀,用戶就需要馬上取消該定時器,然后進行下一次通信過程。

刪除定時器函數以定時器節點ID號作為輸入參數,將定時器節點設為空閑狀態,并根據需要更新輔助定時器,流程如圖3所示。

2.5定時器的驅動

定時器的驅動

軟件定時器的驅動由硬件定時器提供。在硬件定時器中斷中,首先將輔助定時器的值減1。如果輔助定時器值為0,則表示定時值最小的定時器已經超時,應將對應的消息發送給用戶任務,將節點置為空閑狀態,并重新計算其他節點的定時值,同時查找定時值最小的節點,更新輔助定時器。


定時器的基本操作

  F2810/F2812器件上有3個Q9位CPU定時器(TIMERO/1/2)。只有定時器1和2預留給實時操作系統DSP/BIOS使用,只有定時器0可以在就用程序中使用,定時器的功能如圖1所示。


定時器功能框圖.png

  圖1 定時器功能框圖


  若處理器采用30 MHz的外部時鐘,經過鎖相環10/2倍頻后,系統的時鐘工作在150 MHz。圖中的定時器選擇SYSCLKOUT作為定時器時鐘,工作頻率也是150 MHz。一旦定時器被使能(TCR-Bit 4=0),定時器時鐘經過預定標計數器(PSCH:PSC)遞減計數,預定標計數器產生下溢后向定時器的32位計數器(TIMH:TIM)借位p最后定時器計數器產生溢出使定時器向CPU發送中斷。定時器中斷結構如圖2所示。


  每次預定標計數器產生溢出后使用分頻寄存器(TDDRH:TDDR)中的值重新裝載。同樣,32位周期寄存器(PRDH[_]PRD)為32位計數器提供重新裝載值。


定時器中斷結構.png

  圖2 定時器中斷結構


定時器的比較操作

  每個通用定時器都有一個比較寄存器TxCMPR和一個PWM輸出引腳TxPWM。通用定時器計數器的值一直與相關的比較寄存器的值比較,當定時器計數器的值與比較寄存器的值相等時,就產生比較匹配。可通過TxCON[l]位使能比較操作,產生比較匹配后將會有下列操作(如圖所示)。


  ●匹配1個時鐘周期后,定時器的比較中斷標志位置位。


  ●匹配1個CPU時鐘周期后,根據寄存器GPTCONA/B相應位的配置情況,PWM的輸出將產生跳變。


  ●如果比較中斷標志位已通過設置寄存器GPTCONA/B中的相應位啟動A/D轉換器,則比較中斷位置位的同時產生A/D轉換啟動信號。


  ●如果比較中斷未被屏蔽,將產生一個外設申斷申請。


通用定時器比較操作功能框圖.png

通用定時器比較操作功能框圖


相關資訊

拍明芯城微信圖標

各大手機應用商城搜索“拍明芯城”

下載客戶端,隨時隨地買賣元器件!

拍明芯城公眾號
拍明芯城抖音
拍明芯城b站
拍明芯城頭條
拍明芯城微博
拍明芯城視頻號