Arduino 在EEPROM中存储长变量
我的问题如下: 我喜欢在EEPROM中存储数据,比如Arduino 在EEPROM中存储长变量,arduino,eeprom,Arduino,Eeprom,我的问题如下: 我喜欢在EEPROM中存储数据,比如 char errorflag[] = "1234567"; i2c_eeprom_write_page(0x50, 0, (byte *)errorflag, sizeof(errorflag)); 很好,到目前为止没有问题。但是,如何将长时间存储在变量中?当然,以下内容不起作用,但它表明了我喜欢做什么: long long_variable = 1234567; char errorflag[] = long_variable;
char errorflag[] = "1234567";
i2c_eeprom_write_page(0x50, 0, (byte *)errorflag, sizeof(errorflag));
很好,到目前为止没有问题。但是,如何将长时间存储在变量中?当然,以下内容不起作用,但它表明了我喜欢做什么:
long long_variable = 1234567;
char errorflag[] = long_variable;
i2c_eeprom_write_page(0x50, 0, (byte *)errorflag, sizeof(errorflag));
我做了很多尝试,想弄明白并不难,但似乎我看不到…如果您想将数据保存为原始二进制:
long long_variable = 1234567;
i2c_eeprom_write_page(0x50, 0, (byte *) long_variable, sizeof(long_variable));
如果要将变量转换为文本并保存(包括'\0'
终止符):
“sprintf(errorflag,“%ld”,long_变量);”这让我很高兴,非常感谢!
long long_variable = 1234567;
char errorflag[16];
sprintf(errorflag, "%ld", long_variable);
i2c_eeprom_write_page(0x50, 0, (byte *) errorflag, strlen(errorflag) + 1);