HT36A1 Holtek Semiconductor Inc., HT36A1 Datasheet - Page 14

no-image

HT36A1

Manufacturer Part Number
HT36A1
Description
Ht36a1 -- Music Synthesizer 8-bit Mcu
Manufacturer
Holtek Semiconductor Inc.
Datasheet
Timer 0/1
Timer 0 is an 8-bit counter, and its clock source comes
from the system clock divided by an 8-stage prescaler.
There are two registers related to Timer 0; TMR0L(0DH)
and TMR0C(0EH). One physical registers are mapped
to TMR0L location; writing TMR0L makes the starting
value be placed in the Timer 0 preload register and
reading the TMR0 gets the contents of the Timer 0 coun-
ter. The TMR0C is a control register, which defines the
division ration of the prescaler and counting enable or
disable.
Writing data to B2, B1 and B0 (bits 2, 1, 0 of TMR0C)
can yield various clock sources.
One the Timer 0 starts counting, it will count from the
current contents in the counter to FFH. Once an over-
flow occurs, the counter is reloaded from a preload reg-
ister, and generates an interrupt request flag (T0F; bit 2
of INTCH). To enable the counting operation, the timer
On bit (TON; bit 4 of TMR0C) should be set to 1 . For
proper operation, bit 7 of TMR0C should be set to 1
and bit 3, bit 6 should be set to 0 .
There are two registers related to the Timer Counter1;
TMR1L(10H), TMR1C(11H). The Timer Counter 1 oper-
ates in the same manner as Timer Counter 0.
Rev. 1.10
B2
0
0
0
0
1
1
1
1
TMR0C/TMR1C
B1
0
0
1
1
0
0
1
1
Reset Configuration
B0
0
1
0
1
0
1
0
1
f
f
f
f
f
f
f
f
OSC
OSC
OSC
OSC
OSC
OSC
OSC
OSC
/16
/32
/64
/128
/256
/512
/1024
/2048
T0F
14
TMR0C Bit 4 to enable/disable timer counting
(1=enable; 0=disable)
TMR0C Bit 3, always write 0 .
TMR0C Bit 5, always write 0 .
TMR0C Bit 6, always write 0 .
TMR0C Bit 7, always write 1 .
Input/Output Ports
There are 24 bidirectional input/output lines labeled
from PA to PC, which are mapped to the data memory of
[12H], [14H], [16H] respectively. All these I/O ports can
be used for input and output operations. For input oper-
ation, these ports are non-latching, that is, the inputs
must be ready at the T2 rising edge of instruction MOV
A,[m] (m=12H, 14H or 16H). For output operation, all
data is latched and remains unchanged until the output
latch is rewritten.
Each I/O line has its own control register (PAC, PBC,
PCC) to control the input/output configuration. With this
control register, CMOS output or Schmitt trigger input
with or without pull-high resistor (mask option) struc-
tures can be reconfigured dynamically under software
control. To function as an input, the corresponding latch
of the control register must write a 1 . The pull-high re-
sistance will exhibit automatically if the pull-high option
is selected. The input source also depends on the con-
trol register. If the control register bit is 1 , input will
read the pad state. If the control register bit is 0 , the
contents of the latches will move to the internal bus. The
latter is possible in read-modify-write instruction. For
output function, CMOS is the only configuration. These
control registers are mapped to locations 13H, 15H and
17H.
After a chip reset, these input/output lines remain at high
levels or floating (mask option). Each bit of these in-
put/output latches can be set or cleared by the SET [m].i
or CLR [m].i (m=12H, 14H or 16H) instruction.
Some instructions first input data and then follow the
output operations. For example, the SET [m].i, CLR
[m].i, CPL [m] and CPLA [m] instructions read the entire
port states into the CPU, execute the defined operations
(bit-operation), and then write the results back to the
latches or the accumulator.
Each line of port A has the capability to wake-up the de-
vice.
Timer 0/1
March 12, 2007
HT36A1

Related parts for HT36A1