Datasheet
Expanded GPIO Port
51
SLLS519H—January 2010 TUSB3410, TUSB3410I
8 Expanded GPIO Port
8.1 Input/Output and Control Registers
The TUSB3410 has four general-purpose I/O terminals (P3.0, P3.1, P3.3, and P3.4) that are controlled by
firmware running on the MCU. Each terminal can be controlled individually and each is implemented with a
12-mA push/pull CMOS output with 3-state control plus input. The MCU treats the outputs as open drain types
in that the output can be driven low continuously, but a high output is driven for two clock cycles and then the
output is high impedance.
An input terminal can be read using the MOV instruction. For example, MOV C,P3.3 reads the input on P3.3.
As a precaution, be certain the associated output is high impedance before reading the input.
An output can be set high (and then high impedance) using the SETB instruction. For example, SETB P3.1
sets P3.1 high. An output can be set low using the CLR instruction, as in CLR P3.4, which sets P3.4 low (driven
continuously until changed).
Each GPIO terminal has an associated internal pullup resistor. It is strongly recommended that the pullup
resistor remain connected to the terminal to prevent oscillations in the input buffer. The only exception is if an
external source always drives the input.
8.1.1 PUR_3: GPIO Pullup Register For Port 3 (Addr:FF9Eh)
765 4 32 1 0
RSV
RSV RSV Pin4 Pin3 RSV Pin1 Pin0
R/O R/O R/O R/W R/W R/O R/W R/W
BIT
NAME RESET FUNCTION
0
1
3
4
Pin0
Pin1
Pin3
Pin4
0 The MCU may write to this register. If the MCU sets any of these bits to 1, then the pullup resistor is
disconnected from the associated terminal. If the MCU clears any of these bits to 0, then the pullup resistor
is connected from the terminal. The pullup resistor is connected to the V
CC
power supply.
2, 5, 6,
7
RSV 0 Reserved