SCPS311 March   2026 TXE8124

PRODUCTION DATA  

  1.   1
  2. Features
  3. Applications
  4. Description
  5. Pin Configuration and Functions
  6. Specifications
    1. 5.1 Absolute Maximum Ratings
    2. 5.2 ESD Ratings
    3. 5.3 Recommended Operating Conditions
    4. 5.4 Thermal Information
    5. 5.5 Electrical Characteristics
    6. 5.6 Timing Requirements
    7. 5.7 SPI Bus Timing Requirements
    8. 5.8 Switching Characteristics
  7. Parameter Measurement Information
  8. Detailed Description
    1. 7.1 Overview
    2. 7.2 Functional Block Diagrams
    3. 7.3 Feature Description
      1. 7.3.1 I/O Port
      2. 7.3.2 Interrupt Output (INT)
      3. 7.3.3 Reset Input (RESET)
      4. 7.3.4 Bus Hold
      5. 7.3.5 Fail-safe Mode
      6. 7.3.6 Software Reset Call
      7. 7.3.7 Daisy Chain
      8. 7.3.8 Multi Port
      9. 7.3.9 Feature Register Mapping
    4. 7.4 Device Functional Modes
      1. 7.4.1 Power-On Reset
    5. 7.5 Programming
      1. 7.5.1 SPI Interface
      2. 7.5.2 SPI Data Format
      3. 7.5.3 Burst Mode
      4. 7.5.4 SPI Write
      5. 7.5.5 SPI Read
      6. 7.5.6 SPI Daisy Chain
    6. 7.6 TXE8124 Registers
  9. Application and Implementation
    1. 8.1 Application Information
    2. 8.2 Typical Application
    3. 8.3 Power Supply Recommendations
      1. 8.3.1 Power-On Reset Requirements
    4. 8.4 Layout
      1. 8.4.1 Layout Guidelines
      2. 8.4.2 Layout Example
  10. Device and Documentation Support
    1. 9.1 Receiving Notification of Documentation Updates
    2. 9.2 Support Resources
    3. 9.3 Trademarks
    4. 9.4 Electrostatic Discharge Caution
    5. 9.5 Glossary
  11. 10Revision History
  12. 11Mechanical, Packaging, and Orderable Information

TXE8124 Registers

Table 7-3 lists the memory-mapped registers for the TXE8124 registers. All register offset addresses not listed in Table 7-3 should be considered as reserved locations and the register contents should not be modified.

Table 7-3 TXE8124 Registers
OffsetAcronymRegister NameSection
0hScratch_RegisterScratch RegisterSection 7.6.1
10hDevice_ID_RegisterDevice ID RegisterSection 7.6.2
20h + formulaInput_Port_Register_yInput Port RegisterSection 7.6.3
30h + formulaOutput_Port_Register_yOutput Port RegisterSection 7.6.4
40h + formulaDirection_Configuration_Register_yDirection Configuration RegisterSection 7.6.5
50h + formulaPolarity_Inversion_Register_yPolarity Inversion RegisterSection 7.6.6
60h + formulaPush_Pull/Open_Drain_Selection_Register_yPush Pull/Open Drain Selection RegisterSection 7.6.7
80h + formulaPull-up/Pull-down_Enable_Register_yPull-up/Pull-down Enable RegisterSection 7.6.8
90h + formulaPull-up/Pull-down_Selection_Register_yPull-up/Pull-down Selection RegisterSection 7.6.9
A0h + formulaBus_Holder_Register_yBus Holder RegisterSection 7.6.10
B0hSmart_Interrupt_RegisterSmart Interrupt RegisterSection 7.6.11
C0h + formulaInterrupt_Mask_Register_yInterrupt Mask RegisterSection 7.6.12
D0h + formulaInterrupt_Glitch_Filter_Enable_Register_yInterrupt Glitch Filter Enable RegisterSection 7.6.13
E0h + formulaInterrupt_Flag_Status_Register_yInterrupt Flag Status RegisterSection 7.6.14
F0hInterrupt_Port_Status_RegisterInterrupt Port Status RegisterSection 7.6.15
120hFail-Safe_Enable_Register-1Fail-safe Enable Register-1Section 7.6.16
130hFail-Safe_Enable_Register-2Fail-Safe Enable Register-2Section 7.6.17
140h + formulaFail-Safe_Direction_Configuration_Register-1_yFail-Safe Direction Configuration Register-1Section 7.6.18
150h + formulaFail-Safe_Direction_Configuration_Register-2_yFail-Safe Direction Configuration Register-2Section 7.6.19
160h + formulaFail-Safe_Output_Register-1_yFail-Safe Output Register-1Section 7.6.20
170h + formulaFail-Safe_Output_Register-2_yFail-Safe Output Register-2Section 7.6.21
180hFail-Safe_Redundancy_Check_RegisterFail-Safe Redundancy Check RegisterSection 7.6.22
190hFault_Status_RegisterFault Status RegisterSection 7.6.23
1A0hSoftware_Reset_RegisterSoftware Reset RegisterSection 7.6.24

