HT46R01/HT46R02/HT46R03
means that all I/O pins will default to an input state, the
level of which depends on the other connected circuitry
and whether pull-high options have been selected. If the
PAC port control register, is then programmed to setup
some pins as outputs, these output pins will have an ini-
tial high output value unless the associated PA port data
register is first programmed. Selecting which pins are in-
puts and which are outputs can be achieved byte-wide
by loading the correct value into the port control register
or by programming individual bits in the port control reg-
ister using the ²SET [m].i² and ²CLR [m].i² instructions.
Note that when using these bit control instructions, a
read-modify-write operation takes place. The
microcontroller must first read in the data on the entire
port, modify it to the required new bit values and then re-
write this data back to the output ports.
tial value can be preloaded. Reading from this register
retrieves the contents of the Timer/Event Counter. The
second type of associated register is the Timer Control
Register which defines the timer options and deter-
mines how the timer is to be used. All devices can have
the timer clock configured to come from the internal
clock source. In addition, the timer clock source can also
be configured to come from an external timer pin. The
accompanying table lists the associated timer register
names.
HT46R02
HT46R01
HT46R03
No. of 8-bit Timers
1
2
TMR0
TMR1
Timer Register Name
TMR0
TMR0C
TMR1C
Timer Control Register
TMR0
T
1
T
2
T
3
T
4
T
1
T
2
T
3
T
4
S
y
s
t
e
m
C
l
o
c
k
An external clock source is used when the timer is in the
event counting mode, the clock source being provided
on the external timer pin, known as TMR0 or TMR1 de-
pending on which device is selected. These external
timer pins are pin-shared with other I/O pins. Depending
upon the condition of the T0E or T1E bit in the corre-
sponding Timer Control Register, each high to low, or
low to high transition on the external timer input pin will
increment the counter by one.
P
o
r
t
D
a
t
a
W
r
i
t
e
t
o
P
o
r
t
R
e
a
d
f
r
o
m
P
o
r
t
Read/Write Timing
Pins PA0 to PA6 each have a wake-up functions, se-
lected via the PAWK register. When the device is in the
Power Down Mode, various methods are available to
wake the device up. One of these is a high to low transi-
tion of any of the these pins. Single or multiple pins on
Port A can be setup to have this function.
Configuring the Timer/Event Counter Input Clock
Source
The internal timer¢s clock can originate from various
sources, depending upon which device and which timer
is chosen. The system clock input timer source is used
when the timer is in the timer mode or in the pulse width
measurement mode. For Timer/Event Counter 0 this
system clock timer source is first divided by a prescaler,
the division ratio of which is conditioned by the Timer
Control Register bits T0PSC0~T0PSC2.
Timer/Event Counters
The provision of timers form an important part of any
microcontroller, giving the designer a means of carrying
out time related functions. The devices contain either
one or two count-up timers each of 8-bit capacity de-
pending upon which device is selected. As each timer
has three different operating modes, they can be config-
ured to operate as a general timer, an external event
counter or as a pulse width measurement device. The
provision of an internal prescaler to the clock circuitry of
some of the timer/event counters gives added range to
the timer.
An external clock source is used when the timer is in the
event counting mode, the clock source being provided
on an external timer pin TMR0 or TMR1, depending
upon which device and which timer is used. Depending
upon the condition of the T0E or T1E bit, each high to
low, or low to high transition on the external timer pin will
increment the counter by one.
There are two types of registers related to the
Timer/Event Counters. The first is the register that con-
tains the actual value of the timer and into which an ini-
D
a
t
a
B
u
s
R
e
l
o
a
d
P
r
e
l
o
a
d
R
e
g
i
s
t
e
r
T
0
P
S
C
2
~
T
0
P
S
C
0
T
0
M
1
T
0
M
0
(
1
/
2
~
1
/
2
5
6
)
M
f
S Y S
8
-
s
t
a
g
e
p
r
e
s
c
a
l
e
r
U
O
v
e
r
f
l
o
w
T
i
m
e
r
/
E
v
e
n
t
C
o
u
n
t
e
r
T
i
m
e
r
/
E
v
e
n
t
C
o
u
n
t
e
r
R
T
C
O
s
c
i
l
l
a
t
o
r
X
t
P
o
I
n
t
e
r
r
u
p
t
M
o
d
e
C
o
n
t
r
o
l
T
0
O
N
T
0
S
¸
2
F
D
T
M
R
0
T
0
E
8-bit Timer/Event Counter 0 Structure - All Devices
Rev. 1.00
18
September 21, 2007