كود أردوينو كامل للتحكم الذكي في مستودع هيدروبونيك زراعة أسماك نباتات الجزء الثاني (2)
(تحميل المكتبات + بداية شرح الكود / الجزء العلوي فوق void setup)
Arduino-code-farme-hydroponic-control
===========
كود أردوينو كامل للتحكم الذكي في مستودع هيدروبونيك (زراعة أسماك نباتات او ورقيات...) بالكامل مجرب لن تحتاج لأيدي عاملة به تقريبا إلا للأعمال الروتينية والتفقدات... ونظرا لأن الموضوع طويل فقد تم تقسيمه لسبعة أجزاء وهذا هو الجزء الثاني سنتعرف فيه على الشرح التفصيلي للتعاريف التي تكون فوق قسم
void setup() {
من الكود مع تحميل المكتبات الضرورية لتشغيله...
الشرح التفصيلي للكود المستعمل لتحميله إنزل لأسفل الجزء السابع (ج7) من الموضوع
=======================================================
كود أردوينو كامل للتحكم الذكي في مستودع
هيدروبونيك زراعة أسماك نبات بالكامل والتحكم بواجهة عرض +الهاتف الذكي +السيريال
مونيتور
=======================================================
أولا تحميل المكتبات
لتحميل المكتبات إضغط عليها بالأسفل أو قم بنسخ الرابط الأول الغير مباشر بالاسود الذي يلي المكتبة وقم بلصقه في متصفحك واضغط للإنتقال إلى صفحة التحميل أو قم بنفس الأمر مع الرابط الثاني الاحمر للتحميل المباشر (كل الروابط تؤدي لنفس الملف إختر طريقة التحميل التي تناسبك) ......
https://drive.google.com/file/d/17vP0TmzgLJIzUb_YXabmTwRrXg1YGo8k/view?usp=sharing
https://docs.google.com/uc?id=17vP0TmzgLJIzUb_YXabmTwRrXg1YGo8k&export=download
https://drive.google.com/file/d/1wPY8Zgk969prifUukI5aYZnHPCcqWVEf/view?usp=sharing
https://docs.google.com/uc?id=1wPY8Zgk969prifUukI5aYZnHPCcqWVEf&export=download
https://drive.google.com/file/d/1008fW_q17pr3mA0IFRxGm_i1El20MBjS/view?usp=sharing
https://docs.google.com/uc?id=1008fW_q17pr3mA0IFRxGm_i1El20MBjS&export=download
https://drive.google.com/file/d/1TlERUD406kde6SOUsZp9PZB337wIDTZ2/view?usp=sharing
https://docs.google.com/uc?id=1TlERUD406kde6SOUsZp9PZB337wIDTZ2&export=download
https://drive.google.com/file/d/1U7tzHYGl61GU7Uhcv9ulT98S_xXh1PKy/view?usp=sharing
https://docs.google.com/uc?id=1U7tzHYGl61GU7Uhcv9ulT98S_xXh1PKy&export=download
https://drive.google.com/file/d/172e16MtTTyuBqL46cZmzKDfKQ1ChTJNE/view?usp=sharing
https://docs.google.com/uc?id=172e16MtTTyuBqL46cZmzKDfKQ1ChTJNE&export=download
https://drive.google.com/file/d/1rgoMCUNa4VQyCkVd2iUxcUgpVtEk7q0G/view?usp=sharing
https://docs.google.com/uc?id=1rgoMCUNa4VQyCkVd2iUxcUgpVtEk7q0G&export=download
https://drive.google.com/file/d/15dMcfnskwpztKQz4Drgl45OJuyoWw8lR/view?usp=sharing
https://docs.google.com/uc?id=15dMcfnskwpztKQz4Drgl45OJuyoWw8lR&export=download
ثانيا بداية الكود مع الشرح (القسم العلوي من الكود البرمجي فوق Void setup )
===========================================
هنا نظيف مكتبة الساعة الحقيقية real time DS3231
#include
<DS3231.h>
هنا نظيف مكتبة شاشة الكريستال 4*20
#include
<LiquidCrystal.h>
هنا نظيف مكتبة الكايباد 4*4
#include <Keypad.h>
هنا نظيف مكتبة حساس الرطوبة والحرارةdht11
#include
<dht.h>
هنا
نظيف مكتبة الآذان و تعاريف بالأرردوينو ليؤذن في الوقت المحدد حسب منطقتنا
#include
"PrayerTimes.h"
double
times[sizeof(TimeName)/sizeof(char*)];
هنا
نظيف مكتبة الذاكرة الداخلية لتسجيل التحذيرات للعودة لها لاحقا من الهاتف او
واجهة العرض بالمزرعة واسفلها كود اظهار
التحذيرات المخزنة للعرض
//لتسجيل التحذيرات
#include <EEPROM.h>
//لعرض w المسجل في 500
char
y [14] ;
تأخيرات في
الزمن
هنا
نظيف زمن لكي يسخن حساس الغاز ثم يبدا العمل بعدها كي لايعطينا قرائة خاطئة وهو
بارد
//لتأخير حساسات الغاز لتسخن ولا تقطع
// الكهربا عند عودته دون ديلاي
unsigned long T1=0;
هنا
نظيف كود لنط ضوء التحذير (البرتقالي) أي يصبح يغمز (ينطفأ ويشتعل) للتحذير في
حالة وجود تحذيرات
bool x=0;
unsigned long T2=0;
هنا
نظيف تأخيرات مختلفة
//مواقيت الإيميل
int period_K = 6000;
unsigned long time_now_K = 0;
int period_P = 30000;
unsigned long time_now_P = 0;
int period_d = 30000;
unsigned long time_now_d = 0;
هنا
نظيف تأخير في زمن بدا عمل كود الضوء الخارجي
//تأخير
عمل الضوء Lx
const unsigned long Min_Lx = 15 * 60 * 1000UL;
static unsigned long time_now_Lx = 0 - Min_Lx;
هنا
نظيف تأخير 30ثانية في زمن عمل حساسات الغاز حتى تسخن
int period_Gs = 30000;
unsigned long time_now_Gs = 0;
int period_Gi = 30000;
unsigned long time_now_Gi = 0;
هنا
نظيف تأخير 30ثانية في زمن عمل حساس الحرارة الداخلية للمستودع
int period_Ti = 30000;
unsigned long time_now_Ti = 0;
هنا نظيف تأخير 30ثانية في زمن
عمل حساس الحرارة الخارجية للمستودع
int period_Tx = 30000;
unsigned long time_now_Tx = 0;
هنا نظيف تأخير 30ثانية في زمن
عمل حساس حرارة ماء المنظومة
int period_Te = 30000;
unsigned long time_now_Te = 0;
هنا نظيف تأخير 30دقيقة في زمن
عمل ريلاي السخانات حتى نظمن الإستقرار وعدم تشغيل وإطفاء السخانات المتكررحسب
قراءات الحساس فتحدث مشاكل أي نترك الماء يبرد لنصف ساعة ثم نشغل السخانات وهكذا
إذا كان الجو بارد
//تأخير
عمل الCh
const unsigned long Min_Ch = 30 * 60 * 1000UL; //تاخير ب1/2 سا
static unsigned long time_now_Ch = 0 - Min_Ch;
هنا
نظيف تأخير 30ثانية في زمن عمل حساس حرارة
صندوق الكهرباء حتى لاتشغل وتطفأ المراوح باستمرار لضمان إستقرار في القراءات
والأداء...
int period_Ts = 30000;
unsigned long time_now_Ts = 0;
هنا نظيف تأخير 30ثانية في زمن
عمل محرك الكهرباء المسؤول عن إطفاء كهرباء المستودع بالقاطع الرئيسي في حالة وجود
خطر حريق غازات...
int period_M = 30000;
unsigned long time_now_M = 0;
هنا نظيف تأخير 5ثانية في زمن
عمل الإلتراسونيك لضمان عمله واستقرار قرائاته
int period_Ult = 5000;
unsigned long time_now_Ult = 0;
هنا نظيف تأخير 30ثانية في زمن
عمل عرض درجة الحرارة
int period_C = 30000;
unsigned long time_now_C = 0;
هنا نظيف تأخير 30ثانية في زمن
عمل حساس مستوى الماء
int period_L = 30000;
unsigned long time_now_L = 0;
هنا نظيف تأخير
10ثانية في زمن عمل التحذير
int period_Wr = 10000;
unsigned long time_now_Wr = 0;
هنا
نظيف تأخير 10ثانية في زمن عرض السيريال مونيتور للقدرة على قرائة البيانات
بالكومبيوتر بروية
int period_Serial = 10000;
unsigned long time_now_Serial = 0;
تعاريف المداخل المختلفة وبينات توصيلها
هنا
نظيف تعاريف الساعة الحقيقية التوقيت اليوم
الشهر السنة الثواني الساعات والدقائق ..real time
//تعاريف الساعة
DS3231 rtc(SDA, SCL);
Time T;
int Hor;
int Min;
int Sec;
int Jour;
int Mois;
int Annee;
هنا
نظيف تعاريف الشاشتين ببينات التوصيل
//تعاريف الشاشة
LiquidCrystal lcd1(A5, 49, 48, 47, 46, 45);
LiquidCrystal lcd2(44, 43, 42, 41, 40, 39);
هنا
نظيف تعاريف بينات توصيل الكايباد keypad
4*4
//تعاريف الكايباد
const byte ROWS = 4;
const byte COLS = 4;
char keys[ROWS][COLS] = {
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}};
byte rowPins[ROWS] = { 4, 5, 6, 7 };
byte colPins[COLS] = { 8, 11, 12 , 13};
Keypad kpd = Keypad(
makeKeymap(keys), rowPins, colPins, ROWS, COLS );
هنا
نظيف تعاريف بينات المداخل...
// تعريف المداخل المستعملة
نظافة الماء ec
او الناقلية
int sensor_pin_c = A8;
int C ;
حساس مستوى الماء للاحواض
int sensorPin_L = A7;
int L ;
درجة الحرارة والرطوبة الداخلية
int sensorPin_Ti = A10;
dht DHTi;
درجة الحرارة والرطوبة الخارجية
int sensorPin_Tx = A11;
dht DHTx;
درجة حرارة الصندوق الكهربائي
int sensorPin_Ts = A14;
dht DHTs;
درجة حرارة الماء
int sensorPin_Te = A9;
int Vo;
float RR1 = 10000;
float logRR2, RR2, TT, Te;
float c1 = 1.009249522e-03, c2 = 2.378405444e-04, c3 = 2.019202697e-07;
حساس الغاز للصندوق الكهربائي
int sensorPin_Gs = A13;
int Gs;
حساس الغاز لداخل المستودع
int sensorPin_Gi = A12;
int Gi;
حساس الضوء الخارجي للمستودع
int sensorPin_D = A15 ;
int D ;
حساس حامضية الماء ph
int sensorPin_P = A6 ;
int P ;
حساس الالتراسونيك
const int trigPin = 2; //هذا مخرج
const int echoPin = 14; //هذا مدخل
long duration;
int distance;
هذا الزر في مكان الفلوتور
(حساس مستوى الماء للخزان اسفل النباتات لتشغيل المضخة عند عودة الماء وامتلائه)
عند الضغط= مستوى عالي والعكس... رمزه بالكود بالأسفل .T1 T0
int B_Wt = 28 ;
زر السويتش الرئيسي
int B_auto = 27 ;
int B_mn = 26 ;
هذا لإنشاء إختصار للحساسات
int sensor[
]={sensor_pin_c,sensorPin_L,sensorPin_Ti,sensorPin_Tx,sensorPin_Ts,
sensorPin_Te,sensorPin_Gs,sensorPin_Gi,sensorPin_D,sensorPin_P,
B_Wt,B_auto,B_mn};
تعاريف المخارج المختلفة وبينات توصيلها
// تعريف المخارج المستعملة
int Z=3 ,Led_auto=25 ,Led_mn=24 ,Led_wr=23 ,F=22 ;
int M = 19 ,Q= 18 ,R1=17 ,R2=16
,R3=15;
int Li=38 ,Lx=37
,Lm=36 ,Fd=35 ,Wt=34;
int Vn=33 ,Fn=32
,Ch=31 ,An=30 ,Ox=29;
هذا لإنشاء إختصار للمخارج
int sortee[
]={Z,Led_auto,Led_mn,Led_wr,F,M,Q,R1,R2,R3,Li,Lx,Lm,
Fd,Wt,Vn,Fn,Ch,An,Ox};
تعريف لتشغيل لاد الويفي ولاد
اظهار ان الجهاز يعمل
int On = A3;
int Wifi = A4;
صنع صوت
const int Sound1[8] = { 131, 175,
262, 349, 523, 698, 1047, 1397};
byte Flesh1[8] = {
B10000,
B11000,
B11100,
B11111,
B11110,
B11100,
B11000,
B10000};
byte Flesh2[8] = {
B00000,
B00000,
B11111,
B11111,
B11111,
B11111,
B00000,
B00000};
byte Temp[8] = {
B01100,
B01100,
B01100,
B01100,
B01110,
B10001,
B10001,
B01110};
byte Hmd[8] = {
B00000,
B00100,
B00100,
B01110,
B11111,
B11111,
B01110,
B00000};
byte Ard[8] = {
B01110,
B11011,
B10001,
B01010,
B01110,
B11011,
B11011,
B01110};
byte Adn_fsl[8] = {
B00001,
B00001,
B00001,
B00001,
B00001,
B00001,
B00001,
B00001};
تعاريف لتشغيل تطبيق remotXY على الهاتف
الذكي حين فتحه ولابد من وجود مكتبة remoteXY
// RemoteXY select connection mode
and include library
#define
REMOTEXY_MODE__ETHERNET_LIB_CLOUD
#include <Ethernet.h>
/* Ethernet shield used pins: 10(SS)
*/
#include <SPI.h>
/* SPI interface used pins: 51(MOSI),
50(MISO), 52(SCK) */
#include <RemoteXY.h>
// RemoteXY connection settings
#define REMOTEXY_ETHERNET_MAC
"DE:AD:BE:EF:EF:ED"
#define REMOTEXY_CLOUD_SERVER
"cloud.remotexy.com"
#define REMOTEXY_CLOUD_PORT 6376
#define REMOTEXY_CLOUD_TOKEN
"702182956c38c4f57481e0666f797003"
// RemoteXY configurate
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =
{ 255,4,0,203,0,39,5,8,24,5,
130,0,-1,88,65,16,0,25,130,0,
-1,-3,65,9,0,25,130,0,30,71,
32,14,2,187,130,0,1,71,29,14,
2,187,2,1,3,90,17,7,2,133,
26,31,31,79,78,0,79,70,70,0,
65,36,19,7,5,5,2,129,0,19,
12,7,3,2,31,77,97,110,62,0,
65,34,19,16,5,5,2,65,34,19,
25,5,5,2,65,36,28,7,5,5,
2,65,34,28,16,5,5,2,65,34,
29,25,5,5,2,65,34,37,7,5,
5,2,65,34,37,16,5,5,2,65,
34,37,25,5,5,2,65,34,2,21,
5,5,2,65,34,2,31,5,5,2,
65,34,2,41,5,5,2,65,34,2,
51,5,5,2,65,34,2,61,5,5,
2,65,34,56,21,5,5,2,65,34,
56,31,5,5,2,65,34,56,41,5,
5,2,65,34,56,51,5,5,2,65,
34,56,61,5,5,2,129,0,28,12,
5,3,2,31,87,114,62,0,129,0,
36,12,8,3,2,31,65,117,116,111,
62,0,129,0,20,21,5,3,2,31,
70,62,0,129,0,29,21,6,3,2,
31,77,62,0,129,0,38,21,6,3,
2,31,81,62,0,129,0,19,30,6,
3,2,31,82,49,62,0,129,0,29,
30,6,3,2,31,82,50,62,0,129,
0,37,30,6,3,2,31,82,51,62,
0,129,0,3,18,4,3,2,31,76,
105,62,0,129,0,2,28,5,3,2,
31,76,120,62,0,129,0,2,38,6,
3,2,31,76,109,62,0,129,0,2,
48,5,3,2,31,70,100,62,0,129,
0,2,58,5,3,2,31,87,116,62,
0,129,0,56,18,5,3,2,31,86,
110,62,0,129,0,56,28,5,3,2,
31,70,110,62,0,129,0,56,38,5,
3,2,31,67,104,62,0,129,0,56,
48,5,3,2,31,65,110,62,0,129,
0,56,58,5,3,2,31,79,120,62,
0,67,1,1,72,3,3,2,31,26,
3,67,1,5,72,3,3,2,31,26,
3,67,1,9,72,3,3,2,31,26,
3,67,1,15,72,3,3,2,31,26,
3,67,1,19,72,3,3,2,31,26,
3,67,1,22,72,6,3,2,31,26,
5,129,0,4,72,1,3,2,31,58,
0,129,0,8,72,1,3,2,31,58,
0,129,0,18,72,1,3,2,31,46,
0,129,0,22,72,1,3,2,31,46,
0,129,0,38,75,3,3,2,31,71,
105,0,67,1,41,75,3,3,2,31,
26,3,129,0,45,75,4,3,2,31,
71,115,0,67,1,48,75,4,3,2,
31,26,3,129,0,34,72,2,3,2,
31,84,0,67,1,35,72,3,3,2,
31,26,2,129,0,40,81,2,3,2,
31,62,0,129,0,53,75,2,3,2,
31,85,0,67,1,54,75,6,3,2,
31,26,4,129,0,32,75,2,3,2,
31,83,0,67,1,33,75,4,3,2,
31,26,3,129,0,2,75,1,3,2,
31,105,0,67,1,3,75,3,3,2,
31,26,3,129,0,6,75,1,3,2,
31,40,0,67,1,7,75,3,3,2,
31,26,3,129,0,10,75,1,3,2,
31,41,0,129,0,17,75,1,3,2,
31,40,0,129,0,21,75,1,3,2,
31,41,0,67,1,14,75,3,3,2,
31,26,3,67,1,18,75,3,3,2,
31,26,3,129,0,23,75,2,3,2,
31,101,0,67,1,24,75,4,3,2,
31,26,3,67,1,31,81,4,3,2,
31,26,6,67,1,35,81,4,3,2,
31,26,4,67,1,36,78,5,3,2,
31,26,3,67,1,31,78,5,3,2,
31,26,3,67,1,1,78,5,3,2,
31,26,5,67,1,6,78,5,3,2,
31,26,5,67,1,12,78,5,3,2,
31,26,5,67,1,18,78,5,3,2,
31,26,5,67,1,23,78,5,3,2,
31,26,5,67,1,1,81,5,3,2,
31,26,5,67,1,6,81,5,3,2,
31,26,5,67,1,12,81,5,3,2,
31,26,5,67,1,18,81,5,3,2,
31,26,5,67,1,23,81,5,3,2,
31,26,5,129,0,44,72,2,3,2,
31,67,0,67,1,45,72,4,3,2,
31,26,3,67,1,40,72,3,3,2,
31,26,3,129,0,39,72,2,3,2,
31,76,0,129,0,56,72,2,3,2,
31,68,0,67,1,57,72,6,3,2,
31,26,4,67,1,51,72,4,3,2,
31,26,3,67,1,59,75,3,3,2,
31,26,2,67,1,47,78,5,3,2,
31,26,4,67,0,42,81,20,3,2,
31,26,14,129,0,19,2,12,3,0,
27,65,114,100,117,105,110,111,0,129,
0,32,2,11,3,0,27,67,111,110,
116,114,111,108,0,129,0,11,68,8,
3,2,27,76,67,68,49,0,129,0,
42,68,8,3,2,27,76,67,68,50,
0,131,1,-1,1,15,5,1,132,31,
80,97,103,101,49,0,131,0,47,1,
15,5,2,132,31,80,97,103,101,50,
0,65,36,18,15,25,25,1,129,0,
19,9,24,6,1,27,87,97,114,110,
105,110,103,0,2,1,22,90,17,6,
1,133,26,31,31,79,78,0,79,70,
70,0,67,5,22,70,16,5,1,31,
26,8,67,5,11,42,41,7,1,31,
26,14,65,34,25,76,10,10,1,2,
1,23,90,17,7,2,133,26,31,31,
79,78,0,79,70,70,0,2,1,43,
90,17,7,2,133,26,31,31,79,78,
0,79,70,70,0,129,0,3,97,17,
3,2,27,115,119,105,116,99,104,49,
95,40,76,105,41,0,129,0,24,97,
17,3,2,27,115,119,105,116,99,104,
50,95,40,77,41,0,129,0,44,97,
15,3,2,27,115,119,105,116,99,104,
51,95,40,81,41,0,129,0,22,97,
19,3,1,27,115,119,105,116,99,104,
49,48,95,40,76,105,41,0,129,0,
12,75,2,3,2,31,120,0,129,0,
50,72,2,3,2,31,80,0,129,0,
32,72,2,3,2,31,61,0,67,1,
41,78,5,3,2,31,26,3,67,1,
52,78,5,3,2,31,26,4,67,1,
57,78,5,3,2,31,26,4,130,0,
-1,52,64,3,1,25 };
// this structure defines all the
variables of your control interface
struct {
// input variable
uint8_t switch_1; // =1 if switch ON and =0 if OFF
uint8_t switch_10; // =1 if switch ON and =0 if OFF
uint8_t switch_2; // =1 if switch ON and =0 if OFF
uint8_t switch_3; // =1 if switch ON and =0 if OFF
// output variable
uint8_t led_Man_r; // =0..255 LED Red brightness
uint8_t led_F_g; // =0..255 LED Green brightness
uint8_t led_R1_g; // =0..255 LED Green brightness
uint8_t led_W_r; // =0..255 LED Red brightness
uint8_t led_M_g; // =0..255 LED Green brightness
uint8_t led_R2_g; // =0..255 LED Green brightness
uint8_t led_Auto_g; // =0..255 LED Green brightness
uint8_t led_Q_g; // =0..255 LED Green brightness
uint8_t led_R3_g; // =0..255 LED Green brightness
uint8_t led_Li_g; // =0..255 LED Green brightness
uint8_t led_Lx_g; // =0..255 LED Green brightness
uint8_t led_Lm_g; // =0..255 LED Green brightness
uint8_t led_Fd_g; // =0..255 LED Green brightness
uint8_t led_Wt_g; // =0..255 LED Green brightness
uint8_t led_Vn_g; // =0..255 LED Green brightness
uint8_t led_Fn_g; // =0..255 LED Green brightness
uint8_t led_Ch_g; // =0..255 LED Green brightness
uint8_t led_An_g; // =0..255 LED Green brightness
uint8_t led_Ox_g; // =0..255 LED Green brightness
char text_HOR[3]; // string UTF8
end zero
char text_MIN[3]; // string UTF8
end zero
char text_SEC[3]; // string UTF8
end zero
char text_JOUR[3]; // string UTF8
end zero
char text_MOIS[3]; // string UTF8
end zero
char text_ANNEE[5]; // string
UTF8 end zero
char text_Gi[3]; // string UTF8
end zero
char text_Gs[3]; // string UTF8
end zero
char text_T[2]; // string UTF8
end zero
char text_U[4]; // string UTF8
end zero
char text_Ts[3]; // string UTF8
end zero
char text_Ti[3]; // string UTF8
end zero
char text_Hi[3]; // string UTF8
end zero
char text_Tx[3]; // string UTF8
end zero
char text_Hx[3]; // string UTF8
end zero
char text_Te[3]; // string UTF8
end zero
char text_At[6]; // string UTF8
end zero
char text_W[4]; // string UTF8
end zero
char text_M[3]; // string UTF8
end zero
char text_F[3]; // string UTF8
end zero
char text_Li[5]; // string UTF8
end zero
char text_Lx[5]; // string UTF8
end zero
char text_Lm[5]; // string UTF8
end zero
char text_Fd[5]; // string UTF8
end zero
char text_Wt[5]; // string UTF8
end zero
char text_Vn[5]; // string UTF8
end zero
char text_Fn[5]; // string UTF8
end zero
char text_Ch[5]; // string UTF8
end zero
char text_An[5]; // string UTF8
end zero
char text_Ox[5]; // string UTF8
end zero
char text_C[3]; // string UTF8
end zero
char text_L[3]; // string UTF8
end zero
char text_D[4]; // string UTF8
end zero
char text_P[3]; // string UTF8
end zero
char text_K[2]; // string UTF8
end zero
char text_R1[4]; // string UTF8
end zero
char text_WNoThink[14]; // string
UTF8 end zero
uint8_t led_W0_r; // =0..255 LED Red brightness
char text_SEC0[8]; // string UTF8
end zero
char text_WNoThink0[14]; //
string UTF8 end zero
uint8_t led_0_g; // =0..255 LED Green brightness
char text_Q[3]; // string UTF8
end zero
char text_R2[4]; // string UTF8
end zero
char text_R3[4]; // string UTF8
end zero
// other variable
uint8_t connect_flag; // =1 if
wire connected, else =0
} RemoteXY;
#pragma pack(pop)
/////////////////////////////////////////////
// END RemoteXY include //
/////////////////////////////////////////////
تعاريف مخارج ازرار افتراضية
للتحكم بتطبيق الremotXY من الهاتف
#define
PIN_SWITCH_1 A0
#define PIN_SWITCH_10 A0
#define PIN_SWITCH_2 A1
#define PIN_SWITCH_3 A2
هنا اظافي ليتم التواصل مع الويفي وليعرض بعد اتمام الاتصال
حالته باللاد المخصص لذلك
byte mac[] = { 0xDE, 0xAD, 0xBE,
0xEF, 0xFE, 0xED };
byte ip[] = { 192, 168, 8, 101 };
#define Site
"http://remotexy.com/"
EthernetClient client;
===========================================
للتنقل السريع بين أجزاء الموضوع إستخدم الروابط بالأسفل...
إذا أعجبك الموضوع يمكنك مشاهدة مواضيع مشابهة بقسم الأردوينو لاتقل أهمية إضغط هنا للإنتقال لقسم الأردوينو.
ليصلك جديدنا تابعنا على صفحاتنا الاجتماعية: الفيسبوك, التويتر ,tumblr, pinterest, linkedin, instagram