Complex bit access types are encoded to fit into small table cells. Table 7-4 shows the codes that are used for access types in this section.

Table 7-4 TXE8124 Access Type Codes
Access TypeCodeDescription
Read Type
RRRead
Write Type
WWWrite
W1SW
1S
Write
1 to set
Reset or Default Value
-nValue after reset or the default value
Register Array Variables
i,j,k,l,m,nWhen these variables are used in a register name, an offset, or an address, they refer to the value of a register array where the register is part of a group of repeating registers. The register groups form a hierarchical structure and the array is represented with a formula.
yWhen this variable is used in a register name, an offset, or an address it refers to the value of a register array.

7.6.1 Scratch_Register (Offset = 0h) [Reset = 00h]

Scratch_Register is shown in Table 7-5.

Return to the Summary Table.

The scratch register is a test register to read/write code from/to a blank register and resolve any coding issues

Table 7-5 Scratch_Register Field Descriptions
BitFieldTypeResetDescription
7-0Scratch_ValueR/W0h8-bit scratch value

7.6.2 Device_ID_Register (Offset = 10h) [Reset = 01h]

Device_ID_Register is shown in Table 7-6.

Return to the Summary Table.

The device identification register that has the device ID.

Table 7-6 Device_ID_Register Field Descriptions
BitFieldTypeResetDescription
7-0Device_IDR1hDevice identification
0: TXE8116
1: TXE8124

7.6.3 Input_Port_Register_y (Offset = 20h + formula) [Reset = XXh]

Input_Port_Register_y is shown in Table 7-7.

Return to the Summary Table.

The input port register reflects the incoming logic level of the pins for the port, regardless of whether the configuration register defines the pin as an input or output. The input port registers are read only. Writes to these registers have no effect. The externally applied logic level determines the default value.

Offset = 20h + (y * 1h); where y = 0h to 2h

Table 7-7 Input_Port_Register_y Field Descriptions
BitFieldTypeResetDescription
7IPy.7RXhPy.7 input pin value
6IPy.6RXhPy.6 input pin value
5IPy.5RXhPy.5 input pin value
4IPy.4RXhPy.4 input pin value
3IPy.3RXhPy.3 input pin value
2IPy.2RXhPy.2 input pin value
1IPy.1RXhPy.1 input pin value
0IPy.0RXhPy.0 input pin value

7.6.4 Output_Port_Register_y (Offset = 30h + formula) [Reset = 00h]

Output_Port_Register_y is shown in Table 7-8.

Return to the Summary Table.

The output port register reflect the outgoing logic levels of the pins Py.0 to Py.7, when defined as outputs by the configuration register. Bit values in the register have no effect on pins defined as inputs. Reads from the register reflect the value that is in the register and not the actual pin value.

Offset = 30h + (y * 1h); where y = 0h to 2h

Table 7-8 Output_Port_Register_y Field Descriptions
BitFieldTypeResetDescription
7OPy.7R/W0hPy.7 output value
6OPy.6R/W0hPy.6 output value
5OPy.5R/W0hPy.5 output value
4OPy.4R/W0hPy.4 output value
3OPy.3R/W0hPy.3 output value
2OPy.2R/W0hPy.2 output value
1OPy.1R/W0hPy.1 output value
0OPy.0R/W0hPy.0 output value

7.6.5 Direction_Configuration_Register_y (Offset = 40h + formula) [Reset = 00h]

Direction_Configuration_Register_y is shown in Table 7-9.

Return to the Summary Table.

The direction configuration registers configure the direction of the I/O pins. If a bit in the register is set to 0, the corresponding port pin is enabled as a high-impedance input. If a bit in the register is set to 1, the corresponding port pin is enabled as an output.

