SCPS254D January   2014  – October 2021 TCA9539-Q1

PRODUCTION DATA  

  1. Features
  2. Applications
  3. Description
  4. Revision History
  5. Pin Configuration and Functions
  6. Specifications
    1. 6.1 Absolute Maximum Ratings
    2. 6.2 ESD Ratings
    3. 6.3 Recommended Operating Conditions
    4. 6.4 Thermal Information
    5. 6.5 Electrical Characteristics
    6. 6.6 I2C Interface Timing Requirements
    7. 6.7 RESET Timing Requirements
    8. 6.8 Switching Characteristics
    9. 6.9 Typical Characteristics
  7. Parameter Measurement Information
  8. Detailed Description
    1. 8.1 Overview
    2. 8.2 Functional Block Diagram
    3. 8.3 Feature Description
      1. 8.3.1 I/O Port
      2. 8.3.2 RESET Input
      3. 8.3.3 Interrupt ( INT) Output
    4. 8.4 Device Functional Modes
      1. 8.4.1 Power-On Reset
    5. 8.5 Programming
      1. 8.5.1 I2C Interface
    6. 8.6 Register Maps
      1. 8.6.1 Device Address
      2. 8.6.2 Control Register And Command Byte
      3. 8.6.3 Register Descriptions
        1. 8.6.3.1 Bus Transactions
          1. 8.6.3.1.1 Writes
          2. 8.6.3.1.2 Reads
  9. Power Supply Recommendations
    1. 9.1 Power-On Reset Requirements
  10. 10Layout
    1. 10.1 Layout Guidelines
    2. 10.2 Layout Example
  11. 11Device and Documentation Support
    1. 11.1 Documentation Support
      1. 11.1.1 Related Documentation
    2. 11.2 Receiving Notification of Documentation Updates
    3. 11.3 Support Resources
    4. 11.4 Trademarks
    5. 11.5 Electrostatic Discharge Caution
    6. 11.6 Glossary

Package Options

Mechanical Data (Package|Pins)
Thermal pad, mechanical data (Package|Pins)
Orderable Information
Reads

Reading from a target is very similar to writing, but requires some additional steps. In order to read from a target, the controller must first instruct the target which register it wishes to read from. This is done by the controller starting off the transmission in a similar fashion as the write, by sending the address with the R/ W bit equal to 0 (signifying a write), followed by the register address it wishes to read from. When the target acknowledges this register address, the controller sends a START condition again, followed by the target address with the R/ W bit set to 1 (signifying a read). This time, the target acknowledges the read request, and the controller releases the SDA bus but continues supplying the clock to the target. During this part of the transaction, the controller becomes the controller-receiver, and the target becomes the target-transmitter.

The controller continues to send out the clock pulses, but releases the SDA line so that the target can transmit data. At the end of every byte of data, the controller sends an ACK to the target, letting the target know that it is ready for more data. When the controller has received the number of bytes it is expecting, it sends a NACK, signaling to the target to halt communications and release the bus. The controller follows this up with a STOP condition.

If a read is requested by the controller after a POR without first setting the command byte via a write, the device NACKs until a command byte-register address is set as described above.

See the Section 8.6.2 section to see list of the TCA9539-Q1s internal registers and a description of each one.

Figure 8-10 shows an example of reading a single byte from a target register.

GUID-20210901-SS0I-WC62-7CH5-3KHVV4WFMBJW-low.gifFigure 8-10 Read from Register

When a restart occurs after a single write request to a register, the requested register is used for the read request. Note that when reading multiple bytes of data. Data is clocked into the register on the rising edge of the ACK clock pulse before data is sent. The internal register value is also changed to the other register of the pair on the rising edge of the ACK clock pulse before data is sent. After the first byte is read, additional bytes may be read, but the data now reflect the information in the other register in the pair. For example, if Input Port 1 is read, the next byte read is Input Port 0. If a restart occurs during a read, the data is lost because the internal register already has been changed to the next register in the pair.

There is no limitation on the number of data bytes received in one read transmission, but when the final byte is received, the bus controller must not acknowledge the data. Figure 8-11 and Figure 8-12 show two different scenarios of Read Input Port Register.

GUID-20210901-SS0I-XD2L-NVFG-TV79CFMJ7SF2-low.gif
Transfer of data can be stopped at any time by a Stop condition. When this occurs, data present at the latest acknowledge phase is valid (output mode). It is assumed that the command byte previously has been set to 00 (Read Input Port register).
This figure eliminates the command byte transfer, a restart, and target address call between the initial target address call and actual data transfer from the P port (see the Section 8.6.3.1.2 section for these details).
Figure 8-11 Read Input Port Register, Scenario 1

GUID-20210901-SS0I-JLQ5-RWH4-ZKMRGHGNHKNB-low.gif
Transfer of data can be stopped at any time by a Stop condition. When this occurs, data present at the latest acknowledge phase is valid (output mode). It is assumed that the command byte previously has been set to 00 (Read Input Port register).
This figure eliminates the command byte transfer, a restart, and target address call between the initial target address call and actual data transfer from the P port (see the Section 8.6.3.1.2 section for these details).
Figure 8-12 Read Input Port Register, Scenario 2