Изучение светодиодного диммера Arduino BLE: несколько методов и примеры кода

Платы Arduino — это универсальные платформы, которые можно использовать для управления различными электронными компонентами. В этой статье блога мы сосредоточимся на методах затемнения светодиодов Arduino BLE (Bluetooth Low Energy). Мы рассмотрим несколько методов и предоставим примеры кода, чтобы продемонстрировать, как можно управлять яркостью светодиода по беспроводной сети с помощью Arduino и BLE. Давайте погрузимся!

Метод 1: использование библиотеки ArduinoBLE
Пример кода:

#include <ArduinoBLE.h>
BLEService ledService("19B10000-E8F2-537E-4F6C-D104768A1214"); // LED Service UUID
BLEByteCharacteristic brightnessChar("19B10001-E8F2-537E-4F6C-D104768A1214", BLERead | BLEWrite); // Brightness Characteristic UUID
int ledPin = 9;
void setup() {
  Serial.begin(9600);
  pinMode(ledPin, OUTPUT);
  if (!BLE.begin()) {
    Serial.println("Failed to initialize BLE!");
    while (1);
  }
  BLE.setLocalName("LED Dimmer");
  BLE.setAdvertisedService(ledService);
  ledService.addCharacteristic(brightnessChar);
  BLE.addService(ledService);
  BLE.advertise();
  Serial.println("BLE LED Dimmer Initialized");
}
void loop() {
  BLEDevice central = BLE.central();
  if (central) {
    while (central.connected()) {
      if (brightnessChar.written()) {
        int brightness = brightnessChar.value();
        analogWrite(ledPin, brightness);
        Serial.print("Received brightness: ");
        Serial.println(brightness);
      }
    }
  }
}

Метод 2: использование модуля BLE HM-10
Пример кода:

#include <SoftwareSerial.h>
SoftwareSerial bleSerial(10, 11); // RX, TX pins for HM-10 module
int ledPin = 9;
void setup() {
  Serial.begin(9600);
  bleSerial.begin(9600);
  pinMode(ledPin, OUTPUT);
  Serial.println("BLE LED Dimmer Initialized");
}
void loop() {
  if (bleSerial.available()) {
    int brightness = bleSerial.parseInt();
    analogWrite(ledPin, brightness);
    Serial.print("Received brightness: ");
    Serial.println(brightness);
  }
}

Метод 3: использование приложения для смартфона и модуля Bluetooth HC-05
Пример кода:

#include <SoftwareSerial.h>
SoftwareSerial btSerial(10, 11); // RX, TX pins for HC-05 module
int ledPin = 9;
void setup() {
  Serial.begin(9600);
  btSerial.begin(9600);
  pinMode(ledPin, OUTPUT);
  Serial.println("Bluetooth LED Dimmer Initialized");
}
void loop() {
  if (btSerial.available()) {
    int brightness = btSerial.parseInt();
    analogWrite(ledPin, brightness);
    Serial.print("Received brightness: ");
    Serial.println(brightness);
  }
}

В этой статье мы рассмотрели несколько методов реализации затемнения светодиодов BLE в Arduino. Мы рассмотрели использование библиотеки ArduinoBLE, модуля BLE HM-10 и модуля Bluetooth HC-05. Каждый метод обеспечивает возможность беспроводного управления яркостью светодиода, открывая возможности для различных приложений. Следуя приведенным примерам кода, вы можете начать экспериментировать с затемнением светодиодов Arduino BLE. Наслаждайтесь созданием собственных проектов и исследованием мира беспроводного управления светодиодами с помощью Arduino!