Как Arduino запоминает последние байты из Bluetooth HC-05?

Я создал проект по автоматизации дома.

Описание: Свет включается и выключается через модуль Bluetooth HC-05 и мое приложение Android. Проблема в том, что когда пропадает питание, система останавливается, это нормально. После этого, когда питание восстанавливается, система остается выключенной, так как не сохраняется значение.

Помогите мне, пожалуйста, как сохранить данные Bluetooth в EEPROM на Arduino. Мой простой код выглядит так...

#include <EEPROM.h>
#define ledPin 7
int state = 0;

void setup() {
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, LOW);
  Serial.begin(9600); // Скорость связи Bluetooth-модуля по умолчанию
}

void loop() {

  if(Serial.available() > 0){ // Проверяет, поступают ли данные с последовательного порта
    state = Serial.read(); // Считывает данные из последовательного порта
  }

  if (state == '0') {
    digitalWrite(ledPin, LOW); // Выключить светодиод
    Serial.println("LED: OFF"); // Отправляем обратно на телефон строку "LED: ON"
    state = 0;
  }
  else if (state == '1') {
    digitalWrite(ledPin, HIGH);
    Serial.println("LED: ON");;
    state = 0;
  } 
}

, 👍-1


1 ответ


0

Сэр, вы не использовали функции EEPROM, вы просто инициализировали их. Например

  • EEPROM.read();
  • EEPROM.write();

Если вы воспользуетесь этими функциями, то ваша проблема будет решена..

,