gpt4 book ai didi

c++ - 将代码从 EEPROM 写入 char 数组

转载 作者:太空宇宙 更新时间:2023-11-04 12:31:50 28 4
gpt4 key购买 nike

在 EEPROM 上,密码 1234 以字节形式写入。现在我想读出 pincode 并将其写入一个 char 类型的数组并在串行监视器上打印它,但我只得到如图所示的矩形。但是,如果我使用“Serial.print(EEPROM.read(i));”将它直接打印到串口监视器上我得到“1234”。 serial monitor

const byte PINLENGTH = 4;
char pinCode[PINLENGTH+1];

void setup() {
Serial.begin(9600);
Serial.print(pinCode[0]);

for ( int i = 0; i < PINLENGTH; ++i ){
pinCode[i] = (char) EEPROM.read(i);
Serial.print(pinCode[i]);
}}


void loop() {

}

最佳答案

试试这个:

const byte PINLENGTH = 4;
char pinCode[PINLENGTH+1];

void setup() {
Serial.begin(9600);

for ( int i = 0; i < PINLENGTH; ++i ){
pinCode[i] = (char) EEPROM.read(i) + '0'; // <- Note +'0'
Serial.print(pinCode[i]);
}}

这里的要点是,从 EEPROM 读取的值可能是二进制的,添加 '0' 会将它们转换为 ASCII。

关于c++ - 将代码从 EEPROM 写入 char 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58395784/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com