PSOC E8XXGP Device Support Library

| PSOC E8XXGP Device Support Library

Enumerations
Enumerated Types
PDL API Reference » SCB (Serial Communication Block) » I2C (SCB)

## General Description

## Enumerations
enum | cy_en_scb_i2c_status_t { CY_SCB_I2C_SUCCESS = 0U , CY_SCB_I2C_BAD_PARAM = (CY_SCB_ID | CY_PDL_STATUS_ERROR | CY_SCB_I2C_ID | 1U) , CY_SCB_I2C_MASTER_NOT_READY = (CY_SCB_ID | CY_PDL_STATUS_ERROR | CY_SCB_I2C_ID | 2U) , CY_SCB_I2C_MASTER_MANUAL_TIMEOUT = (CY_SCB_ID | CY_PDL_STATUS_ERROR | CY_SCB_I2C_ID | 3U) , CY_SCB_I2C_MASTER_MANUAL_ADDR_NAK = (CY_SCB_ID | CY_PDL_STATUS_ERROR | CY_SCB_I2C_ID | 4U) , CY_SCB_I2C_MASTER_MANUAL_NAK = (CY_SCB_ID | CY_PDL_STATUS_ERROR | CY_SCB_I2C_ID | 5U) , CY_SCB_I2C_MASTER_MANUAL_ARB_LOST = (CY_SCB_ID | CY_PDL_STATUS_ERROR | CY_SCB_I2C_ID | 6U) , CY_SCB_I2C_MASTER_MANUAL_BUS_ERR = (CY_SCB_ID | CY_PDL_STATUS_ERROR | CY_SCB_I2C_ID | 7U) , CY_SCB_I2C_MASTER_MANUAL_ABORT_START = (CY_SCB_ID | CY_PDL_STATUS_ERROR | CY_SCB_I2C_ID | 8U) }
| I2C status codes. More...
enum | cy_en_scb_i2c_mode_t { CY_SCB_I2C_SLAVE = 1U , CY_SCB_I2C_MASTER = 2U , CY_SCB_I2C_MASTER_SLAVE = 3U }
| I2C Operation Modes. More...
enum | cy_en_scb_i2c_direction_t { CY_SCB_I2C_WRITE_XFER = 0U , CY_SCB_I2C_READ_XFER = 1U }
| I2C Transaction Direction. More...
enum | cy_en_scb_i2c_command_t { CY_SCB_I2C_ACK , CY_SCB_I2C_NAK }
| I2C Command ACK / NAK. More...

## Enumeration Type Documentation

## ◆ cy_en_scb_i2c_status_t

enum cy_en_scb_i2c_status_t

I2C status codes.

Enumerator
CY_SCB_I2C_SUCCESS | Operation completed successfully.
CY_SCB_I2C_BAD_PARAM | One or more of input parameters are invalid.
CY_SCB_I2C_MASTER_NOT_READY | The master is not ready to start a new transaction. Either the master is still processing a previous transaction or in the master-slave mode, the slave operation is in progress.
CY_SCB_I2C_MASTER_MANUAL_TIMEOUT | The master operation timed out before completing. Applicable only for the Master Low-Level functions.
CY_SCB_I2C_MASTER_MANUAL_ADDR_NAK | The slave NACKed the address. Applicable only for the Master Low-Level functions.
CY_SCB_I2C_MASTER_MANUAL_NAK | The slave NACKed the data byte. Applicable only for the Master Low-Level.
CY_SCB_I2C_MASTER_MANUAL_ARB_LOST | The master lost arbitration, the transaction was aborted. Applicable only for the Master Low-Level functions.
CY_SCB_I2C_MASTER_MANUAL_BUS_ERR | The master detected an erroneous start or stop, the transaction was aborted. Applicable only for the Master Low-Level functions.
CY_SCB_I2C_MASTER_MANUAL_ABORT_START | The master transaction was aborted and the slave transaction is on-going because the slave was addressed before the master generated a start. Applicable only for the Master Low-Level functions.

## ◆ cy_en_scb_i2c_mode_t

enum cy_en_scb_i2c_mode_t

I2C Operation Modes.

Enumerator
CY_SCB_I2C_SLAVE | Configures SCB for I2C Slave operation.
CY_SCB_I2C_MASTER | Configures SCB for I2C Master operation.
CY_SCB_I2C_MASTER_SLAVE | Configures SCB for I2C Master-Slave operation.

## ◆ cy_en_scb_i2c_direction_t

enum cy_en_scb_i2c_direction_t

I2C Transaction Direction.

Enumerator
CY_SCB_I2C_WRITE_XFER | Current transaction is Write.
CY_SCB_I2C_READ_XFER | Current transaction is Read.

## ◆ cy_en_scb_i2c_command_t

enum cy_en_scb_i2c_command_t

I2C Command ACK / NAK.

Enumerator
CY_SCB_I2C_ACK | Send ACK to current byte.
CY_SCB_I2C_NAK | Send NAK to current byte.