Offset = 40h + (y * 1h); where y = 0h to 2h

Table 7-9 Direction_Configuration_Register_y Field Descriptions
BitFieldTypeResetDescription
7DIRy.7R/W0hPy.7 configuration
0: Pin is in input mode
1: Pin is in output mode
6DIRy.6R/W0hPy.6 configuration
0: Pin is in input mode
1: Pin is in output mode
5DIRy.5R/W0hPy.5 configuration
0: Pin is in input mode
1: Pin is in output mode
4DIRy.4R/W0hPy.4 configuration
0: Pin is in input mode
1: Pin is in output mode
3DIRy.3R/W0hPy.3 configuration
0: Pin is in input mode
1: Pin is in output mode
2DIRy.2R/W0hPy.2 configuration
0: Pin is in input mode
1: Pin is in output mode
1DIRy.1R/W0hPy.1 configuration
0: Pin is in input mode
1: Pin is in output mode
0DIRy.0R/W0hPy.0 configuration
0: Pin is in input mode
1: Pin is in output mode

7.6.6 Polarity_Inversion_Register_y (Offset = 50h + formula) [Reset = 00h]

Polarity_Inversion_Register_y is shown in Table 7-10.

Return to the Summary Table.

The polarity inversion register allows polarity inversion of pins Py.0 to Py7, defined as inputs by the configuration register. If a bit in this register is set, the corresponding pin's polarity is inverted. If a bit in the register is cleared, the corresponding pin's polarity is retained.

Offset = 50h + (y * 1h); where y = 0h to 2h

Table 7-10 Polarity_Inversion_Register_y Field Descriptions
BitFieldTypeResetDescription
7PIy.7R/W0hPy.7 polarity inversion
0: Polarity is unchanged
1: Polarity is inverted
6PIy.6R/W0hPy.6 polarity inversion
0: Polarity is unchanged
1: Polarity is inverted
5PIy.5R/W0hPy.5 polarity inversion
0: Polarity is unchanged
1: Polarity is inverted
4PIy.4R/W0hPy.4 polarity inversion
0: Polarity is unchanged
1: Polarity is inverted
3PIy.3R/W0hPy.3 polarity inversion
0: Polarity is unchanged
1: Polarity is inverted
2PIy.2R/W0hPy.2 polarity inversion
0: Polarity is unchanged
1: Polarity is inverted
1PIy.1R/W0hPy.1 polarity inversion
0: Polarity is unchanged
1: Polarity is inverted
0PIy.0R/W0hPy.0 polarity inversion
0: Polarity is unchanged
1: Polarity is inverted

7.6.7 Push_Pull/Open_Drain_Selection_Register_y (Offset = 60h + formula) [Reset = 00h]

Push_Pull/Open_Drain_Selection_Register_y is shown in Table 7-11.

Return to the Summary Table.

The push pull / open drain selection register is used to select the pin as push-pull or open-drain. When the bit is set, the corresponding pin is configured as open-drain (Q1 is disabled and Q2 is active). When the bit is cleared, the corresponding pin is configured as push-pull (Q1 and Q2 are active).

Offset = 60h + (y * 1h); where y = 0h to 2h

Table 7-11 Push_Pull/Open_Drain_Selection_Register_y Field Descriptions
BitFieldTypeResetDescription
7PPODy.7R/W0hPy.7 output configuration bit
0: Pin is configured as output push-pull
1: Pin is configured as output open-drain
6PPODy.6R/W0hPy.6 output configuration bit
0: Pin is configured as output push-pull
1: Pin is configured as output open-drain
5PPODy.5R/W0hPy.5 output configuration bit
0: Pin is configured as output push-pull
1: Pin is configured as output open-drain
4PPODy.4R/W0hPy.4 output configuration bit
0: Pin is configured as output push-pull
1: Pin is configured as output open-drain
3PPODy.3R/W0hPy.3 output configuration bit
0: Pin is configured as output push-pull
1: Pin is configured as output open-drain
2PPODy.2R/W0hPy.2 output configuration bit
0: Pin is configured as output push-pull
1: Pin is configured as output open-drain
1PPODy.1R/W0hPy.1 output configuration bit
0: Pin is configured as output push-pull
1: Pin is configured as output open-drain
0PPODy.0R/W0hPy.0 output configuration bit
0: Pin is configured as output push-pull
1: Pin is configured as output open-drain

