Загрузка данных


#include <Wire.h>

void setup() {
  Serial.begin(9600);
  Wire.begin();
  Serial.println("Поиск Rex Spectrum...");
}

void loop() {
  if (Serial.available()) {
    char cmd = Serial.read();
    
    if (cmd == '1') {
      // Попытка включить свет (стандартная команда для многих LED-драйверов)
      Wire.beginTransmission(0x30); // Адрес 0x30 (часто используется)
      Wire.write(0x01); // Команда "включить"
      Wire.endTransmission();
      Serial.println("Свет ВКЛ");
    }
    
    if (cmd == '0') {
      // Попытка выключить
      Wire.beginTransmission(0x30);
      Wire.write(0x00); // Команда "выключить"
      Wire.endTransmission();
      Serial.println("Свет ВЫКЛ");
    }
  }
  
  // Автопоиск адреса при запуске
  static bool scanned = false;
  if (!scanned) {
    for (byte addr = 1; addr < 127; addr++) {
      Wire.beginTransmission(addr);
      if (Wire.endTransmission() == 0) {
        Serial.print("Найден адрес: 0x");
        Serial.println(addr, HEX);
      }
    }
    scanned = true;
    Serial.println("Готово. Введите 1=ВКЛ, 0=ВЫКЛ");
  }
}