K82: I2C HW timeout

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

K82: I2C HW timeout

970件の閲覧回数
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 件の賞賛
返信
1 返信

880件の閲覧回数
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 件の賞賛
返信