微控制器學習 定時 計數器(1)

2021-10-06 18:33:12 字數 902 閱讀 3928

1.什麼是定時/計數器?

51微控制器中的定時器同時可以用作計數器,所以在此稱為定時/計數器,即它有實現這兩種功能的能力。定時/計數器的核心部件是乙個加法(也有減法)計數器,其本質是對脈衝進行計數。只是計數脈衝**不同:如果計數脈衝來自系統時鐘,則為定時方式,計數器的輸入脈衝是由晶振12分頻獲得(此時為12t模式(單倍速模式)每12個時鐘得到乙個計數脈衝,6t時為雙倍速模式,),也就是乙個機器週期(12個時鐘週期);如果計數脈衝來自於微控制器外部引腳(t0接p3.4,p1接p3.5)則為計數模式,每來1個脈衝加1。

1)計數器

51微控制器中有兩個16位計數器t0與t1(分別由兩個8位計數單元構成),最大計數量為65536(2^16)。當計數滿65536時,計數器將溢位並傳送給cpu乙個訊號產生「中斷」,可以通過設定不同的初值來使計數器到達65536所需脈衝的次數。

2)定時器

假定微控制器內部的時鐘振盪器產生11.0529mhz的脈衝訊號,經12分頻後得到11.0529/12mhz的脈衝訊號,且其週期為1微秒,那麼從0計數65536次需要時間為65536*12/11.0529≈71151.643us≈71.15ms。

2.定時/計數器的結構與工作原理

定時/計數器的基本結構如圖所示,t0和t1分別是由兩個8位計數器構成的16位計數器。

可以看到,微控制器內部與定時器/計數器有關的有兩個暫存器:其中暫存器tcon控制啟停,暫存器tmod設定工作方式,且定時器/計數器通過匯流排與cpu連線。

另外,無論定時器/計數器工作於哪種模式之下,在其溢位之前都不占用cpu執行時間,所以它的計數或定時過程中的工作不影響cpu其他的工作,這也是其優勢所在。

51微控制器的定時 計數器

實現led燈閃爍,如下 include 51微控制器標頭檔案 sbit led p0 0 定義特殊暫存器p0.0 注意 sbit 必須小寫 p 大寫!void main 在上面的程式中,使用for迴圈來實現延時功能,很簡單,但是存在問題 延時時間不準確 嚴重浪費cpu資源 所以我們要使用微控制器的定...

微控制器 定時器 計數器

一 簡述 mcs 51系列微控制器內部有兩個16位定時器 計數器,即定時器t0和定時器t1。它們都具有定時和計數功能,可用於定時或延時控制,對外部事件進行檢測 計數等。定時器 計數器是乙個加 1 計數器,來一脈衝即做加1計數,直至暫存器各位全為1,再來一脈衝,計數器回0且使tf0 定時器t0 tf1...

51微控制器的中斷與定時計數器嘗試

這是我的第一篇有關51微控制器的部落格,主要記錄我的學習歷程與中間遇到的問題,如有錯漏請指出。在我理解裡面中斷與定時計數器是這樣的 中斷是通過檢查p3.2 int0 與p3.3 int1 兩個引腳來觸發的 計數器是通過檢查p3.4 t0 與p3.5 t1 兩個引腳的狀態,要達到一定的次數 一般是記脈...