if(MCU_I2C_STATUS_FF2B &(0x04)) /* Data In Interrupt 有八位;看特定位的高低电平来确定传送过的是什么信号; */ { MCU_I2C_STATUS_FF2B = MCU_I2C_STATUS_FF2B & (~DINI); /*状态位复位*/ Waite_I2C_Stable(); /*等待IIC总线稳定*/ rMode=MCU_I2C_DATA_IN_FF29; /*保存传送过来的数据*/ } if(MCU_I2C_STATUS_FF2B & 0x08) /* Data out Interrupt */ { MCU_I2C_STATUS_FF2B = MCU_I2C_STATUS_FF2B & (~DOUTI); /*状态位复位*/ Waite_I2C_Stable(); /*等待IIC总线稳定*/ Address++; /*地址++*/ MCU_I2C_DATA_OUT_FF2A =0x00; /*发送0x00(复位状态)出去*/ } if(MCU_I2C_STATUS_FF2B & 0x02) /* Sub Address Interrupt */ { MCU_I2C_STATUS_FF2B = MCU_I2C_STATUS_FF2B & (~SUBI); /*状态位复位*/ Waite_I2C_Stable(); /*等待IIC总线稳定*/ Address=MCU_I2C_SUB_IN_FF28; /*保存传送过来的地址*/ MCU_I2C_DATA_OUT_FF2A =0x00; /*发送0x00(复位状态)出去*/ } 继续中。。