導航:首頁 > 操作系統 > 單片機定時器怎麼設置

單片機定時器怎麼設置

發布時間:2022-08-26 17:52:12

1. 單片機定時器GATE怎麼配置

GATE位是用P3.2或P3.3外部觸計數時用,P3.2可以用高電平觸發計數器T0,在設置計數器/定時器工作模式時,按需要設置,只要把TMOD寄存器中的GATE位設置為1就行了。例,T0,計數模式,8位,即方式2,則TMOD=0000 1110=0xE0

2. 51系列單片機定時/計數器初始化的四個步驟

1、設置寄存器TMOD
2、計算初始值
3、開放中斷
4、啟動定時器

3. 51單片機的3個定時器怎樣使用

51單片機只有T0,T1。52才有T2的。
定時器設置方法:
做定時用一般採用16位模式,也就是TMOD=0x11(10或01單獨一個定時器的話),初值的計算是這樣的:
1.
假設時間是X毫秒,晶振為YMhz,那麼:
THn=(65536-1000*X*Y/12)/256

TLn=(65536-1000*X*Y/12)%256
2.
之後就是TRn=1(開啟定時器)
ETn=1(開啟定時器中斷)
EA=1

4. 51單片機定時器怎麼設置時間

編個小程序,把你的時間,輸入到單片機。

5. 51單片機定時器怎麼設置時間

51單片機(基本型)的任何設置參數都是無法保存的,要想保存設置參數有以下幾種途徑:
1、選用帶EEPROM的51兼容型單片機,將設置參數寫入EEPROM;
2、外擴一片串列EEPROM比如24C02之類的存儲晶元專門用於存放設置參數。

6. 單片機定時器的使用方法

第一步:設置特殊功能寄存器 TMOD,配置好工作模式。

第二步:設置計數寄存器 TH0 和 TL0 的初值。

第三步:設置 TCON,通過 TR0 置 1 來讓定時器開始計數。

第四步:判斷 TCON 寄存器的 TF0 位,監測定時器溢出情況。

寫程序之前,我們要先來學會計算如何用定時器定時時間。我們的晶振是 11.0592M,時鍾周期就是 1/11059200,機器周期是 12/11059200,假如要定時 20ms,就是 0.02 秒,要經過x 個機器周期得到 0.02 秒,我們來算一下 x*12/11059200=0.02,得到 x= 18432。16 位定時器的溢出值是 65536(因 65535 再加 1 才是溢出),於是我們就可以這樣操作,先給 TH0 和 TL0一個初始值,讓它們經過 18432 個機器周期後剛好達到 65536,也就是溢出,溢出後可以通過檢測 TF0 的值得知,就剛好是 0.02 秒。那麼初值 y = 65536 - 18432 = 47104,轉成 16 進制就是 0xB800,也就是 TH0 = 0xB8,TL0 = 0x00。

這樣 0.02 秒的定時我們就做出來了,細心的同學會發現,如果初值直接給一個 0x0000,一直到 65536 溢出,定時器定時值最大也就是 71ms 左右,那麼我們想定時更長時間怎麼辦呢?用你小學學過的邏輯,倍數關系就可以解決此問題。

好了,我們下面就用程序來實現這個功能。

#include

sbit LED = P0^0;

sbit ADDR0 = P1^0;

sbit ADDR1 = P1^1;

sbit ADDR2 = P1^2;

sbit ADDR3 = P1^3;

sbit ENLED = P1^4;

void main(){

unsigned char cnt = 0; //定義一個計數變數,記錄 T0 溢出次數

ENLED = 0; //使能 U3,選擇獨立 LED

ADDR3 = 1;

ADDR2 = 1;

ADDR1 = 1;

ADDR0 = 0;

TMOD = 0x01; //設置 T0 為模式 1

TH0 = 0xB8; //為 T0 賦初值 0xB800

TL0 = 0x00;

TR0 = 1; //啟動 T0

while (1){

if (TF0 == 1){ //判斷 T0 是否溢出

TF0 = 0; //T0 溢出後,清零中斷標志

TH0 = 0xB8; //並重新賦初值

TL0 = 0x00;

cnt++; //計數值自加 1

if (cnt 》= 50){ //判斷 T0 溢出是否達到 50 次

cnt = 0; //達到 50 次後計數值清零

LED = ~LED; //LED 取反:0--》1、1--》0

}

}

}

}

