استخدام البلوتوث LED RGBلتشغيل

المشروع السادس

عن المشروع

في هذا المشروع سنستخدم تطبيق RemotXY للتحكم في الوان اضاءات RGB، هذا النوع من الإضائات يمكنك من انشاء الوان متعددة من خلال تداخل الألوان : R= RED, G=Green, B=Blue

فيديو المشروع

خريطة الربط





تم الإنشاء بواسطة

fritzing.org

رابط تحميل مكتبة RemoteXY:

https://remotexy.com/en/library/

تحتاج لتحميلها واتباع الخطوات الموضحة بمقطع المشروع الخامس

الشيفرة البرمجية

/*

-- RGB --

This source code of graphical user interface

has been generated automatically by RemoteXY editor.

To compile this code using RemoteXY library 2.4.3 or later version

download by link http://remotexy.com/en/library/

To connect using RemoteXY mobile app by link http://remotexy.com/en/download/

- for ANDROID 4.5.1 or later version;

- for iOS 1.4.1 or later version;

This source code is free software; you can redistribute it and/or

modify it under the terms of the GNU Lesser General Public

License as published by the Free Software Foundation; either

version 2.1 of the License, or (at your option) any later version.

*/


//////////////////////////////////////////////

// RemoteXY include library //

//////////////////////////////////////////////


// RemoteXY select connection mode and include library

#define REMOTEXY_MODE__SOFTSERIAL

#include <SoftwareSerial.h>


#include <RemoteXY.h>


// RemoteXY connection settings

#define REMOTEXY_SERIAL_RX 4

#define REMOTEXY_SERIAL_TX 3

#define REMOTEXY_SERIAL_SPEED 9600


int red = 8;

int green = 9;

int blue = 10;



// RemoteXY configurate

#pragma pack(push, 1)

uint8_t RemoteXY_CONF[] =

{ 255,4,0,0,0,28,0,10,13,0,

6,0,52,15,37,37,2,26,2,0,

10,27,31,14,2,26,31,31,79,78,

0,79,70,70,0 };

// this structure defines all the variables and events of your control interface

struct {


// input variables

uint8_t rgb_1_r; // =0..255 Red color value

uint8_t rgb_1_g; // =0..255 Green color value

uint8_t rgb_1_b; // =0..255 Blue color value

uint8_t switch_1; // =1 if switch ON and =0 if OFF


// other variable

uint8_t connect_flag; // =1 if wire connected, else =0


} RemoteXY;

#pragma pack(pop)


/////////////////////////////////////////////

// END RemoteXY include //

/////////////////////////////////////////////




void setup()

{

RemoteXY_Init ();

Serial.begin(9600);

// TODO you setup code

}


void loop()

{

RemoteXY_Handler ();


if (RemoteXY.switch_1 == 0){


analogWrite(blue, 0);

analogWrite(green, 0);

analogWrite(red, 0);


}


if (RemoteXY.switch_1 == 1){


analogWrite(blue, RemoteXY.rgb_1_b);

analogWrite(green, RemoteXY.rgb_1_g);

analogWrite(red, RemoteXY.rgb_1_r);

}

// TODO you loop code

// use the RemoteXY structure for data transfer

// do not call delay()



}