7.6.8 Pull-up/Pull-down_Enable_Register_y (Offset = 80h + formula) [Reset = 00h]

Pull-up/Pull-down_Enable_Register_y is shown in Table 7-12.

Return to the Summary Table.

The pull-up/pull-down enable register allows the user to enable or disable pull-up/pull-down resistors on the GPIO pins. Setting the bit enables the selection of pull-up/pull-down resistors on the pins. Clearing the bit disconnects the pull-up/pull-down resistors from the pins. The resistors are disabled when the corresponding pins are configured as outputs.

Offset = 80h + (y * 1h); where y = 0h to 2h

Table 7-12 Pull-up/Pull-down_Enable_Register_y Field Descriptions
BitFieldTypeResetDescription
7PEy.7R/W0hPy.7 pull-up/pull-down enable
0: Pull-up/Pull-down is disabled on the pin
1: Pull-up/Pull-down is enabled on the pin
6PEy.6R/W0hPy.6 pull-up/pull-down enable
0: Pull-up/Pull-down is disabled on the pin
1: Pull-up/Pull-down is enabled on the pin
5PEy.5R/W0hPy.5 pull-up/pull-down enable
0: Pull-up/Pull-down is disabled on the pin
1: Pull-up/Pull-down is enabled on the pin
4PEy.4R/W0hPy.4 pull-up/pull-down enable
0: Pull-up/Pull-down is disabled on the pin
1: Pull-up/Pull-down is enabled on the pin
3PEy.3R/W0hPy.3 pull-up/pull-down enable
0: Pull-up/Pull-down is disabled on the pin
1: Pull-up/Pull-down is enabled on the pin
2PEy.2R/W0hPy.2 pull-up/pull-down enable
0: Pull-up/Pull-down is disabled on the pin
1: Pull-up/Pull-down is enabled on the pin
1PEy.1R/W0hPy.1 pull-up/pull-down enable
0: Pull-up/Pull-down is disabled on the pin
1: Pull-up/Pull-down is enabled on the pin
0PEy.0R/W0hPy.0 pull-up/pull-down enable
0: Pull-up/Pull-down is disabled on the pin
1: Pull-up/Pull-down is enabled on the pin

7.6.9 Pull-up/Pull-down_Selection_Register_y (Offset = 90h + formula) [Reset = 00h]

Pull-up/Pull-down_Selection_Register_y is shown in Table 7-13.

Return to the Summary Table.

The pull-up/pull-down selection register allows the user to configure each GPIO pin to have a pull-up or pull-down resistors. Setting the bit enables the pull-up resistors on the pins. Clearing the bit enables the pull-down resistors on the pins. If the pull-up/pull-down feature is disabled, then writing to the register will have no effect.

Offset = 90h + (y * 1h); where y = 0h to 2h

Table 7-13 Pull-up/Pull-down_Selection_Register_y Field Descriptions
BitFieldTypeResetDescription
7PUDy.7R/W0hPy.7 pull-up/pull-down selection
0: Pull-down resistor is enabled on the pin
1: Pull-up resistor is enabled on the pin
6PUDy.6R/W0hPy.6 pull-up/pull-down selection
0: Pull-down resistor is enabled on the pin
1: Pull-up resistor is enabled on the pin
5PUDy.5R/W0hPy.5 pull-up/pull-down selection
0: Pull-down resistor is enabled on the pin
1: Pull-up resistor is enabled on the pin
4PUDy.4R/W0hPy.4 pull-up/pull-down selection
0: Pull-down resistor is enabled on the pin
1: Pull-up resistor is enabled on the pin
3PUDy.3R/W0hPy.3 pull-up/pull-down selection
0: Pull-down resistor is enabled on the pin
1: Pull-up resistor is enabled on the pin
2PUDy.2R/W0hPy.2 pull-up/pull-down selection
0: Pull-down resistor is enabled on the pin
1: Pull-up resistor is enabled on the pin
1PUDy.1R/W0hPy.1 pull-up/pull-down selection
0: Pull-down resistor is enabled on the pin
1: Pull-up resistor is enabled on the pin
0PUDy.0R/W0hPy.0 pull-up/pull-down selection
0: Pull-down resistor is enabled on the pin
1: Pull-up resistor is enabled on the pin

7.6.10 Bus_Holder_Register_y (Offset = A0h + formula) [Reset = 00h]

Bus_Holder_Register_y is shown in Table 7-14.

