Dahili eeprom hatalı bilgi veriyor

Merhabalar Şöyle bir sorunum var Arduino mega ile harici eproma karakter bazında bilgi kaydedip, kaydedilen bilgileri arduino ile okurken tanımlamış oldugum char değişkenine atamaları yanlış yapıyor. harici epromu başka sistemimde okudugumda herşey normal Sistem için şöyle örnek vereyim, 3 adet char tipinde değişkenim var x,y,z x=12345; y=23456; z=34567; bu bilgileri harici eproma kayıt işleminde sıkıntı olmuyor. Harici epromdan bu bilgileri okurken x=12345? y=2345612345; z=345672345612345; şeklinde okuma yapıyor. Dahili eproma bu bilgileri alırken ana deger artı bir önceki deger diye alıyor ve 32byte tamamlanınca sıfırlanıyor. Evet sanki sorun belli gibi ama kafam durdu. Kullandıgım kütüphaneler. Harici eprom için EEPROMAnything2.h dahili eprom için EEPROM.h

Örnek olması için programdan kodlar şu şekilde include < EEPROMAnything2.h> include < EEPROM.h> define EEPROM_I2C_ADDRESS 0x50 //Harici Eprom adresi int adres; void setup() { Wire.begin(0x50); Wire.begin(0x51); Serial.begin(9600); } void loop() { adres=29; char x={“12345”}; EEPROM_writeAnything(adres, x); delay(25);Serial.println(x); adres=39; char y ={“23456”}; EEPROM_writeAnything(adres, y); delay(25);Serial.println(y); adres=49; char z={“34567”}; EEPROM_writeAnything(adres, z); delay(25);Serial.println(z); delay(3000); char a[5]; char b[5]; char c[5]; adres=29; EEPROM_readAnything(adres, a);Serial.println(a); adres=39; EEPROM_readAnything(adres, b);Serial.println(b); adres=49;EEPROM_readAnything(adres, c);Serial.println(c); delay(2000); }

char a[5]; char b[5]; char c[5]; Bunları 6 yap düzelir.

amenofis çok teşekkürler peki niçin 6 yapmak zorunda kaldım.

Çünkü stringlerin sonunda 1 tane de sonlandırma karakteri (0) olur. Bu olmazsa stringin nerede bittiği bilinemezdi.

teşekkürler