astrobeed:
gingardu:
come se i numeri memorizzati che iniziano con lo zero vicino alla B perdessero gli zeroNon è possibile quello che dici, la EEPROM non può fornire dati errati o incompleti, c'è sicuramente un errore di metodo di misura nel tuo test.
mah.. qualcosa di "strano" sembra che c'è,
ho masso il serial print nel codice postato (ho messo anche int a k se no non compilava)
mi pare che dopo la sedicesima lettura si mangia gli zeri (spiega il motivo per curiosita)
anche se quel wile ne codice cosi com'è mi sembra strano forse voleva fare un for ]![]()
se leggo direttamente le memorie sballate da giusto risultato se si legge una dopo l'altra printa come la foto ![]()
qui c'è il codice
#include <EEPROM.h>
int addr = 0;
int k=0;
void setup()
{
Serial.begin(9600);
DDRD = B11111111; //tutti i pin sono uscite
//PORTD = B00000000 ;
}
void loop()
{
while (k<100)
{
//delay (160);
PORTD = EEPROM.read(addr);
// PORTD = EEPROM.read(18);
//delay (160);
Serial.println (PORTD, BIN);
++ addr;
if (addr > 31)
{addr = 0;}
}
}