Return to the Summary Table.

The bus holder register enables or disables the bus-hold or bus-keeper function of the GPIO pins. The feature is available only when the pin is configured as an input pin. When the register bit is set, the corresponding input pin state holds the line at its last known logical state when the device driving the pin floats its output.

Offset = A0h + (y * 1h); where y = 0h to 2h

Table 7-14 Bus_Holder_Register_y Field Descriptions
BitFieldTypeResetDescription
7BHy.07R/W0hPy.7 bus holder configuration
0: Bus hold on the pin is disabled
1: Bus hold on the pin is enabled
6BHy.6R/W0hPy.6 bus holder configuration
0: Bus hold on the pin is disabled
1: Bus hold on the pin is enabled
5BHy.5R/W0hPy.5 bus holder configuration
0: Bus hold on the pin is disabled
1: Bus hold on the pin is enabled
4BHy.4R/W0hPy.4 bus holder configuration
0: Bus hold on the pin is disabled
1: Bus hold on the pin is enabled
3BHy.3R/W0hPy.3 bus holder configuration
0: Bus hold on the pin is disabled
1: Bus hold on the pin is enabled
2BHy.2R/W0hPy.2 bus holder configuration
0: Bus hold on the pin is disabled
1: Bus hold on the pin is enabled
1BHy.1R/W0hPy.1 bus holder configuration
0: Bus hold on the pin is disabled
1: Bus hold on the pin is enabled
0BHy.0R/W0hPy.0 bus holder configuration
0: Bus hold on the pin is disabled
1: Bus hold on the pin is enabled

7.6.11 Smart_Interrupt_Register (Offset = B0h) [Reset = 00h]

Smart_Interrupt_Register is shown in Table 7-15.

Return to the Summary Table.

The register is used to enable or disable the smart interrupt function. When the bit is set to 0 (smart interrupt enabled), a state change in any input pin generates an interrupt and if the input goes back to its initial state, the interrupt is cleard.
When the bit is set to 1 (smart interrupt disabled), a state change in any input pin generates an interrupt and if the input goes back to its initial state, the interrupt is not cleared. A read of the interrupt status flag register will clear the interrupt.
This feature is enabled at the port level only.

Table 7-15 Smart_Interrupt_Register Field Descriptions
BitFieldTypeResetDescription
7-3RESERVEDR0hDo not use
2SI.P2R/W0hSmart Interrupt for Port 2
0: Enabled
1: Disabled
1SI.P1R/W0hSmart Interrupt for Port 1
0: Enabled
1: Disabled
0SI.P0R/W0hSmart Interrupt for Port 0
0: Enabled
1: Disabled

7.6.12 Interrupt_Mask_Register_y (Offset = C0h + formula) [Reset = FFh]

Interrupt_Mask_Register_y is shown in Table 7-16.

Return to the Summary Table.

The interrupt mask register enables or disable interrupt generation from pins. If the mask register bit is set, and the input state of a pin changes, then interrupt is not asserted. If the mask register bit is cleared, and the input state of a pin changes, then interrupt is asserted.

Offset = C0h + (y * 1h); where y = 0h to 2h

Table 7-16 Interrupt_Mask_Register_y Field Descriptions
BitFieldTypeResetDescription
7IMy.7R/W1hPy.7 interrupt mask bit
0: Interrupt is not masked on state change of the pin
1: Interrupt is masked on state change of the pin
6IMy.6R/W1hPy.6 interrupt mask bit
0: Interrupt is not masked on state change of the pin
1: Interrupt is masked on state change of the pin
5IMy.5R/W1hPy.5 interrupt mask bit
0: Interrupt is not masked on state change of the pin
1: Interrupt is masked on state change of the pin
4IMy.4R/W1hPy.4 interrupt mask bit
0: Interrupt is not masked on state change of the pin
1: Interrupt is masked on state change of the pin
3IMy.3R/W1hPy.3 interrupt mask bit
0: Interrupt is not masked on state change of the pin
1: Interrupt is masked on state change of the pin
2IMy.2R/W1hPy.2 interrupt mask bit
0: Interrupt is not masked on state change of the pin
1: Interrupt is masked on state change of the pin
1IMy.1R/W1hPy.1 interrupt mask bit
0: Interrupt is not masked on state change of the pin
1: Interrupt is masked on state change of the pin
0IMy.0R/W1hPy.0 interrupt mask bit
0: Interrupt is not masked on state change of the pin
1: Interrupt is masked on state change of the pin

