K82: I2C HW timeout

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

K82: I2C HW timeout

566 Views
EugeneHiihtaja
Senior Contributor I

Hello !

 

I have checked SDK examples and do not find any place where those registers are set :

__IO uint8_t SLTH; /**< I2C SCL Low Timeout Register High, offset: 0xA */
__IO uint8_t SLTL; /**< I2C SCL Low Timeout Register Low, offset: 0xB */

 

It means by default timeout has infinite value ?

 

In what units those registers should be programmed ? Period of clock 400kHz or some other ones ?

 

Regards,

Eugene

0 Kudos
1 Reply

476 Views
Robin_Shen
NXP TechSupport
NXP TechSupport

Hi Eugene Hiihtaja,

The default value of Low Timeout Register was 0x00, which means low timeout function is disabled.

I2Cx_SMB[SLTF].png

I did not find any driver initialize the Low Timeout Register, you may need to write it by yourself.
For example:
    I2C0->SLTH = I2C_SLTH_SSLT(0x01);
    I2C0->SLTL = I2C_SLTL_SSLT(0x01);

The I2C module clock means Bus clock. I2Cx_SMB[TCKSEL] select the period of clock of timeout.

I2Cx_SMB[TCKSEL].png

Best Regards,

Robin

 

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos