I2C driver implementation for a CC26XX I2C controller.
The I2C header file should be included in an application as follows:
Refer to I2C.h for a complete description of APIs.
Refer to I2C.h for a complete description of APIs.
Before using the I2C in CC26XX:
The following is true for receive operation:
The following apply for transmit operation:
After I2C operation has ended:
If an error occurs during operation:
The I2CCC26XX driver sets a power constraint during transactions to keep the device out of standby; so when all tasks are blocked, the device will enter idle mode instead of standby. When the transactions have finished, the power constraint to prohibit standby is released. The following statements are valid:
Generic API Function | Description |
---|---|
I2C_init() | Initialize I2C driver |
I2C_Params_init() | Initialize an I2C_Params structure |
I2C_open() | Initialize I2C HW and set system dependencies |
I2C_close() | Disable I2C HW and release system dependencies |
I2C_transfer() | Start I2C transfer |
I2C_transferTimeout() | Start I2C transfer with a timeout |
I2C_cancel() | Cancels all I2C transfers |
The CC26XX I2C driver currently does not support:
The I2C driver interface produces log statements if instrumentation is enabled.
Diagnostics Mask | Log details |
---|---|
Diags_USER1 | basic I2C operations performed |
Diags_USER2 | detailed I2C operations performed |
#include <stdint.h>
#include <stdbool.h>
#include <ti/drivers/I2C.h>
#include <ti/drivers/Power.h>
#include <ti/drivers/power/PowerCC26XX.h>
#include <ti/drivers/dpl/SwiP.h>
Go to the source code of this file.
Data Structures | |
struct | I2CCC26XX_I2CPinCfg |
I2CCC26XX Pin Configuration. More... | |
struct | I2CCC26XX_HWAttrsV1 |
I2CCC26XX Hardware attributes. More... | |
struct | I2CCC26XX_Object |
I2CCC26XX Object. More... | |