7.6.13 Interrupt_Glitch_Filter_Enable_Register_y (Offset = D0h + formula) [Reset = 00h]

Interrupt_Glitch_Filter_Enable_Register_y is shown in Table 7-17.

Return to the Summary Table.

The interrupt glitch filter register enables or disable the glitch filter on the I/O. If the bit is set to 1, the glitch filter for the corresponding pin is enabled. If the bit is set to 0, the glitch filter for the corresponding pin is disabled.

Offset = D0h + (y * 1h); where y = 0h to 2h

Table 7-17 Interrupt_Glitch_Filter_Enable_Register_y Field Descriptions
BitFieldTypeResetDescription
7GFy.7R/W0hPy.7 glitch filter enable bit
0: Glitch filter is disabled
1: Glitch filter is enabled
6GFy.6R/W0hPy.6 glitch filter enable bit
0: Glitch filter is disabled
1: Glitch filter is enabled
5GFy.5R/W0hPy.5 glitch filter enable bit
0: Glitch filter is disabled
1: Glitch filter is enabled
4GFy.4R/W0hPy.4 glitch filter enable bit
0: Glitch filter is disabled
1: Glitch filter is enabled
3GFy.3R/W0hPy.3 glitch filter enable bit
0: Glitch filter is disabled
1: Glitch filter is enabled
2GFy.2R/W0hPy.2 glitch filter enable bit
0: Glitch filter is disabled
1: Glitch filter is enabled
1GFy.1R/W0hPy.1 glitch filter enable bit
0: Glitch filter is disabled
1: Glitch filter is enabled
0GFy.0R/W0hPy.0 glitch filter enable bit
0: Glitch filter is disabled
1: Glitch filter is enabled

7.6.14 Interrupt_Flag_Status_Register_y (Offset = E0h + formula) [Reset = 00h]

Interrupt_Flag_Status_Register_y is shown in Table 7-18.

Return to the Summary Table.

The interrupt status register is read only register bits used to identify the source of an interrupt. When read, a logic 1 indicates that the corresponding input pin was the source of the interrupt. A logic 0 indicates that the input pin is not the source of the an interrupt. When the corresponding bit in the interrupt mask register is set to 1 (masked), the interrupt status bit will return a logic 0.

Offset = E0h + (y * 1h); where y = 0h to 2h

Table 7-18 Interrupt_Flag_Status_Register_y Field Descriptions
BitFieldTypeResetDescription
7ISy.7R0hPy.7 interrupt status bit
0: Pin is not the source of interrupt
1: Pin is the source of the interrupt
6ISy.6R0hPy.6 interrupt status bit
0: Pin is not the source of interrupt
1: Pin is the source of the interrupt
5ISy.5R0hPy.5 interrupt status bit
0: Pin is not the source of interrupt
1: Pin is the source of the interrupt
4ISy.4R0hPy.4 interrupt status bit
0: Pin is not the source of interrupt
1: Pin is the source of the interrupt
3ISy.3R0hPy.3 interrupt status bit
0: Pin is not the source of interrupt
1: Pin is the source of the interrupt
2ISy.2R0hPy.2 interrupt status bit
0: Pin is not the source of interrupt
1: Pin is the source of the interrupt
1ISy.1R0hPy.1 interrupt status bit
0: Pin is not the source of interrupt
1: Pin is the source of the interrupt
0ISy.0R0hPy.0 interrupt status bit
0: Pin is not the source of interrupt
1: Pin is the source of the interrupt

7.6.15 Interrupt_Port_Status_Register (Offset = F0h) [Reset = 00h]

Interrupt_Port_Status_Register is shown in Table 7-19.

Return to the Summary Table.

The register is used to identify the IO port for the interrupt source. If the value of the bit is 1, it indicates that the source of the interrupt is from the corresponding IO port. If the value is 0, it indicates that none of the input pins in the IO port generated an interrupt.

Table 7-19 Interrupt_Port_Status_Register Field Descriptions
BitFieldTypeResetDescription
7-3RESERVEDR0hDo not use
2IPS.P2R/W0hInterrupt Status for Port 2
0: No interrupt from Port 2
1: Interrupt from Port 2
1IPS.P1R/W0hInterrupt Status for Port 1
0: No interrupt from Port 1
1: Interrupt from Port 1
0IPS.P0R/W0hInterrupt Status for Port 0
0: No interrupt from Port 0
1: Interrupt from Port 0

