Timer2

SyncMOS Technologies Inc.
Timer2
Application Note
JUNE 2006
“ Timer2 ”
Application Notes
1、適用產品:8052
Timer2 僅適用於標準 8052 單晶片,有三種工作模式:
1. 捕捉模式(Capture)
2. 自動再載入模式(Auto-Reload)
3. 鮑率產生器
2、計時/計數器 2 控制暫存器(T2CON)
T2CON
TF2
EXF2
RCLK
TCLK
EXEN2
TR2
C/T2
CP/RL2
TF2:溢位旗標:
1.)當計時/計數發生溢位時,此位元由硬體自動設成 1。
2.)當 RCLK=TCLK=1 時,工作在鮑率產生器模式時,溢位發生時,TF2 不會被設定成 1(無作用)。
3.)此位元必須由軟體指令加以清除。
EXF2:外部旗標:
1.)當設定 Timer2 為捕捉模式或自動再載入模式,且已用軟體指令設定 EXEN2=1 時,此時若
於 T2EX 接腳偵測到負緣信號時,將設定 EXF2=1。如果 Time2 中斷已致能,將使 CPU
去執行 Timer2 之中斷副程式。
2.) EXF2 必須由軟體指令清除。
RCLK:接收時脈旗標:
1.)當 UART 工作於 MODE1 或 MODE3 時,此位元決定接收時脈的來源。
2.)當 RCLK=0 時,串列埠以 TIMER1 之溢位脈波為接收時脈。
3.)當 RCLK=1 時,串列埠以 TIMER2 之溢位脈波為接收時脈。
TCLK:傳送時脈旗標:
1.)當 UART 工作在 MODE1 或 MODE3 時,此位元決定傳送時脈來源。
2.)TCLK=0 時,串列埠以 TIMER1 之溢位脈波為傳送時脈。
3.)TCLK=1 時,串列埠以 TIMER2 之溢位脈波為傳送時脈。
Specifications subject to change without notice, contact your sales representatives for the most recent information.
1/1
SM8952A “F” Version APN Ver 1.0 05/02
SyncMOS Technologies Inc.
Timer2
Application Note
JUNE 2006
EXEN2:外部致能旗標:
1.)當 EXEN2=0 時,抑制 T2EX 接腳之觸發功能。
2.)當 EXEN2=1 且 TIME2 未做 UART 傳輸時脈時,將會致能 T2EX 接腳的觸發功能,此時如果 T2EX
接腳有一負緣信號時,將發生捕捉與自動載入。
TR2: Timer2 啟動停止控制位元:
1.)TR2=0,停止計時或計數。
2.)TR2=1,啟動計時或計數。
C/~T2:計時器/計數器選擇位元:
1.)C/~T2=0,計時器(時間)。
2.)C/~T2=1,計數器(次數)。
CP/~RL2:捕捉模式/再載入模式選擇位元:
1.)CP/~RL2=0,自動再載入模式。
2.)CP/~RL2=1,捕捉模式。
3.)當 RCLK=1 或 RCLK=1 時,此位元被忽略。
工作模式設定:
工作模式
RCLK+TCLK
CP/RL2
TR2
0
0
1
16 位元自動再載入
0
1
1
16 位元捕捉
1
X
1
鮑率產生器
X
X
0
停止動作
Specifications subject to change without notice, contact your sales representatives for the most recent information.
2/1
SM8952A “F” Version APN Ver 1.0 05/02
SyncMOS Technologies Inc.
Timer2
Application Note
JUNE 2006
3、自動載入(Auto-Reload)模式範例程式:
當中斷發生時,RCAP2H,RCAP2L 會自動將所設定的值,自動載入到 TH2 與 TL2 當計數/計時的初
始值。
start:
MOV
IE,#10100000b
MOV
T2CON,#00001000b
MOV
MOV
MOV
MOV
MOV
SETB
T2MOD,#00000000b
TH2,#00h
TL2,#00h
RCAP2L,#55h
RCAP2H,#55h
TR2
;Timer2 interrupt enable, EA, ET2=1
EA ES1 ET2 ES0 ET1 EX1 ET0 EX0
;TF2 EXF2 RCLK TCLK EXEN2 TR2 C/~T2 CP/~RL2,
CP/~RL2=0,為自動再載入模式
EXEN2=1,則 T2EX 有負緣信號產生時也會產生中斷
;X X X X X X T2OE DCEN, dcen=0 上數
;TH2 初始值
;TL2 初始值
;當發生中斷時,會自動載入 TL2 當初始值(55h)
;當發生中斷時,會自動載入 TH2 當初始值(55h)
;啟動位元
.
.
.
Specifications subject to change without notice, contact your sales representatives for the most recent information.
3/1
SM8952A “F” Version APN Ver 1.0 05/02
SyncMOS Technologies Inc.
Timer2
Application Note
JUNE 2006
4、捕捉模式(Capture)模式範例程式:
當中斷發生時,此時的 TH2 與 TL2 的值會存到 RCAP2H,RCAP2L。
start:
MOV IE,#10100000b
TH2, #0h
TL2, #0h
TR2
;Timer2 interrupt enable
EA ES1 ET2 ES0 ET1 EX1 ET0 EX0
;TF2 EXF2 RCLK TCLK EXEN2 TR2 C/~T2 CP/~RL2,
CP/RL2=1,捕捉模式
EXEN2=1,則 T2EX 有負緣信號產生時也會產生中斷
;TH2,初始值
;TL2 初始值
;啟動位元
P3,RCAP2H
P2,RCAP2L
;當產生中斷時,會將 TH2 的值存到 RCAP2H,由 P3 顯示
;當產生中斷時,會將 TL2 的值存到 RCAP2L,由 P2 顯示
MOV T2CON,#00001001b
MOV
MOV
SETB
.
.
MOV
MOV
.
.
Specifications subject to change without notice, contact your sales representatives for the most recent information.
4/1
SM8952A “F” Version APN Ver 1.0 05/02
SyncMOS Technologies Inc.
Timer2
Application Note
JUNE 2006
5、鮑率產生器模式範例:
當 UART 工作於 MODE1 與 MODE3 時,BAUD RATE 為可變,可經由 RCLK 與 TCLK 來決定
傳送與接收時脈由誰來計數。
僅工作於 UART MODE1 與 MODE3, Baud Rate 為可變的
TCLK
RCLK
傳送時脈
接收時脈
0
0
Timer1
Timer1
0
1
Timer1
Timer2
1
0
Timer2
Timer1
1
1
Timer2
Timer2
當 RCLK=1,則接收時脈使用 Timer2, 當 TCLK=1,則傳送時脈使用 Timer2
Specifications subject to change without notice, contact your sales representatives for the most recent information.
5/1
SM8952A “F” Version APN Ver 1.0 05/02
SyncMOS Technologies Inc.
Timer2
Application Note
JUNE 2006
6、可控制時脈輸出(Programmable clock out)範例:
當 SFR (T2MOD)中的 T2OE 被設定為 1 時,此時可以由 P1.0 輸出可頻率的脈波
start:
MOV
IE, #10100000b
MOV T2CON,#00001000b
MOV T2MOD,#00000010b
MOV
MOV
MOV
MOV
TH2,#00h
TL2,#00h
RCAP2L,#080h
RCAP2H,#0FFh
SETB
TR2
;Timer2 interrupt enable
EA ES1 ET2 ES0 ET1 EX1 ET0 EX0
;TF2 EXF2 RCLK TCLK EXEN2 TR2 C/~T2 CP/~RL2
;HC5 HC4 HC3 HC2 T2CR x T2OE DCEN
;T2OE=1,則 P1.0 clock output
;初始值
;初始值
;此值會影響跟 P1.0 clock output
;此值會影響跟 P1.0 clock output
;Enable Timer2
Specifications subject to change without notice, contact your sales representatives for the most recent information.
6/1
SM8952A “F” Version APN Ver 1.0 05/02
SyncMOS Technologies Inc.
Timer2
Application Note
JUNE 2006
7、P1.0 輸出頻率如何計算?
Clock Out Frequency= oscillator frequency / 4 x (65536 - RCAP2H,RCAP2L)
Time2 output ,XTAL=12 Mhz
RCAP2H
RCAP2L
P(1.0)輸出頻率
FF
F0
187.5 kHZ
FF
80
23.42 KHZ
FF
00
11.72 KhZ
80
00
91.58 HZ
40
00
61.05 HZ
20
00
52.3 HZ
00
00
45.79 HZ
FF
FE
1.5 MHZ
例如:使用 OSC 12MHZ,RCAP2H=FF,RCAP2L=F0,則 P1.0 輸出頻率為
P1.0 clock output=
12000000 / 4 x(65536-65520)=187.5khz
(65520=FFF0H)
Specifications subject to change without notice, contact your sales representatives for the most recent information.
7/1
SM8952A “F” Version APN Ver 1.0 05/02