我的问题如下:
我喜欢将数据存储在像
这样的EEPROM中char errorflag[] = "1234567";
i2c_eeprom_write_page(0x50, 0, (byte *)errorflag, sizeof(errorflag));
完美,到目前为止没有问题。但是如何保存存储在变量中的long呢?当然以下不起作用,但它显示了我喜欢做的事情:
long long_variable = 1234567;
char errorflag[] = long_variable;
i2c_eeprom_write_page(0x50, 0, (byte *)errorflag, sizeof(errorflag));
我做了很多尝试并不难解决这个问题,但看起来我似乎无视... ...
答案 0 :(得分:2)
如果要将数据保存为原始二进制文件:
long long_variable = 1234567;
i2c_eeprom_write_page(0x50, 0, (byte *) long_variable, sizeof(long_variable));
如果要将变量转换为文本并保存(包括'\0'
终结符):
long long_variable = 1234567;
char errorflag[16];
sprintf(errorflag, "%ld", long_variable);
i2c_eeprom_write_page(0x50, 0, (byte *) errorflag, strlen(errorflag) + 1);