7.6.16 Fail-Safe_Enable_Register-1 (Offset = 120h) [Reset = 00h]

Fail-Safe_Enable_Register-1 is shown in Table 7-20.

Return to the Summary Table.

This register reconfigures the reset pin as a fail-safe pin. The register is cleared on POR or fault condition as mentioned in the fault status register.
There are two fail-safe registers in the device that have to be written to program the I/O configuration with built-in redundancy. If the value in the two registers mismatch, it will generate an interrupt with fault status set accordingly.

Table 7-20 Fail-Safe_Enable_Register-1 Field Descriptions
BitFieldTypeResetDescription
7-1RESERVEDR0hDo not use
0FS1ENR/W0hFail-Safe Enable bit
0: Disable
1: Enable

7.6.17 Fail-Safe_Enable_Register-2 (Offset = 130h) [Reset = 00h]

Fail-Safe_Enable_Register-2 is shown in Table 7-21.

Return to the Summary Table.

This register reconfigures the reset pin as a fail-safe pin. The register is cleared on POR or fault condition as mentioned in the fault status register.
There are two fail-safe registers in the device that have to be written to program the I/O configuration with built-in redundancy. If the value in the two registers mismatch, it will generate an interrupt with fault status set accordingly.

Table 7-21 Fail-Safe_Enable_Register-2 Field Descriptions
BitFieldTypeResetDescription
7-1RESERVEDR0hDo not use
0FS2ENR/W0hFail-Safe Enable bit
0: Disable
1: Enable

7.6.18 Fail-Safe_Direction_Configuration_Register-1_y (Offset = 140h + formula) [Reset = 00h]

Fail-Safe_Direction_Configuration_Register-1_y is shown in Table 7-22.

Return to the Summary Table.

The fail-safe direction configuration register-1 configure the direction of the I/O pins when the device enters a fail-safe state. If a bit in these register is set to 0, the corresponding IO pin is enabled as a high-impedance input during fail-safe mode. If a bit is set to 1, the corresponding IO pin is enabled as an output during fail-safe mode.
There are two registers per port, that have to be written to program the I/O configuration to ensure redundancy. If the registers mismatch, it will generate an interrupt with fault status set accordingly.

Offset = 140h + (y * 1h); where y = 0h to 2h

Table 7-22 Fail-Safe_Direction_Configuration_Register-1_y Field Descriptions
BitFieldTypeResetDescription
7FS1DIRy.7R/W0hPy.7 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
6FS1DIRy.6R/W0hPy.6 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
5FS1DIRy.5R/W0hPy.5 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
4FS1DIRy.4R/W0hPy.4 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
3FS1DIRy.3R/W0hPy.3 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
2FS1DIRy.2R/W0hPy.2 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
1FS1DIRy.1R/W0hPy.1 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
0FS1DIRy.0R/W0hPy.0 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode

7.6.19 Fail-Safe_Direction_Configuration_Register-2_y (Offset = 150h + formula) [Reset = 00h]

Fail-Safe_Direction_Configuration_Register-2_y is shown in Table 7-23.

Return to the Summary Table.

The fail-safe direction configuration register-2 configure the direction of the I/O pins when the device enters a fail-safe state. If a bit in these register is set to 0, the corresponding IO pin is enabled as a high-impedance input during fail-safe mode. If a bit is set to 1, the corresponding IO pin is enabled as an output during fail-safe mode.
There are two registers per port, that have to be written to program the I/O configuration to ensure redundancy. If the registers mismatch, it will generate an interrupt with fault status set accordingly.

Offset = 150h + (y * 1h); where y = 0h to 2h

Table 7-23 Fail-Safe_Direction_Configuration_Register-2_y Field Descriptions
BitFieldTypeResetDescription
7FS2DIRy.7R/W0hPy.7 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
6FS2DIRy.6R/W0hPy.6 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
5FS2DIRy.5R/W0hPy.5 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
4FS2DIRy.4R/W0hPy.4 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
3FS2DIRy.3R/W0hPy.3 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
2FS2DIRy.2R/W0hPy.2 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
1FS2DIRy.1R/W0hPy.1 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode
0FS2DIRy.0R/W0hPy.0 fail-safe configuration bit
0: Pin is configured in input mode
1: Pin is configured in output mode

