SN8P2200 Series
USB 1.1 Low-Speed 8-Bit Micro-Controller
SONiX TECHNOLOGY CO., LTD
Page 82
Version 1.7
8.3.3 TC0C COUNTING REGISTER
TC0C is an 8-bit counter register for TC0 interval time control.
0DBH
Bit 7
Bit 6
Bit 5
Bit 4
Bit 3
Bit 2
Bit 1
Bit 0
TC0C
TC0C7 TC0C6 TC0C5 TC0C4 TC0C3 TC0C2 TC0C1 TC0C0
Read/Write R/W
R/W
R/W R/W R/W R/W R/W R/W
After
reset
0 0 0 0 0 0 0 0
The equation of TC0C initial value is as following.
TC0C initial value = N - (TC0 interrupt interval time * input clock)
N is TC0 overflow boundary number. TC0 timer overflow time has six types (TC0 timer, TC0 event counter, TC0 Fcpu
clock source, TC0 Fosc clock source, PWM mode and no PWM mode). These parameters decide TC0 overflow time
and valid value as follow table.
TC0CKS PWM0 ALOAD0 TC0OUT
N
TC0C valid
value
TC0C value
binary type
Remark
0
x
x
256
0x00~0xFF
00000000b~11111111b
Overflow per 256 count
1
0
0
256
0x00~0xFF
00000000b~11111111b
Overflow per 256 count
1
0
1
64
0x00~0x3F
xx000000b~xx111111b
Overflow per 64 count
1
1
0
32
0x00~0x1F
xxx00000b~xxx11111b
Overflow per 32 count
0
1
1
1
16
0x00~0x0F
xxxx0000b~xxxx1111b
Overflow per 16 count
1
-
-
-
256
0x00~0xFF
00000000b~11111111b
Overflow per 256 count
¾
Example: To set 1ms interval time for TC0 interrupt. TC0 clock source is Fcpu (TC0KS=0) and no PWM
output (PWM0=0). High clock is internal 6MHz. Fcpu=Fosc/1. Select TC0RATE=010 (Fcpu/64).
TC0C initial value = N - (TC0 interrupt interval time * input clock)
= 256 - (1ms * 6MHz / 1 / 64)
= 256 - (10
-3
* 6 * 10
6
/ 1 / 64)
= 162
= A2H
The basic timer table interval time of TC0.
High speed mode (Fcpu = 6MHz / 1)
TC0RATE TC0CLOCK
Max overflow interval One step = max/256
000
Fcpu/256
10.923 ms
42.67 us
001
Fcpu/128
5.461 ms
21.33 us
010
Fcpu/64
2.731 ms
10.67 us
011
Fcpu/32
1.365 ms
5.33 us
100
Fcpu/16
0.683 ms
2.67 us
101
Fcpu/8
0.341 ms
1.33 us
110
Fcpu/4
0.171 ms
0.67 us
111
Fcpu/2
0.085 ms
0.33 us