程序中都寫了注釋,結合前幾章學的內容,自己分析一下,不難理解。本程序實現的結果是開發板上最右邊的小燈點亮一秒,熄滅一秒,也就是以 0.5Hz 的頻率進行閃爍

7. 請問單片機定時器的初值是怎麼設的

定時器初值=2^n-m*晶振值/分頻系數;
n:定時器模式,有13,8,16三種;
m:要定的時間長度,
晶振值:12MHz或6Mhz
分頻系數:12
定義10毫秒;定時器模式1,晶振頻率12MHz
定時器初值=2^16-10ms*12Mhz/12
.
=65536-10000
.
=5536
注意單位換算;

8. 單片機定時器 計數器的工作原理,及如何實現定時 計數功能

原理: 16位的定時器/計數器實質上就是一個加1計數器,其控制電路受軟體控制、切換。 當定時器/計數器為定時工作方式時,計數器的加1信號由振盪器的12分頻信號產生,即每過一個機器周期,計數器加1,直至計滿溢出為止。

顯然,定時器的定時時間與系統的振盪頻率有關。因一個機器周期等於12個振盪周期,所以計數頻率fcount=1/12osc。

兩個位元組最大數據為65536(十進制),或者0FFFFH(十六進制)

高位元組為TH0=(65536-X)/256,就是除以256後的整數部分;

低位元組為TL0=(65536-X)%256,減去高位元組後餘下的部分;

定時/計數器

定時/計數器T0和T1分別是由兩個8位的專用寄存器組成,即定時/計數器T0由TH0和TL0組成,T1由TH1和TL1組成。此外,其內部還有2個8位的特殊功能寄存器TMOD和TCON,TMOD負責控制和確定T0和T1的功能和工作模式,TCON用來控制T0和T1啟動或停止計數,同時包含定時/計數器的狀態。

以上內容參考:網路-定時器中斷

9. 單片機定時器設置步驟

搜狐網
晴 / -25°
新手入門!如何設置單片機定時器?

嵌入式資訊精選
2018-12-05
訂閱
在單片機的學習過程中,單片機定時器的合理設置和應用是非常關鍵的一步,也是剛開始接觸單片機知識的新人工程師們比較容易出錯誤的一個環節之一。在今天的文章中,我們為大家總結了單片機定時器應用過程中的兩大常見問題進行實時解析,希望能夠對各位新人工程師的學習提供一定幫助。
問題一:51單片機的T0、T1定時器四種工作方式各有什麼特點?
在單片機定時器的應用過程中,定時器在進行設置時會有四種不同的工作方式,合理選擇相應的工作方式可以幫助工程師快速完成及時設置。下面我們就來逐一講解一下這四種不同的計時方式。方式0是單片機計時器的第一種計時方式,這一方式13位計數模式。方式1則採用16位計數模式,方式2採用8位自動重裝入計數模式,這兩種技術模式也是目前在單片機應用過程中最常使用的及時方式。最後一種單片機定時器的計時方式是方式3,這一模式下只有T0有的雙8位計數模式。

10. C51單片機定時器1以方式1定時1秒如何設置

1、先打開我們熟悉的單片機c51編程軟體——keil,先把主方法寫好。

閱讀全文

與單片機定時器怎麼設置相關的資料

熱點內容
android自動連接指定wifi 瀏覽:489
用紙做超簡單又解壓的東西 瀏覽:596
國密2演算法是對稱的嗎 瀏覽:463
nc65伺服器地址配置 瀏覽:520
單片機實驗報告電子琴 瀏覽:742
程序員恢復微信文件代碼 瀏覽:517
有漁python 瀏覽:79
pdf字體加深 瀏覽:204
怎麼做一個minecraft伺服器 瀏覽:769
c語言實現ls命令 瀏覽:663
小洋糕解壓視頻 瀏覽:450
域名內網訪問內網伺服器地址 瀏覽:138
我的世界伺服器如何摳掉金幣 瀏覽:223
域名與ip地址通過什麼伺服器查 瀏覽:96
企業網站需要什麼雲伺服器配置 瀏覽:910
遼事通伺服器出現錯誤是什麼原因 瀏覽:766
能否將一個表格的子表加密 瀏覽:64
手機ios微信收藏怎麼加密 瀏覽:594
安卓如何改黑色 瀏覽:331
oracle資料庫導出命令 瀏覽:697