编程序时 发现写入EEPROM的数据 读出的时候不正确,所以写了 下面的程序: Byte_Program(0x2800,0x0f); while(1) { SBUF=Byte_Read(0x2800); while(TI==0); TI=0; } //Sector_Erase(0x2800); 写进去的是0f 怎么串口吐出来的 是 E8?? 单片机 重新上电 就 正确了 烧写程序后 不断电 串口吐出的数据就不对。 我一开始发现整个程序的问题是 扇区擦除不正确,因为修改的EEPROM中的数据,1能变0 0不能变1,可后来写了个测试: Byte_Program(0x2800,0x0f); Sector_Erase(0x2800); while(1) { SBUF=Byte_Read(0x2800); while(TI==0); TI=0; } 发现串口吐出去的数据是FF,那说明扇区擦除正常啊。我怎么感觉一会儿好使 一会儿又 不好使呢 。 各位大侠 请 指教。 |