51微控制器的定時 計數器

2021-08-28 06:00:19 字數 823 閱讀 9448

實現led燈閃爍,**如下:

#include //51微控制器標頭檔案

sbit led = p0^0; //定義特殊暫存器p0.0;注意:sbit 必須小寫、p 大寫!

void main()

}

在上面的程式中,使用for迴圈來實現延時功能,很簡單,但是存在問題:

延時時間不準確

嚴重浪費cpu資源

所以我們要使用微控制器的定時/計數器來實現延時功能。

msc51微控制器中有兩個16位定時器/計數器(即t0和t1)。

如圖:當微控制器計數器連線欸到輸入脈衝時,計數器就可以開始工作。

16位的計數器範圍:0000~ffff,當超出這個範圍是會溢位。 16位的計數器範圍:0000~ffff,當超出這個範圍是會溢位。

計時器/定時器原理圖

如圖:當開關打到上面,計數器與振盪器相連,實現定時器功能。

當開關打到下面,計數器與t1相連,實現計時器功能。

控制端可以控制計數器/定時器的啟動和停止。

定時器相關的暫存器

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

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

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

1.什麼是定時 計數器?51微控制器中的定時器同時可以用作計數器,所以在此稱為定時 計數器,即它有實現這兩種功能的能力。定時 計數器的核心部件是乙個加法 也有減法 計數器,其本質是對脈衝進行計數。只是計數脈衝 不同 如果計數脈衝來自系統時鐘,則為定時方式,計數器的輸入脈衝是由晶振12分頻獲得 此時為...

搞懂51微控制器定時器 計數器

搞懂51定時器 計數器 步驟 1 第1步 先設定好定時器的時鐘源 如果需要的話 2 第2步 初始化時鐘相關暫存器 3 第3步 設定定時時間 計數個數 4 第4步 設定中斷處理程式 5 第5步 開啟定時器 5 執行時 定時器計數到後產生中斷,然後執行中斷isr 中斷服務處理,interrupt ser...