English
Language : 

HT46R016 Datasheet, PDF (38/91 Pages) Holtek Semiconductor Inc – Enhanced A/D Type 8-Bit OTP MCU
HT46R016/HT46R017
Enhanced A/D Type 8-Bit OTP MCU
I/O Port Control Registers
Each Port has its own control register, known as PAC, PBC which controls the input/output
configuration. With this control register, each I/O pin with or without pull-high resistors can be
reconfigured dynamically under software control. For the I/O pin to function as an input, the
corresponding bit of the control register must be written as a “1”. This will then allow the logic state
of the input pin to be directly read by instructions. When the corresponding bit of the control register
is written as a “0”, the I/O pin will be setup as a CMOS output. If the pin is currently setup as an
output, instructions can still be used to read the output register. However, it should be noted that the
program will in fact only read the status of the output data latch and not the actual logic status of the
output pin.
Pin-shared Functions
The flexibility of the microcontroller range is greatly enhanced by the use of pins that have more
than one function. Limited numbers of pins can force serious design constraints on designers but by
supplying pins with multi-functions, many of these difficulties can be overcome. For some pins, the
chosen function of the multi-function I/O pins is set by configuration options while for others the
function is set by application program control.
●● External Interrupt Input
The external interrupt pin, INT, is pin-shared with an I/O pin. To use the pin as an external
interrupt input the correct bits in the INTC0 register must be programmed. The pin must also be
setup as an input by setting the PAC3 bit in the Port Control Register. A pull-high resistor can also
be selected via the appropriate port pull-high resistor register. Note that even if the pin is setup as
an external interrupt input the I/O function still remains.
●● External Timer/Event Counter Input
The Timer/Event Counter pins, TC0 and TC1 are pin-shared with I/O pins. For these shared pins
to be used as Timer/Event Counter inputs, the Timer/Event Counter must be configured to be in
the Event Counter or Pulse Width Capture Mode. This is achieved by setting the appropriate bits
in the Timer/Event Counter Control Register. The pins must also be setup as inputs by setting the
appropriate bit in the Port Control Register. Pull-high resistor options can also be selected using
the port pull-high resistor registers. Note that even if the pin is setup as an external timer input the
I/O function still remains.
●● PFD Output
The PFD complementary output pair is pin-shared with I/O pins. The output function of these pins
is chosen using the PFDCTRL register. Note that the corresponding bit of the port control register,
must setup the pin as an output to enable the PFD output. If the port control register has setup
the pin as an input, then the pin will function as a normal logic input with the usual pull-high
selection, even if the PFD function has been selected.
●● PWM Outputs
The PWM function output is pin-shared with an I/O pin. The PWM output function is chosen
using the CTRL0 register. Note that the corresponding bit of the port control registers, for the
output pin, must setup the pin as an output to enable the PWM output. If the pin is setup as an
input, then the pin will function as a normal logic input with the usual pull-high selection, even if
the PWM register has enabled the PWM function.
Rev. 1.00
38
July 16, 2012