
Rev. 1.00
3�
��ne 1�� �01�
Rev. 1.00
35
��ne 1�� �01�
HT46R003B
Cost-Effective A/D 8-bit OTP MCU
HT46R003B
Cost-Effective A/D 8-bit OTP MCU
A/D Input/Output Port
Programming Considerations
Within the user program, one of the things first to consider is port initialization. After a reset, all
of the I/O data and port control registers will be set to high. This means that all I/O pins will be
defaulted to an input state, the level of which depends on the other connected circuitry and whether
pull-high selections have been chosen. If the port control registers are then programmed to set some
pins as outputs, these output pins will have an initial high output value unless the associated port
data registers are first programmed. Selecting which pins are inputs and which are outputs can be
achieved byte-wide by loading the correct values into the appropriate port control register or by
programming individual bits in the port control register 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 rewrite this data back to the output ports.
Read Modify Write Timing
Pins PA0~PA7 each have wake-up functions, selected via the PAWU register. When the device is in
the Sleep Mode, various methods are available to wake the device up. One of these is a high to low
transition of any pins. Single or multiple pins on Port A can be set to have this function.