I am trying to use the I2C CMSIS driver for the Cortex M0+ processor (KL25Z128) with Keil uvision IDE.From the "Manage Run-Time Environment" window, I added the following:
This added to my project the header file "Driver_I2C.h", which I can use to call the functions that interact with the I2C.However, please correct me if I'm wrong; the header file functions have no implementation. I have to create a new file from the template, which will generate empty functions. I should then fill them out.
My question is: what is the purpose of the CMSIS I2C driver if it doesn't offer any implementation of the functions and if I have to implement it myself?
I might be missing something here, but I'm really struggling to understand where the implementation resides.
Any clarification would be much appreciated.
Hello, as you selected 'Custom', it is assumed that the user would create/provide* this code themselves.
A reference example (Multi-Slave) is provided.
*For NXP devices, see their MCUXpresso tool for your device, which likely provides I2C driver code for this device as part of its package (you would need to check with NXP directly for information).
Alright. Thanks for the explanation. I understand now.