如何在 EEPROM (Arduino IDE) 中存储负数?

How to store negative numbers in EEPROM (Arduino IDE)?

我试图找到一种直接的方法在 EEPROM 中存储负值,整数值范围从 -20 到 20。我一直在使用 EEPROM.write 和 EEPROM.read 函数来存储字符串一个字符一次,但我在处理负数时遇到了麻烦。我想这个值只需要一个字节。

这只是数字表示的问题。您只需要使用正确的数据类型即可打印或使用:

版本 1:int8_t data = EEPROM.read(addr);

版本 2:

byte data = EEPROM.read(addr);
Serial.print((int8_t)data);

EEPROM.write可以直接与int8_t一起使用:EEPROM.write(int8_value);

或者,如果您不想使用 int,可以使用 put/get 方法(即使对于仅包含 POD 类型的结构)