Controlling and Resetting the Port
10-15
Asynchronous Serial Port
10.3.5 Using I/O Pins IO3, IO2, IO1, and IO0
Pins IO3, IO2, IO1, and IO0 can be individually configured as inputs or outputs
and can be used as handshake control for the asynchronous serial port or as
general-purpose I/O pins. They are software-controlled through the asynchro-
nous serial port control register (ASPCR) and the I/O status register (IOSR),
as shown in Figure 10–5.
Figure 10–5. Example of the Logic for Pins IO0–IO3
Level change
detect
CIO0bit = 1
CIO0bit = 0
General - purpose
I / O pin
IO0
DIO3
DIO2
DIO1
DIO0
IO3
IO2
IO1
IO0
Delta interrupt
I/O status register (IOSR)
DIM bit
The four LSBs of the ASPCR, bits CIO0–CIO3, are for configuring each pin as
an input or an output. For example, as shown in the figure, setting CIO0 to 1
configures IO0 as an output; setting CIO0 to 0 configures IO0 as an input. At
reset, CIO0–CIO3 are all cleared to 0, making all four of the the pins inputs.
Table 10–3 summarizes the configuration of the pins.
Table 10–3. Configuring Pins IO0–IO3 with ASPCR Bits CIO0–CIO3
ÁÁÁ
ÁÁÁ
CIO0
Bit
ÁÁÁÁ
ÁÁÁÁ
IO0
Pin
ÁÁÁÁ
ÁÁÁÁ
CIO1
Bit
ÁÁÁÁ
ÁÁÁÁ
IO1
Pin
ÁÁÁ
ÁÁÁ
CIO2
Bit
ÁÁÁÁ
ÁÁÁÁ
IO2
Pin
ÁÁÁÁ
ÁÁÁÁ
CIO3
Bit
ÁÁÁÁ
ÁÁÁÁ
IO3
Pin
0
Input
0
Input
0
Input
0
Input
ÁÁÁ
ÁÁÁ
1
ÁÁÁÁ
ÁÁÁÁ
Output
ÁÁÁÁ
ÁÁÁÁ
1
ÁÁÁÁ
ÁÁÁÁ
Output
ÁÁÁ
ÁÁÁ
1
ÁÁÁÁ
ÁÁÁÁ
Output
ÁÁÁÁ
ÁÁÁÁ
1
ÁÁÁÁ
ÁÁÁÁ
Output