Ucs_Return_t Ucs_I2c_CreatePort | ( | Ucs_Inst_t * | self, |
uint16_t | node_address, | ||
uint8_t | index, | ||
Ucs_I2c_Speed_t | speed, | ||
uint8_t | i2c_int_mask, | ||
Ucs_I2c_CreatePortResCb_t | result_fptr | ||
) |
Creates an I2C Port with its associated parameter.
This function corresponds with the INIC function INIC.I2CPortCreate. |
self | The UNICENS instance pointer | ||
node_address | Address of the target device. Use the UCS_ADDR_LOCAL_NODE macro to target the local device. The following address ranges are supported:
| ||
index | I2C Port instance.
| ||
speed | The speed grade of the I2C Port.
| ||
i2c_int_mask | The bit mask corresponding to the I2C-interrupt on the GPIO Port. | ||
result_fptr | Required result callback function pointer. |
Value | Description |
---|---|
UCS_RET_SUCCESS | No error |
UCS_RET_ERR_PARAM | At least one parameter is NULL. |
UCS_RET_ERR_BUFFER_OVERFLOW | No message buffer is available. |
UCS_RET_ERR_API_LOCKED | API is currently locked. |
UCS_RET_ERR_NOT_SUPPORTED | API is not supported in the current Network Supervisor Mode. |
UCS_RET_ERR_NOT_INITIALIZED | UNICENS is not initialized. |
See also section Example for Ucs_I2c_CreatePort for an example implementation. |