PIN
CONTROL
BLOCK
INTERRUPT
CONTROL
BLOCK
xx
xx
GIOx[7:0] port
Host Interface
GIO Module
Interrupt Requests
To Interrupt Manager
Functional Description of GIO Module
1021
SPNU503C – March 2018
Copyright © 2018, Texas Instruments Incorporated
General-Purpose Input/Output (GIO) Module
22.3 Functional Description of GIO Module
As shown in
, the GIO module comprises of two separate components: an input/output (I/O)
block and an interrupt block.
Figure 22-3. GIO Module Diagram
22.3.1 I/O Functions
The I/O block allows each GIO terminal to be configured for use as a general-purpose input or output in
the application. The GIO module supports multiple registers to control the various aspects of the input and
output functions. These are described as follows.
•
Data direction (GIODIR)
Configures GIO terminal(s) as input (default) or output through the GIODIRx registers.
•
Data input (GIODIN)
Reflects the logic level on GIO terminals in the GIODINx registers. A high voltage (V
IH
or greater)
applied to the pin causes a high value (1) in the data input register (GIODIN[7:0]). When a low voltage
(V
IL
or less) is applied to the pin, the data input register reads a low value (0). The V
IH
and V
IL
values
are device specific and can be found in the device datasheet.
•
Data output (GIODOUT)
Configures the logic level to be output on GIO terminal(s) configured as outputs. A low value (0) written
to the data output register forces the pin to a low output voltage (V
OL
or lower). A high value (1) written
to the data output register (GIODOUTx) forces the pin to a high output voltage (V
OH
or higher) if the
open drain functionality is disabled (GIOPDRx[7:0]). If open drain functionality is enabled, a high value
(1) written to the data output register forces the pin to a high-impedance state (Z).
•
Data set (GIODSET)
Allows logic HIGH to be output on GIO terminal(s) configured as outputs by writing 1's to the required
bits in the GIODSETx registers. If open drain functionality is enabled, a high value (1) written to the
data output register forces the pin to a high-impedance state (Z). The GIODSETx registers eliminate
the need for the application to perform a read-modify-write operation when it needs to set one or more
GIO pin(s).
•
Data clear (GIODCLR)
Allows logic LOW to be output on GIO terminal(s) configured as outputs by writing 1s to the required
bits in the GIODCLRx registers. The GIODCLRx registers eliminate the need for the application to
perform a read-modify-write operation when it needs to clear one or more GIO pin(s).
•
Open drain (GIOPDR)
Open drain functionality is enabled or disabled (default) using the open drain register GIOPDR[7:0]
register. If open-drain mode output is enabled on a pin, a high value (1) written to the data output
register (GIODOUTx[7:0]) forces the pin to a high impedance state (Z).