I2C TMOUT files

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
cadi_1014291
Level 6
Level 6
25 likes received 10 likes received 10 likes given

Hi,

   

I had open the I2C component and found some interesting files, both are named TMOUT (what i guess stands for Timeout), one header and it's corresponding source file.

   

I  found it interesting because i was trying to make the changes to avoid the while() loops inside some low level I2C functions, i found this post about it (see I2C section😞 http://www.mbedded.ninja/programming/microcontrollers/psoc/components

   

The problem is that i can not find those TIMEOUT files when i build the project. Any way to include those files? I'm to blink to see the enable TMOUT checkbox?

   

Also tried to find information about TIMEOUT_functions on the component datasheet and 5LP TRM and found nothing 😕 .

   

I'm using the CY8CKIT-059 kit.

   

Attached a screenshot of the component files and the generated files after compilation.

   

Carlos

0 Likes
4 Replies
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

The bad thing is: When the I2C interface was defined and released as a standard, a timeout was merely "forgotten". Thus, an I2C implementation may not have a timeout, so everything you do in that direction is "private".

   

A timeout always needs a timer which is an additional resource consumed and it will be difficult to get the system back into a "normal" state.

   

 

   

Bob

0 Likes
lock attach
Attachments are accessible only for community members.
cadi_1014291
Level 6
Level 6
25 likes received 10 likes received 10 likes given

Hi Bob,

   

I forgot to add the TMOUT files, from the comments and registers names on those files it seems to have that "additional Timer" already implemented on the fixed-function I2C block inside the 5LP. Those registers descriptions starts from page 322 on the PSoC 5LP Registers TRM.

   

I might be wrong, but it seems suspicious to me haha.

   

See files attached

   

Carlos

0 Likes
Bob_Marlowe
Level 10
Level 10
First like given 50 questions asked 10 questions asked

Those registers descriptions starts from page 322 on the PSoC 5LP Registers TRM.

   

You are really reading those TRMs??? I can assure you that the average lifetime of a human is something like 86 years, don't you have better things to do?  😉

   

The only references in the I2C datasheet to "timeout" have to do with the bootloader. So in case that you detect a timeout in your I2C master, what fixup are you wanting to take?

   

 

   

Bob

0 Likes
cadi_1014291
Level 6
Level 6
25 likes received 10 likes received 10 likes given

You are really reading those TRMs??? I can assure you that the average lifetime of a human is something like 86 years, don't you have better things to do?  😉

   

I don't usually read those TRM, but i couldn't find any information anywhere so i just open it and searched the register defined on the TMOUT files. Not really, this way i council sleep ;-).

   

I wanted to fix nothing in particular, just saw those files and find out that are not generated on the project.

   

Carlos

0 Likes