Go to the source code of this file.
Enumerations | |
| enum | I2C_WorkMode_t { I2C_WorkMode_Slave = 0x00 , I2C_WorkMode_Master = 0x01 } |
| enum | I2C_MasterCmd_t { I2C_MasterCmd_Wait = 0x00 , I2C_MasterCmd_Start = 0x01 , I2C_MasterCmd_Send = 0x02 , I2C_MasterCmd_RxAck = 0x03 , I2C_MasterCmd_Recv = 0x04 , I2C_MasterCmd_TxAck = 0x05 , I2C_MasterCmd_Stop = 0x06 , I2C_MasterCmd_StartSendRxAck = 0x09 , I2C_MasterCmd_SendRxAck = 0x0A , I2C_MasterCmd_RecvTxAck0 = 0x0B , I2C_MasterCmd_RecvNAck = 0x0C } |
| enum | I2C_AlterPort_t { I2C_AlterPort_P15_P14 = 0x00 , I2C_AlterPort_P25_P24 = 0x01 , I2C_AlterPort_P77_P76 = 0x02 , I2C_AlterPort_P32_P33 = 0x03 } |
Functions | |
| uint8_t | I2C_Write (uint8_t devAddr, uint8_t memAddr, uint8_t *dat, uint16_t size) |
| uint8_t | I2C_Read (uint8_t devAddr, uint8_t memAddr, uint8_t *buf, uint16_t size) |
| uint8_t | I2C_Write16BitAddr (uint8_t devAddr, uint16_t memAddr, uint8_t *dat, uint16_t size) |
| uint8_t | I2C_Read16BitAddr (uint8_t devAddr, uint16_t memAddr, uint8_t *buf, uint16_t size) |
| #define I2C_ClearSlaveRecvInterrupt | ( | ) | (I2CSLST &= ~(0x01 << 5)) |
| #define I2C_ClearSlaveSendInterrupt | ( | ) | (I2CSLST &= ~(0x01 << 4)) |
| #define I2C_ClearSlaveStartInterrupt | ( | ) | (I2CSLST &= ~(0x01 << 6)) |
| #define I2C_ClearSlaveStopInterrupt | ( | ) | (I2CSLST &= ~(0x01 << 3)) |
| #define I2C_FREQUENCY_COMPUTE | ( | __PRESCALER__ | ) | ((__SYSCLOCK / 2U) / (((__PRESCALER__) * 2U) + 4U)) |
| #define I2C_IsMasterBusy | ( | ) | (I2CMSST & 0x80) |
| #define I2C_IsSlaveBusy | ( | ) | (I2CSLST & (0x01 << 7)) |
| #define I2C_IsSlaveRecvInterrupt | ( | ) | (I2CSLST & (0x01 << 5)) |
| #define I2C_IsSlaveSendInterrupt | ( | ) | (I2CSLST & (0x01 << 4)) |
| #define I2C_IsSlaveStartInterrupt | ( | ) | (I2CSLST & (0x01 << 6)) |
| #define I2C_IsSlaveStopInterrupt | ( | ) | (I2CSLST & (0x01 << 3)) |
| #define I2C_MasterAck | ( | ) | do{I2CMSST &= ~(0x01); I2C_SendMasterCmd(I2C_MasterCmd_TxAck);}while(0) |
| #define I2C_MasterNAck | ( | ) | do{I2CMSST |= 0x01; I2C_SendMasterCmd(I2C_MasterCmd_TxAck);}while(0) |
| #define I2C_MasterRxAck | ( | ) | I2C_SendMasterCmd(I2C_MasterCmd_RxAck) |
| #define I2C_MasterSendData | ( | __DATA__ | ) | do{I2CTXD = (__DATA__); I2C_SendMasterCmd(I2C_MasterCmd_Send);}while(0) |
| #define I2C_MasterStart | ( | ) | I2C_SendMasterCmd(I2C_MasterCmd_Start) |
| #define I2C_MasterStop | ( | ) | I2C_SendMasterCmd(I2C_MasterCmd_Stop) |
| #define I2C_PRESCALER_COMPUTE | ( | __FREQ__ | ) | ((((__SYSCLOCK / __FREQ__) / 2U) - 4U) / 2U) |
| #define I2C_SetClockPrescaler | ( | __DIV__ | ) |
| #define I2C_SetEnabled | ( | __STATE__ | ) | SFRX_ASSIGN(I2CCFG, 7, __STATE__) |
| #define I2C_SetMasterAutoSend | ( | __STATE__ | ) | SFRX_ASSIGN(I2CMSAUX, 0, __STATE__) |
| #define I2C_SetPort | ( | __ALTER_PORT__ | ) | (P_SW2 = P_SW2 & ~(0x03 << 4) | ((__ALTER_PORT__) << 4)) |
| #define I2C_SetSlaveAddrControl | ( | __STATE__ | ) | SFRX_ASSIGN(I2CSLADR, 0, __STATE__) |
| #define I2C_SetWorkMode | ( | __MODE__ | ) | SFRX_ASSIGN(I2CCFG, 6, __MODE__) |
| enum I2C_AlterPort_t |
| Enumerator | |
|---|---|
| I2C_AlterPort_P15_P14 | |
| I2C_AlterPort_P25_P24 | |
| I2C_AlterPort_P77_P76 | |
| I2C_AlterPort_P32_P33 | |
Definition at line 45 of file fw_i2c.h.
| enum I2C_MasterCmd_t |
Definition at line 27 of file fw_i2c.h.
| enum I2C_WorkMode_t |
| Enumerator | |
|---|---|
| I2C_WorkMode_Slave | |
| I2C_WorkMode_Master | |
Definition at line 36 of file fw_i2c.c.
Definition at line 85 of file fw_i2c.c.
Definition at line 18 of file fw_i2c.c.
Definition at line 65 of file fw_i2c.c.