English
Language : 

HMS87C1808B Datasheet, PDF (40/99 Pages) List of Unclassifed Manufacturers – 8-BIT SINGLE-CHIP MICROCONTROLLERS
HMS87C1X04B/08B/16B
9. I/O PORTS
The HMS87C1816B has five ports, RA, RB, RC,RD and RE.
These ports pins may be multiplexed with an alternate function
for the peripheral features on the device. In general, when initial
reset state, all ports are used as a general purpose input port.
All pins have data direction registers which can set these ports as
output or input. A “1” in the port direction register defines the
corresponding port pin as output. Conversely, write “0” to the
corresponding bit to specify as an input pin. For example, to use
the even numbered bit of RA as output ports and the odd num-
bered bits as input ports, write “55H” to address C1H (RA direc-
tion register) during initial setting as shown in Figure 9-1 .
Reading data register reads the status of the pins whereas writing
9.1 RA and RAIO registers
RA is an 8-bit bidirectional I/O port (address C0H). Each port can
be set individually as input and output through the RAIO register
(address C1H).
RA7~RA1 ports are multiplexed with Analog Input Port
(AN7~AN1) and RA0 port is multiplexed with Event Counter In-
put Port (EC0).
RA Data Register
ADDRESS : C0H
RESET VALUE : Undefined
RA
RA7 RA6 RA5 RA4 RA3 RA2 RA1 RA0
RA Direction Register
RAIO
INPUT / OUTPUT DATA
ADDRESS : C1H
RESET VALUE : 0000_0000
DIRECTION SELECT
0 : INPUT PORT
1 : OUTPUT PORT
RA Function Selection Register
RAFUNC
ADDRESS : CAH
RESET VALUE : 0000_0000
ANSEL7 ANSEL6 ANSEL5 ANSEL4 ANSEL3 ANSEL2 ANSEL1 ANSEL0
0 : RA4
1 : AN4
0 : RA5
1 : AN5
0 : RA6
1 : AN6
0 : RA7
1 : AN7
0 : RB0
1 : AN0
0 : RA1
1 : AN1
0 : RA2
1 : AN2
0 : RA3
1 : AN3
Figure 9-2 Registers of Port RA
to it will write to the port latch.
WRITE “55H” TO PORT RA DIRECTION REGISTER
C0H
C1H
C2H
C3H
RA DATA
RA DIRECTION
RB DATA
RB DIRECTION
01010101
7 6 5 4 3 2 1 0 BIT
IOIOIOIO
7 6 5 4 3 2 1 0 PORT
I: INPUT PORT
O: OUTPUT PORT
Figure 9-1 Example of port I/O assignment
The control register RAFUNC (address CAH) controls to select
alternate function. After reset, this value is “0”, port may be used
as general I/O ports. To select alternate function such as Analog
Input or External Event Counter Input, write “1” to the corre-
sponding bit of RAFUNC.Regardless of the direction register
RAIO, RAFUNC is selected to use as alternate functions, port pin
can be used as a corresponding alternate features (RA0/EC0 is
controlled by T0CK2~0 of TM0)
PORT
RAFUNC.7~0
Description
RA7/AN7
0
RA7 (Normal I/O Port)
1
AN7 (ADS2~0=111)
RA6/AN6
0
RA6 (Normal I/O Port)
1
AN6 (ADS2~0=110)
RA5/AN5
0
RA5 (Normal I/O Port)
1
AN5 (ADS2~0=101)
RA4/AN4
0
RA4 (Normal I/O Port)
1
AN4 (ADS2~0=100)
RA3/AN3
0
RA3 (Normal I/O Port)
1
AN3 (ADS2~0=011)
RA2/AN2
0
RA2 (Normal I/O Port)
1
AN2 (ADS2~0=010)
RA1/AN1
0
RA1 (Normal I/O Port)
1
AN1 (ADS2~0=001)
RA0/EC01
RA0 (Normal I/O Port)
EC0 (T0CK2~0=111)
1. This port is not an Analog Input port, but Event Counter clock
source input port. ECO is controlled by setting TOCK2~0 =
111. The bit RAFUNC.0 (ANSEL0) controls the RB0/AN0/AVref
port (Refer to Port RB).
36
SEP. 2004 Ver 1.03