7.6.20 Fail-Safe_Output_Register-1_y (Offset = 160h + formula) [Reset = 00h]

Fail-Safe_Output_Register-1_y is shown in Table 7-24.

Return to the Summary Table.

The fail-safe output register-1 configure the output level of the pins defined as output by the fail-safe configuration register. Bit values in the register have no effect on pins defined as input.
There are two registers per port, that have to be written to with the same output value to ensure redundancy. If the registers mismatch, it will generate an interrupt with fault status set accordingly.

Offset = 160h + (y * 1h); where y = 0h to 2h

Table 7-24 Fail-Safe_Output_Register-1_y Field Descriptions
BitFieldTypeResetDescription
7FS1OPy.7R/W0hPy.7 fail-safe output value
6FS1OPy.6R/W0hPy.6 fail-safe output value
5FS1OPy.5R/W0hPy.5 fail-safe output value
4FS1OPy.4R/W0hPy.4 fail-safe output value
3FS1OPy.3R/W0hPy.3 fail-safe output value
2FS1OPy.2R/W0hPy.2 fail-safe output value
1FS1OPy.1R/W0hPy.1 fail-safe output value
0FS1OPy.0R/W0hPy.0 fail-safe output value

7.6.21 Fail-Safe_Output_Register-2_y (Offset = 170h + formula) [Reset = 00h]

Fail-Safe_Output_Register-2_y is shown in Table 7-25.

Return to the Summary Table.

The fail-safe output register-2 configure the output level of the pins defined as output by the fail-safe configuration register. Bit values in the register have no effect on pins defined as input.
There are two registers per port, that have to be written to with the same output value to ensure redundancy. If the registers mismatch, it will generate an interrupt with fault status set accordingly.

Offset = 170h + (y * 1h); where y = 0h to 2h

Table 7-25 Fail-Safe_Output_Register-2_y Field Descriptions
BitFieldTypeResetDescription
7FS2OPy.7R/W0hPy.7 fail-safe output value
6FS2OPy.6R/W0hPy.6 fail-safe output value
5FS2OPy.5R/W0hPy.5 fail-safe output value
4FS2OPy.4R/W0hPy.4 fail-safe output value
3FS2OPy.3R/W0hPy.3 fail-safe output value
2FS2OPy.2R/W0hPy.2 fail-safe output value
1FS2OPy.1R/W0hPy.1 fail-safe output value
0FS2OPy.0R/W0hPy.0 fail-safe output value

7.6.22 Fail-Safe_Redundancy_Check_Register (Offset = 180h) [Reset = 00h]

Fail-Safe_Redundancy_Check_Register is shown in Table 7-26.

Return to the Summary Table.

The fail-safe redundancy check register is used to enable the check on the fail-safe redundant registers (fail-safe enable register, fail-safe direction configuration register and fail-safe output register).

Table 7-26 Fail-Safe_Redundancy_Check_Register Field Descriptions
BitFieldTypeResetDescription
7-1RESERVEDR0hDo not use
0FSCHECKENR/W0hFail-Safe Check Enable bit
0: Disable
1: Enable

7.6.23 Fault_Status_Register (Offset = 190h) [Reset = 01h]

Fault_Status_Register is shown in Table 7-27.

Return to the Summary Table.

The fault status register are set during fault conditions. Bit-0 is set to 1 for POR recovery. Bit-1 is set when the redundancy register has a mismatch. Bit-2 is set when the device is in fail safe mode. These flags are not cleared even if the fault condition goes away. They can only be cleared by performing a read of the fault status register.

Table 7-27 Fault_Status_Register Field Descriptions
BitFieldTypeResetDescription
7-3RESERVEDR0hDo not use
2FSMODEACTIVER0hFail Safe function is Active
1REGMISMATCHR0hFail Safe function cleared due to register mismatch
0PORR1hPOR recovery status

7.6.24 Software_Reset_Register (Offset = 1A0h) [Reset = 00h]

Software_Reset_Register is shown in Table 7-28.

Return to the Summary Table.

The register is used to trigger a software reset of the device. The register is auto-cleared when the reset state is entered.

Table 7-28 Software_Reset_Register Field Descriptions
BitFieldTypeResetDescription
7-2RESERVEDR0hDo not use
1Register_ResetR/W1S0hWhen set triggers reset of all registers
0Device_ResetR/W1S0hWhen set triggers reset of the full device