AnsweredAssumed Answered

Processor Expert I2C_LDD missing flexibility capabilities

Question asked by pavelst on Jul 10, 2014
Latest reply on Jul 17, 2014 by Jorge_Gonzalez



We are using Processor Expert with IAR and Kinetis K very successfully until now with all LDD drivers.


Now we need to connect a special I2C device, for which the regular PE driver behavior is not good and we find ourselves in a need to rewrite the PE generated code.


The missing capabilities are:

1. In MasterReceiveBlock() and MasterReceiveBlock() we need to send only the address without the data.

Currently there is a check there "if (Size == 0x00U) return ERR_OK;", so if we call this without buffer then also the address is not getting sent.

As a way around it, we just want to disable this check, and continue sending the address also when buffer length is zero.


2. We would like to make an I2C read without sending the address beforehand, and MasterReceiveBlock() always starts by sending the address.

As a way around it, we think of making a different version of the same function in our custom file, and removing the address sending code.


What are the preferred solutions for our situation?

Maybe the PE team can improve the I2C_LDD driver to include our requested functionality?


Thank you,