① 簡單描述AT89C51單片機的定時計數器的設置
在單片機中有兩個特殊功能寄存器與定時/計森納數器有關,這就是TMOD和TCON。
1、通過TMOD來設置定時/計數器的工作方式,
2、通過TCON來控制啟停、輪兄溢出標志等等。
3、根據定時時間來確認定時初值(TH0、TL0或TH1、TL1)。
具體演算法是:
初值X=最大計數值-計數值,方式1的最大計數值為:2^16=65536,方式0為:2^13=8192,方式2和方式此桐沒3為:2^8=256
② 為什麼單片機TCON低4位無法改變
MOV TCON,#01H吧
-------------D7 ---D6---D5---D4----D3---D2---D1--D0
TCON ---TF1---TR1--TF0---TR0---IE1---IT1--IE0 - IT0 (設置IT0才是拿純下降臘襪沿觸發消局咐),你都設置中斷位IE0去了
③ 單片機TCON問題
TR1=1; ET1=0; //飢改睜允許爛歲計數器1計時,但不設置計數器1的中斷,你自己殲蠢在程序中輪詢處理TF1
......
if(TF1)
{
TF1=0;
......
}
④ MCS-51單片機外部中斷的觸發方式如何設定和選擇
1、首先在Proteus軟體中添加元器件,如下圖所示。
⑤ 51單片機TCON不設置初值可以嗎 不設置初值那默認值是多少@_@
可以不設初值,初始值為0,定時器0、1都要模式0.定時模式,好久沒有用8051了,記的不太清了。
⑥ 單片機中TCON和TMOD寄存器如何控制
單片機中TCON控制器用於控制定時器的啟動、停止和溢出標志以及外部中斷觸發方式等。TMOD控制器,用於控制定時器T1和T0的操作模式及工作方式。高四位控制定時器1,低四位控制定時器0。
TCON控制器由高到低每個位都有定義:
1、TF1(8FH)、TF0(8DH)位分辨是定時器1和0的溢出標志。定時器產生溢出時,硬體自動置「1」,並可申請中斷,進入中斷服務程序後,由硬體自動清0。也可以作為程序查詢標志位,查詢方式下軟體清零。
2、TR1(8EH)和TR0(8CH):為定時器1和0的啟動控制位。軟體清零定時器停止工作,定時器啟動時該為置「1」。
3、IE1(8BH)和IE0(89H):外部中斷/(INT1)、外部中斷/(INT0)的中斷請求標志位,外部中斷源有請求時置「1」,由觸發方式設置復猛培位;
4、IT1和IT0:外部中斷1和0,觸發方式選擇位。為0是電平觸發方式,為1是邊沿觸發方式。
TMOD控制器每個位定義:
其中:GATE(D7,D3)是門控位,用來控制定時器啟動操作方式。為0由軟體控制位控制,為1外部中斷引腳和軟體控制位共同控制。
C/(/T)(D6,D2)功能選擇位,為0是定時器工作方式,春伏為1是計數器工作方式;
M1(D5、D1)M0(D4、D0)操作模式控制位:00模式0,13位計數器,TLi只用低5位;01 模式1,16位計數器;10 模式2 ,8位自動重裝計數器;11模式3 ,T停止計數,T0分成2個獨立的8位計數器。
TMOD不可以位定址,只能用位元組指令操作,TCON可以位定址。
(6)單片機tcon的設置擴展閱讀
MCS-51單片機存儲器結構詳解
MCS-51單片機存儲器採用哈佛結構(har-vard),在物理結構上分為程序存儲器空間和數據存儲器空間,細分為:片內、片外程序存儲器和片內、片外數據存儲器從圖中可看出,這4個存儲空間存在地址沖突問題:
數據存儲器與程序存儲器的64KB地址空間重疊;程序存儲器中片內與片外的低4KB地址重疊;數據存儲器中片內與片外最低的256B(8031僅有低128B)地址重疊。在程序存儲器中,片內地址0000日一OOZA日的存儲空間,留給系統使用。
片內數據存儲器共256B地址空間,分為低128B和高128B。低128B又分為工作寄存器區、位定址區和用扒知攜戶RAM區;高128B又叫特殊功能寄存器,這些寄存器的功能具有專門的規定,用戶不能修改其結構。存儲器中共有11個可位定址的位地址。其中,片內數據存儲器中有128個;特殊功能寄存器中有83個。
⑦ 51單片機定時器1方式2怎麼設置周期為4ms,占空比為1:4的方波
1、工作方式寄存器TMOD
工作方式寄存器TMOD用於設置定時/計數器的工作方式,低四位用於T0,高四位用於T1。其格式如下:
GATE是門控位, GATE=0時,用於控制定時器的啟動是否受外部中斷源信號的影響。只要用軟體使TCON中的TR0或TR1為1,就可以啟動定時/計數器工作;
GATA=1時,要用軟體使TR0或TR1為1,同時外部中斷引腳INT0/1也為高電平時,才能啟動定時/計數器工作。即此時定時器的啟動條件,加上了INT0/1引腳為高電平這一條件。
C/T :定時/計數模式選擇位。C/T =0為定時模式;C/T =1為計數模式。
M1M0:工作方式設置位。定時/計數器有四種工作方式。
2、控制寄存器TCON
TCON的低4位用於控制外部中斷,已在前面介紹。TCON的高4位用於控
制定時/計數器的啟動和中斷申請。其格式如下:
TF1(TCON.7):T1溢出中斷請求標志位。T1計數溢出時由硬體自動置TF1為1。CPU響應中斷後TF1由硬體自動清0。T1工作時,CPU可隨時查詢TF1的狀態。所以,TF1可用作查詢測試的標志。TF1也可以用軟體置1或清0,同硬體置1或清0的效果一樣。
TR1(TCON.6):T1運行控制位。TR1置1時,T1開始工作;TR1置0時,T1停止工作。TR1由軟體置1或清0。所以,用軟體可控制定時/計數器的啟動與停止。
TF0(TCON.5):T0溢出中斷請求標志位,其功能與TF1類同。
TR0(TCON.4):T0運行控制位,其功能與TR1類同。
定時/計數器的工作方式
1、方式0
方式0為13位計數,由TL0的低5位(高3位未用)和TH0的8位組成。TL0的低5位溢出時向TH0進位,TH0溢出時,置位TCON中的TF0標志,向CPU發出中斷請求。
定時器模式時有:N=t/ Tcy
計數初值計算的公式為:X=2^13-N。
定時器的初值還可以採用計數個數直接取補法獲得。
計數模式時,計數脈沖是T0引腳上的外部脈沖。
門控位GATE具有特殊的作用。當GATE=0時,經反相後使或門輸出為1,此時僅由TR0控制與門的開啟,與門輸出1時,控制開關接通,計數開始;當GATE=1時,由外中斷引腳信號控制或門的輸出,此時控制與門的開啟由外中斷引腳信號和TR0共同控制。當TR0=1時,外中斷引腳信號引腳的高電平啟動計數,外中斷引腳信號引腳的低電平停止計數。這種方式常用來測量外中斷引腳上正脈沖的寬度。
2、方式1
方式1的計數位數是16位,由TL0作為低8位,TH0
作為高8位,組成了16位加1計數器 。
計數個數與計數初值的關系為:X=2^16-N
3、方式2
方式2為自動重裝初值的8位計數方式。
計數個數與計數初值的關系為:X=2^8-N
工作方式2特別適合於用作較精確的脈沖信號發生器。
4、方式3
方式3隻適用於定時/計數器T0,定時器T1處於方式3時相當於TR1=0,停止計數。
工作方式3將T0分成為兩個獨立的8位計數器TL0和TH0 。
使用定時器,該做哪些工作
初始化程序應完成如下工作:
1.對TMOD賦值,以確定T0和T1的工作方式。
2.計算初值,並將其寫入TH0、TL0或TH1、TL1。
3.中斷方式時,則對EA賦值,開放定時器中斷。
4.使TR0或TR1置位,啟動定時/計數器定時或計數。
計數器初值的計算:
機器周期也就是CPU完成一個基本操作所需要的時間。
機器周期=1/單片機的時鍾頻率。
51單片機內部時鍾頻率是外部時鍾的12分頻。也就是說當外部晶振的頻率輸入到單片機裡面的時候要進行12分頻。比如說你用的是12MHZ的晶振,那麼單片機內部的時鍾頻率就是12/12MHZ,當你使用12MHZ的外部晶振的時候。機器周期=1/1M=1us。
而我們定時1ms的初值是多少呢,1ms/1us=1000。也就是要計數1000個數,初值=65535-1000+1(因為實際上計數器計數到64536才溢出)=64536=FC18H
⑧ 單片機中特殊功能寄存器TCON和TMOD中文是什麼意思
TCON:定時器/計數器控制寄存器
可以通過設置此寄存器裡面的相關位,讓定時器開啟或關閉(TR0、TR1,1:開啟,0:關閉),可以在主程
序中,通過查詢其中的相關位(TF1、TF0,1:溢出,0:沒有溢液虧出)。,知道定時有沒有溢出
TMOD;定時器/計數器工作方式控制寄存器,通過鬧脊神對這個寄存器不同的位進行設
置,可以設置:讓T0/T1是定時還是計數方式,是13位計數,16位計數,還是8位自計數,定時的啟動是通過定時開關自身啟動,還是通過外部中斷進行野消啟動。
具體位操作,你可以在網上稍微勤快點,到處都是。
⑨ 51單片機TCON=0x01腳
看來你對C51不太熟悉,可以看一些關於C51基本並灶編程的書
TCON=0x01就是簡單的賦值操作.TCON是51單片機內部定時器控制的特殊功能寄存器(sfr),將它絕畢扮賦值為0x01是說讓定時器T0工作在01模式下。
下數散面的P0~P3的賦值實際上不是標准C的內容,這里賦的值是P0~P3這四個sfr的硬體地址,也就是說,以後用到P0這個變數時,就與0x80這個地址綁定了。
sfr P0=0x80; //這里是聲明地址
P0=0x12; //這是給P0寄存器賦值
sbit EA=IE^7也是給EA這個特殊功能位綁定一個位地址,和上面差不多。這個 不是I/O埠,是內部控制位(總中斷開關),是IE這個sfr的最高位.
同樣,sbit EA=IE^7; //這里是聲明位地址
EA=1; //這里是賦值操作(開總中斷)