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