XRA1201/1201P
8
16-BIT I2C/SMBUS GPIO EXPANDER
REV. 1.0.0
2.0 REGISTER DESCRIPTION
2.1
GPIO State Register 1 (GSR1) - Read-Only
The status of P7 - P0 can be read via this register. A read will show the current state of these pins (or the
inverted state of these pins if enabled via the PIR Register). Reading this register will clear an input interrupt
(see Table 3 for complete details). Reading this register will also return the last value written to the OCR
register for any pins that are configured as outputs (ie. this is not the same as the state of the actual output pin
since the output pin can be in three-state mode). A write to this register has no effect. The MSB of this register
corresponds with P7 and the LSB of this register corresponds with P0.
2.2
GPIO State Register 2 (GSR2) - Read-Only
The status of P15 - P8 can be read via this register. A read will show the current state of these pins (or the
inverted state of these pins if enabled via the PIR Register). Reading this register will clear an input interrupt
(see Table 3 for complete details). Reading this register will also return the last value written to the OCR
register for any pins that are configured as outputs (ie. this is not the same as the state of the actual output pin
since the output pin can be in three-state mode). A write to this register has no effect. The MSB of this register
corresponds with P15 and the LSB of this register corresponds with P8.
2.3
Output Control Register 1 (OCR1) - Read/Write
When P7 - P0 are defined as outputs, they can be controlled by writing to this register. Reading this register
will return the last value written to it, however, this value may not be the actual state of the output pin since
these pins can be in three-state mode. The MSB of this register corresponds with P7 and the LSB of this
register corresponds with P0.
2.4
Output Control Register 2 (OCR2) - Read/Write
When P15 - P8 are defined as outputs, they can be controlled by writing to this register. Reading this register
will return the last value written to it, however, this value may not be the actual state of the output pin since
these pins can be in three-state mode. The MSB of this register corresponds with P15 and the LSB of this
register corresponds with P8.
2.5
Input Polarity Inversion Register 1 (PIR1) - Read/Write
When P7 - P0 are defined as inputs, this register inverts the polarity of the input value read from the Input Port
Register. If the corresponding bit in this register is set to ’1’, the value of this bit in the GSR Register will be the
inverted value of the input pin. If the corresponding bit in this register is set to ’0’, the value of this bit in the
GSR Register will be the actual value of the input pin. The MSB of this register corresponds with P7 and the
LSB of this register corresponds with P0.
2.6
Input Polarity Inversion Register 2 (PIR2) - Read/Write
When P15 - P8 are defined as inputs, this register inverts the polarity of the input value read from the Input Port
Register. If the corresponding bit in this register is set to ’1’, the value of this bit in the GSR Register will be the
inverted value of the input pin. If the corresponding bit in this register is set to ’0’, the value of this bit in the
GSR Register will be the actual value of the input pin. The MSB of this register corresponds with P15 and the
LSB of this register corresponds with P8.
2.7
GPIO Configuration Register 1 (GCR1) - Read/Write
This register configures the GPIOs as inputs or outputs. After power-up and reset, the GPIOs are inputs.
Setting these bits to ’0’ will enable the GPIOs as outputs. Setting these bits to ’1’ will enable the GPIOs as
inputs. The MSB of this register corresponds with P7 and the LSB of this register corresponds with P0.
2.8
GPIO Configuration Register 2 (GCR2) - Read/Write
This register configures the GPIOs as inputs or outputs. After power-up and reset, the GPIOs are inputs.
Setting these bits to ’0’ will enable the GPIOs as outputs. Setting these bits to ’1’ will enable the GPIOs as
inputs. The MSB of this register corresponds with P15 and the LSB of this register corresponds with P8.