- //在AT24CXX指定地址写入一个数据
- //WriteAddr :写入数据的目的地址
- //DataToWrite:要写入的数据
- void AT24CXX_WriteOneByte(u16 WriteAddr,u8 DataToWrite)
- {
- IIC_Start();
- IIC_Send_Byte(0XA0+((WriteAddr/256)<<1)); //发送器件地址0XA0,写数据
- IIC_Wait_Ack();
- IIC_Send_Byte(WriteAddr%256); //发送低地址
- IIC_Wait_Ack();
- IIC_Send_Byte(DataToWrite); //发送字节
- IIC_Wait_Ack();
- IIC_Stop();//产生一个停止条件
- delay_ms(10);
- }
复制代码为什么这句代码后面里面addr为什么需要除以256然后这边移动一位IIC_Send_Byte(0XA0+((WriteAddr/256)<<1)); //发送器件地址0XA0,写数据
捕获.PNG (32.37 KB, 下载次数: 0)
下载附件
2013-3-8 10:46 上传
一周热门 更多>