新手求讲解

2019-08-17 08:28发布


这部分看不太懂,有没有好心人给讲一下呢 谢谢
这个  I2c_Buf_Write = i;   是干嘛的
为什么上面的for循环里是255 下面的是256
这句 if(i%16 == 15)      
        printf(" ");  有必要吗


void I2C_Test(void)  
{  
    u16 i;  


    printf("写入的数据 ");  

    for ( i=0; i<=255; i++ ) // 填充缓冲  
  {                              
    I2c_Buf_Write = i;  


    printf("0x%02X ", I2c_Buf_Write);  
    if(i%16 == 15)      
        printf(" ");      
   }  

    //将I2c_Buf_Write中顺序递增的数据写入EERPOM中   
    //LED1(ON);  
    I2C_EE_BufferWrite (I2c_Buf_Write, EEP_Firstpage, 256);  
    //LED1(OFF);     

  printf(" 写成功 ");  

   printf(" 读出的数据 ");  
  //将EEPROM读出数据顺序保持到I2c_Buf_Read中  
    //LED2(ON);     
    I2C_EE_BufferRead(I2c_Buf_Read, EEP_Firstpage, 256);   
   //LED2(OFF);  

  //将I2c_Buf_Read中的数据通过串口打印  
    for (i=0; i<256; i++)  
    {     
        if(I2c_Buf_Read != I2c_Buf_Write)  
        {  
            printf("0x%02X ", I2c_Buf_Read);  
            printf("错误:I2C EEPROM写入与读出的数据不一致 ");  
            return;  
        }  
    printf("0x%02X ", I2c_Buf_Read);  
    if(i%16 == 15)      
        printf(" ");  

    }  
  printf("I2C(AT24C02)读写测试成功 ");  
}  


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。