#ifndef IOI2C_INC #define IOI2C_INC /* MBARI Interface Board for Cirronet WIT-2410 Wireless MODEM - I2C Control Latch (PCA9535) defines */ #define MODEM_NODE_ADDR_WR 0x40 #define MODEM_NODE_ADDR_RD 0x41 #define MODEM_CFG_LO_BYTE 0xF8 #define MODEM_CFG_HI_BYTE 0x03 #define MODEM_DAT_LO_BYTE 0x07 #define MODEM_DAT_HI_BYTE 0xC0 #define MODEM_INPUT_PORT0 0x00 #define MODEM_INPUT_PORT1 0x01 #define MODEM_OUTPUT_PORT0 0x02 #define MODEM_OUTPUT_PORT1 0x03 #define MODEM_INVERT_PORT0 0x04 #define MODEM_INVERT_PORT1 0x05 #define MODEM_CONFIG_PORT0 0x06 #define MODEM_CONFIG_PORT1 0x07 #define MODEM_CFG 0x00 #define MODEM_RTS 0x01 #define MODEM_SLEEP 0x02 #define MODEM_K1_SET 0x12 #define MODEM_K1_RESET 0x13 #define MODEM_K2_SET 0x14 #define MODEM_K2_RESET 0x15 #define MODEM_STANDBY_LED 0x16 #define MODEM_CARRIER_LED 0x17 /* high level I2C function prototypes */ int I2C_ReadInputPorts(uchar *Port0, uchar *Port1); int I2C_ReadInputPort0(uchar *Port0); int I2C_ReadInputPort1(uchar *Port1); int I2C_SetClrBitPort0(uchar Bit, uchar State); int I2C_SetClrBitPort1(uchar Bit, uchar State); int I2C_InitPortConfiguration(void); int I2C_WriteDefaultPortValues(void); int I2C_SetWriteMode(uchar Port); int I2C_SetReadMode(uchar Port); /* low level I2C function prototypes */ void I2C_Start(void); void I2C_Stop(void); void I2C_WrByte(uchar arg_value); uchar I2C_RdByte(void); uchar I2C_RdAck(void); void I2C_WrAck(void); void I2C_WrNak(void); #endif