SLLA662 March   2025 MCF8315A , MCF8315C , MCF8315C-Q1 , MCF8315D , MCF8316A , MCF8316C-Q1 , MCF8316D , MCF8329A , MCT8315A , MCT8316A , MCT8329A

 

  1.   1
  2.   Abstract
  3.   Trademarks
  4. 1Introduction
  5. 2I2C Related Details for MCx83xx Family
    1. 2.1 TARGET_ID
    2. 2.2 CRC_EN
      1. 2.2.1 CRC Computational Details
    3. 2.3 MEM_SEC, MEM_PAGE, and MEM_ADDR
  6. 3I2C Secondary Device Feature Supported by MCx83xx Family
    1. 3.1 Clock Stretching
  7. 4Primary Device Read and Write Expected Flow
    1. 4.1 Read Sequence
    2. 4.2 Write Sequence
  8. 5Summary
  9. 6References

TARGET_ID

TARGET_ID is a 7-bit value representing the target address of the MCx83xx device. The TARGET_ID default value is 0x01. The MCx83xx family supports only the 7-bit addressing mode.

  1. TARGET_ID Configuration: For field oriented control (FOC) devices, TARGET_ID can be configured in DEVICE_CONFIG1 register by setting the ‘I2C_TARGET_ADDR’. For trapezoidal control devices (MCT83xx), TARGET_ID can be configured in PIN_CONFIG2 register by setting the ‘I2C_TARGET_ADDR’.
    Note: TARGET_ID change does not take effect at runtime and device continues to communicate with the address burned in EEPROM at the time of power-up. After changing the TARGET_ID, the EEPROM needs to be programmed with the updated TARGET_ID and device needs to be power cycled.

  2. TARGET_ID Detection: If primary device fails to communicate with default or preprogrammed TARGET_ID, a search can be implemented to find TARGET_ID. Figure 2-1 explains the TARGET_ID detection steps.
     TARGET_ID Detection
                            Flow Chart Figure 2-1 TARGET_ID Detection Flow Chart

Address not found can occur due to following possible reasons:

  1. SCL, SDA connections are not proper.
    1. Make sure signals from SCL/SDA pins are routed to the device and all connections are made including necessary pull-up resistors for both pins.
    2. Make sure no other communication or other peripheral is using the same pins. The SCL/SDA pins must be permanently configured for I2C communication.
  2. MCx83xx is not powered up.
  3. Make sure that there is no excessive capacitive loading on SCL and SDA lines. This can be verified by monitoring the SCL and SDA lines on an oscilloscope during communication.