Схема 5. Управляем цветом RGB-светодиода через WiFI
С помощью приложения RemoteXY управляем цветом RGB-светодиода. Чтобы управлять цветом RGB-светодиода надо установить на свой смартфон приложение RemoteXY. После загрузки скетча в настройках WiFi сети появится точка доступа с именем RGB_LED и паролем 12345678. После запуска приложения RemoteXY, можно будет подключиться к этой точке доступа и увидеть на экране смартфона механизм управления цветом RGB-светодиода
Схема управления RGB-светодиодом
// Эта часть кода сгенерирована на сайте remotexy.com
//////////////////////////////////////////////
// RemoteXY include library //
//////////////////////////////////////////////
// определение режима соединения и подключение библиотеки RemoteXY
#define REMOTEXY_MODE__ESP8266WIFI_LIB_POINT
#include <ESP8266WiFi.h>
#include <RemoteXY.h>
// настройки соединения
#define REMOTEXY_WIFI_SSID "RGB_LED"
#define REMOTEXY_WIFI_PASSWORD "12345678"
#define REMOTEXY_SERVER_PORT 6377
// конфигурация интерфейса
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] = // 18 bytes
{ 255,3,0,0,0,11,0,16,177,1,6,0,2,2,59,59,2,26 };
// структура определяет все переменные и события вашего интерфейса управления
struct {
// input variables
uint8_t rgb_1_r; // =0..255 значение Красного цвета
uint8_t rgb_1_g; // =0..255 значение Зеленого цвета
uint8_t rgb_1_b; // =0..255 значение Синего цвета
// other variable
uint8_t connect_flag; // =1 if wire connected, else =0
} RemoteXY;
#pragma pack(pop)
/////////////////////////////////////////////
// END RemoteXY include //
/////////////////////////////////////////////
// прочие переменные
int PIN_red = D1;
int PIN_green = D2;
int PIN_blue = D3;
void setup()
{
RemoteXY_Init ();
Serial.begin(9600);
pinMode(PIN_red, OUTPUT);
pinMode(PIN_green, OUTPUT);
pinMode(PIN_blue, OUTPUT);
}
void loop()
{
RemoteXY_Handler ();
analogWrite(PIN_red, RemoteXY.rgb_1_r);
Serial.print("Красный");Serial.print(RemoteXY.rgb_1_r);
analogWrite(PIN_green, RemoteXY.rgb_1_g);
Serial.print("Зелёный");Serial.print(RemoteXY.rgb_1_g);
analogWrite(PIN_blue, RemoteXY.rgb_1_b);
Serial.print("Синий");Serial.print(RemoteXY.rgb_1_b);
}
//////////////////////////////////////////////
// RemoteXY include library //
//////////////////////////////////////////////
// определение режима соединения и подключение библиотеки RemoteXY
#define REMOTEXY_MODE__ESP8266WIFI_LIB_POINT
#include <ESP8266WiFi.h>
#include <RemoteXY.h>
// настройки соединения
#define REMOTEXY_WIFI_SSID "RGB_LED"
#define REMOTEXY_WIFI_PASSWORD "12345678"
#define REMOTEXY_SERVER_PORT 6377
// конфигурация интерфейса
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] = // 18 bytes
{ 255,3,0,0,0,11,0,16,177,1,6,0,2,2,59,59,2,26 };
// структура определяет все переменные и события вашего интерфейса управления
struct {
// input variables
uint8_t rgb_1_r; // =0..255 значение Красного цвета
uint8_t rgb_1_g; // =0..255 значение Зеленого цвета
uint8_t rgb_1_b; // =0..255 значение Синего цвета
// other variable
uint8_t connect_flag; // =1 if wire connected, else =0
} RemoteXY;
#pragma pack(pop)
/////////////////////////////////////////////
// END RemoteXY include //
/////////////////////////////////////////////
// прочие переменные
int PIN_red = D1;
int PIN_green = D2;
int PIN_blue = D3;
void setup()
{
RemoteXY_Init ();
Serial.begin(9600);
pinMode(PIN_red, OUTPUT);
pinMode(PIN_green, OUTPUT);
pinMode(PIN_blue, OUTPUT);
}
void loop()
{
RemoteXY_Handler ();
analogWrite(PIN_red, RemoteXY.rgb_1_r);
Serial.print("Красный");Serial.print(RemoteXY.rgb_1_r);
analogWrite(PIN_green, RemoteXY.rgb_1_g);
Serial.print("Зелёный");Serial.print(RemoteXY.rgb_1_g);
analogWrite(PIN_blue, RemoteXY.rgb_1_b);
Serial.print("Синий");Serial.print(RemoteXY.rgb_1_b);
}