พอกด Reset board แล้ว มีวิธี ให้ค่าไม่กลับไป default ไหม esp8266

เราตั้งค่า ตามที่ต้องการ ไว้ พอกด Reset ฺboard แล้วค่ากลับไปเป็น default ต้องมาตั้งค่าใหม่ตลอด มีวิธืแก้ไขไหมครับ

หมายถึงยังไงครับปกติมันก็กลับมาตามค่าที่ อยู่ใน void setup() นะครับ

int countH = 30; ////ตัวแปร1กำหนดค่าเริ่มต้นไว้

#define swith1 D6 ////ต่อขา D4 สั่ง switchที่1 manul set เรากดตั้งไว้สัก 40

เรามี switch กด เพื่อตั้งค่าครับ แต่พอกดปุ่ม reset ค่ากลับมา countH = 30;
ต้องมากดตั้งค่าใหม่ครับ

ใช้ eeprom ในการบันทึกค่าครับ เป็นหน่วยความจำที่ไม่ใช้ไฟ สามารถเขียนกับได้ที่ละบิต กรณีนี้ใช้ แค่ 2 บิตในการเก็บค่า สมมิเราตั้ง 50 5 และ 0 จะถูกเขียนเก็บไว้

จากนั้น ถ้ามีการรีเซตบอร์ด ให้เขียนคำสั่ง เข้าไปอ่าน eeprom สองบิตนี้ มันจะระบุต่ำแหน่งที่เก็บได้ อ่านค่าแล้วเอามารวมกัน และนำมาใช้

ให้ใส่ไว้ใน void setup ครับ

ศึกษาคำสั่งเหล่านี้ครับ อันนี้จะเป็นชุดที่ใช้เขียนเก็บ

for (int i = 0; i < n; ++i)
            {
              EEPROM.write(i, text_In[i]);
              EEPROM.commit();
              Serial.print("text_In: ");
              Serial.println(text_In[i]); 
            }

ขอบคุณครับ