какие количества команд? Это вы про ключевые слова языка типа for или while? - их же вроде не более тридцати всего… Или вы что имеете в виду?
пусть даже и 30 , они пока для меня как китайские иероглифы, самые первые что законспектировал мен уже хотя бы о чем то говорят, и то не все , вернее пока не понимаю куда и для чего их писать, вот даже INT и VOID возвращает значение и не возвращает, какое значение , куда возвращает , зачем , как это используется в каких случаях, как применить правильно. вот эти две функции у меня столько вопросов подняли, ну да ладно , решил что прочитаю для начала , ознакомлюсь, но и тут буду поглядывать , может что кто нибудь посоветует
Кнопка и светодиод.
https://роботехника18.рф/включение-светодиода-кнопкой/
…Получилось?
Я вот наблюдаю за темой и знаете какой вывод у меня получается? А такой, что за все это многочисленное количество сообщений с «препирательствами», «научите-покажите» и так далее, если бы Сергей начал читать книгу (ссылку выше давал) которую я рекомендовал, то как минимум он уже точно знал что такое «типы данных», «переменные» и «константы» и чем «сравнение» отличается от «присвоения». А это уже процентов 30 полезных знаний на пути к программированию самостоятельно.
Ну если не хочется, то лично мне - пофиг. «На нет и суда нет».
А букв в русском языке еще больше - аж целых 33. Да еще каждая может быть как заглавной, так и строчной - а это уже 66. Потом всякие цифры, знаки препинания и пр.
Вывод: освоить азбуку совершенно невозможно!
Да этот вывод напрашивался еще на первой полусотне сообщений. Просто есть два типа новичков - те которые приходят научиться, и другие, которым важнее поговорить об этом.
Из темы получилась отличная болталка - поговорили и про сварку, и про пчел, и про токарное дело… Ну и про программирование и электронику… как же без этого.
Только характерно, что про программирование разговор шел ровно в том же ключе, как про пчел или про сварку - в форме пустой болтовни в курилке.
Так что бы говорить с вопрошающим о программировании , нужно что бы он хоть что то об этом знал.
Тут же типичный попрошайка кода.
Ему нужно приспособу нахаляву.
На крайняк говно из кубиков
уроки от гайвера может понятней будут Уроки Arduino [AlexGyver] v1.0.pdf — Яндекс Диск
или на его сайте Уроки Ардуино и программирования | AlexGyver
ага, а потом ТС придет с Г…кодом с вопросами почему не работает, а мы его пошлем на форум Гайвера, круговорот идей…
ну азы у него можно получить? буду смотреть с разных мест - чему то ведь должен научиться. раз полез -
спасибо , если там будет понятнее - почему бы и не попытаться
нет - я не код прошу, если бы мне нужен был код, я бы заказал его , как делал на прошлый проект , сейчас скину его если интересно
/*
датчик DS18B20 20 пин
*/
#define REMOTEXY_MODE__ETHERNET_LIB_CLOUD
#include <Ethernet.h>
#include <SPI.h>
#include <RemoteXY.h>
#include "DHT_NEW.h"
#include <OneWire.h>
#include <EEPROM.h>
DHT _dht2;
DHT _dht3;
DHT _dht1;
DHT _dht4;
#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 "e04c287ed8e35c62c92326378a671400"
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] = {20, 66, 101, 3, 8, 27, 5, 1, 1, 4, 18, 12, 12, 2, 2, 31, 88, 0, 1, 1, 19, 18, 12, 12, 2, 2, 31, 88, 0, 1, 1, 34, 18, 12, 12, 2, 2, 31, 88, 0, 1, 1, 49, 18, 12, 12, 2, 2, 31, 88, 0, 7, 21, 1, 69, 28, 8, 1, 96, 26, 2, 7, 21, 34, 69, 28, 8, 1, 96, 26, 2, 67, 5, 0, 31, 31, 7, 1, 166, 26, 11, 67, 5, 0, 43, 31, 7, 1, 166, 26, 11, 67, 5, 32, 31, 31, 7, 1, 166, 26, 11, 67, 5, 32, 43, 31, 7, 1, 166, 26, 11, 67, 5, 1, 57, 28, 8, 1, 166, 26, 3, 129, 0, 5, 28, 20, 3, 1, 31, 49, 32, 209, 130, 208, 181, 208, 188, 208, 191, 208, 181, 209, 128, 208, 176, 209, 130, 209, 131, 209, 128, 208, 176, 0, 129, 0, 5, 40, 20, 3, 1, 31, 50, 32, 209, 130, 208, 181, 208, 188, 208, 191, 208, 181, 209, 128, 208, 176, 209, 130, 209, 131, 209, 128, 208, 176, 0, 129, 0, 38, 28, 20, 3, 1, 31, 51, 32, 209, 130, 208, 181, 208, 188, 208, 191, 208, 181, 209, 128, 208, 176, 209, 130, 209, 131, 209, 128, 208, 176, 0, 129, 0, 39, 40, 20, 3, 1, 31, 52, 32, 209, 130, 208, 181, 208, 188, 208, 191, 208, 181, 209, 128, 208, 176, 209, 130, 209, 131, 209, 128, 208, 176, 0, 129, 0, 13, 14, 35, 10, 1, 31, 208, 159, 208, 190, 208, 179, 209, 128, 208, 181, 208, 177, 0, 67, 5, 34, 57, 28, 8, 1, 166, 26, 3, 65, 44, 4, 18, 12, 12, 2, 65, 44, 19, 18, 12, 12, 2, 65, 44, 34, 18, 12, 12, 2, 65, 44, 49, 18, 12, 12, 2, 129, 0, 8, 21, 3, 6, 2, 31, 49, 0, 129, 0, 24, 21, 3, 6, 2, 31, 50, 0, 129, 0, 39, 21, 3, 6, 2, 31, 51, 0, 129, 0, 53, 21, 3, 6, 2, 31, 52, 0, 129, 0, 3, 54, 23, 3, 1, 31, 208, 163, 209, 129, 209, 130, 45, 208, 189, 208, 176, 209, 143, 32, 209, 130, 208, 181, 208, 188, 208, 191, 32, 85, 80, 0, 129, 0, 34, 54, 28, 3, 1, 31, 208, 163, 209, 129, 209, 130, 45, 208, 189, 208, 176, 209, 143, 32, 209, 130, 208, 181, 208, 188, 208, 191, 32, 68, 79, 87, 78, 0, 129, 0, 4, 66, 21, 3, 1, 31, 208, 163, 209, 129, 209, 130, 45, 208, 186, 208, 176, 32, 209, 130, 208, 181, 208, 188, 208, 191, 32, 85, 80, 0, 129, 0, 35, 66, 26, 3, 1, 31, 208, 163, 209, 129, 209, 130, 45, 208, 186, 208, 176, 32, 209, 130, 208, 181, 208, 188, 208, 191, 32, 68, 79, 87, 78, 0, 131, 1, 2, 1, 28, 8, 1, 2, 31, 208, 147, 208, 187, 208, 176, 208, 178, 208, 189, 208, 176, 209, 143, 0, 131, 0, 33, 1, 28, 8, 2, 2, 31, 208, 160, 208, 181, 208, 187, 208, 181, 0, 1, 1, 4, 33, 12, 12, 2, 2, 31, 88, 0, 1, 1, 19, 33, 12, 12, 2, 2, 31, 88, 0, 1, 1, 34, 33, 12, 12, 2, 2, 31, 88, 0, 65, 44, 4, 33, 12, 12, 2, 65, 44, 19, 33, 12, 12, 2, 65, 44, 34, 33, 12, 12, 2, 129, 0, 9, 36, 3, 6, 2, 31, 53, 0, 129, 0, 24, 36, 3, 6, 2, 31, 54, 0, 129, 0, 38, 36, 3, 6, 2, 31, 55, 0, 1, 1, 49, 33, 12, 12, 2, 2, 31, 88, 0, 1, 1, 4, 48, 12, 12, 2, 2, 31, 88, 0, 1, 1, 19, 48, 12, 12, 2, 2, 31, 88, 0, 65, 44, 49, 33, 12, 12, 2, 65, 44, 4, 48, 12, 12, 2, 65, 44, 19, 48, 12, 12, 2, 129, 0, 54, 36, 3, 6, 2, 31, 56, 0, 129, 0, 9, 51, 3, 6, 2, 31, 57, 0, 129, 0, 21, 52, 7, 6, 2, 31, 49, 48, 0, 1, 1, 34, 48, 12, 12, 2, 2, 31, 88, 0, 65, 44, 34, 48, 12, 12, 2, 129, 0, 36, 52, 6, 6, 2, 31, 49, 49, 0, 1, 1, 49, 48, 12, 12, 2, 2, 31, 88, 0, 65, 44, 49, 48, 12, 12, 2, 129, 0, 51, 52, 7, 6, 2, 31, 49, 50, 0, 1, 1, 4, 63, 12, 12, 2, 2, 31, 88, 0, 65, 44, 4, 63, 12, 12, 2, 129, 0, 7, 67, 7, 6, 2, 31, 49, 51, 0, 1, 1, 19, 63, 12, 12, 2, 2, 31, 88, 0, 65, 44, 19, 63, 12, 12, 2, 129, 0, 21, 67, 7, 6, 2, 31, 49, 52, 0, 1, 1, 34, 63, 12, 12, 2, 2, 31, 88, 0, 65, 44, 34, 63, 12, 12, 2, 129, 0, 37, 67, 7, 6, 2, 31, 49, 53, 0, 1, 1, 49, 63, 12, 12, 2, 2, 31, 88, 0, 65, 44, 49, 63, 12, 12, 2, 129, 0, 51, 67, 7, 6, 2, 31, 49, 54, 0};
struct {
unsigned char button_1;
unsigned char button_2;
unsigned char button_3;
unsigned char button_4;
int16_t edit_1;
int16_t edit_2;
unsigned char button_5;
unsigned char button_6;
unsigned char button_7;
unsigned char button_8;
unsigned char button_9;
unsigned char button_10;
unsigned char button_11;
unsigned char button_12;
unsigned char button_13;
unsigned char button_14;
unsigned char button_15;
unsigned char button_16;
char text_1[11];
char text_2[11];
char text_3[11];
char text_4[11];
char text_6[3];
char text_7[3];
unsigned char led_1_r;
unsigned char led_2_r;
unsigned char led_3_r;
unsigned char led_4_r;
unsigned char led_5_r;
unsigned char led_6_r;
unsigned char led_7_r;
unsigned char led_8_r;
unsigned char led_9_r;
unsigned char led_10_r;
unsigned char led_11_r;
unsigned char led_12_r;
unsigned char led_13_r;
unsigned char led_14_r;
unsigned char led_15_r;
unsigned char led_16_r;
unsigned char connect_flag;
} RemoteXY;
#pragma pack(pop)
OneWire _ow20(20);
byte _FLPArray83226250[9];
bool in_207141796_1;
bool out_207141796_1;
byte tmp_207141796_1=2;
bool in_207141796_2;
bool out_207141796_2;
byte tmp_207141796_2=2;
bool in_207141796_3;
bool out_207141796_3;
byte tmp_207141796_3=2;
bool in_207141796_4;
bool out_207141796_4;
byte tmp_207141796_4=2;
bool in_207141796_5;
bool out_207141796_5;
byte tmp_207141796_5=2;
bool in_207141796_6;
bool out_207141796_6;
byte tmp_207141796_6=2;
bool in_207141796_7;
bool out_207141796_7;
byte tmp_207141796_7=2;
bool in_207141796_8;
bool out_207141796_8;
byte tmp_207141796_8=2;
bool in_207141796_9;
bool out_207141796_9;
byte tmp_207141796_9=2;
bool in_207141796_10;
bool out_207141796_10;
byte tmp_207141796_10=2;
bool in_207141796_11;
bool out_207141796_11;
byte tmp_207141796_11=2;
bool in_207141796_12;
bool out_207141796_12;
byte tmp_207141796_12=2;
bool in_207141796_13;
bool out_207141796_13;
byte tmp_207141796_13=2;
bool in_207141796_14;
bool out_207141796_14;
byte tmp_207141796_14=2;
bool in_207141796_15;
bool out_207141796_15;
byte tmp_207141796_15=2;
bool in_207141796_16;
bool out_207141796_16;
byte tmp_207141796_16=2;
bool _SEEPR3OSN = 0;
bool _SEEPR2OSN = 0;
bool _trgt4 = 0;
bool _trgt4I = 0;
int _swi16;
bool _SEEPR1OSN = 0;
int _swi1;
int _swi11;
int _swi15;
unsigned long _dht4LRT = 0UL;
unsigned long _dht4Tti = 0UL;
int _swi6;
int _swi10;
bool _SEEPR18OSN = 0;
bool _trgt16 = 0;
bool _trgt16I = 0;
bool _SEEPR12OSN = 0;
bool _SEEPR11OSN = 0;
bool _sowb1_needScan = 0;
bool _sowb1_ost = 0;
bool _sowb1_FLPArray83226250 = 0;
bool _SEEPR10OSN = 0;
bool _trgt8 = 0;
bool _trgt8I = 0;
bool _trgt5 = 0;
bool _trgt5I = 0;
bool _trgs1 = 0;
bool _changeNumber1_Out = 0;
int _changeNumber1_OLV;
bool _swi5;
bool _swi18;
bool _SEEPR4OSN = 0;
bool _trgt1 = 0;
bool _trgt1I = 0;
int _swi3;
int _swi17;
int _swi2;
unsigned long _dht2LRT = 0UL;
unsigned long _dht2Tti = 0UL;
int _swi8;
int _swi12;
unsigned long _dht1LRT = 0UL;
unsigned long _dht1Tti = 0UL;
int _swi7;
bool _SEEPR16OSN = 0;
bool _trgs2 = 0;
bool _trgt14 = 0;
bool _trgt14I = 0;
bool _SEEPR14OSN = 0;
bool _tim1I = 0;
bool _tim1O = 0;
unsigned long _tim1P = 0UL;
bool _SEEPR13OSN = 0;
unsigned long _d18x2x1Tti = 0UL;
float _d18x2x1O = 0.00;
bool _trgt11 = 0;
bool _trgt11I = 0;
bool _trgt9 = 0;
bool _trgt9I = 0;
bool _trgt6 = 0;
bool _trgt6I = 0;
bool _changeNumber2_Out = 0;
int _changeNumber2_OLV;
bool _trgt3 = 0;
bool _trgt3I = 0;
bool _trgt2 = 0;
bool _trgt2I = 0;
int _swi4;
int _swi14;
unsigned long _dht3LRT = 0UL;
unsigned long _dht3Tti = 0UL;
int _swi9;
int _swi13;
bool _SEEPR17OSN = 0;
bool _trgt15 = 0;
bool _trgt15I = 0;
bool _trgt13 = 0;
bool _trgt13I = 0;
bool _SEEPR15OSN = 0;
bool _trgt12 = 0;
bool _trgt12I = 0;
bool _trgt10 = 0;
bool _trgt10I = 0;
bool _SEEPR9OSN = 0;
bool _SEEPR8OSN = 0;
bool _trgt7 = 0;
bool _trgt7I = 0;
bool _SEEPR7OSN = 0;
bool _SEEPR6OSN = 0;
bool _SEEPR5OSN = 0;
void setup()
{
RemoteXY_Init ();
pinMode(22, OUTPUT);
pinMode(23, OUTPUT);
pinMode(24, OUTPUT);
pinMode(25, OUTPUT);
pinMode(26, OUTPUT);
pinMode(27, OUTPUT);
pinMode(28, OUTPUT);
pinMode(29, OUTPUT);
pinMode(30, OUTPUT);
pinMode(31, OUTPUT);
pinMode(32, OUTPUT);
pinMode(33, OUTPUT);
pinMode(34, OUTPUT);
pinMode(35, OUTPUT);
pinMode(36, OUTPUT);
pinMode(37, OUTPUT);
_dht1.setup(2);
_dht1LRT = millis();
_dht1Tti = millis();
_dht2.setup(3);
_dht2LRT = millis();
_dht2Tti = millis();
_dht3.setup(6);
_dht3LRT = millis();
_dht3Tti = millis();
_dht4.setup(5);
_dht4LRT = millis();
_dht4Tti = millis();
}
void loop()
{int _tempVariable_int;
RemoteXY_Handler ();
//Плата:1
bool _tmp1 = (RemoteXY.button_1);
if (_tmp1) { if (! _trgt1I) _trgt1 = ! _trgt1; }
_trgt1I = _tmp1;
in_207141796_1 = _trgt1;
out_207141796_1=0;
if(tmp_207141796_1==2) {tmp_207141796_1=in_207141796_1;}
if(in_207141796_1 != tmp_207141796_1) {out_207141796_1=1; tmp_207141796_1=in_207141796_1;}
if(out_207141796_1){ if(!_SEEPR1OSN){(updateBooleanToEEPROM(0, 0, 0x0, (_trgt1)));
_SEEPR1OSN=1;} }else{ if(_SEEPR1OSN){_SEEPR1OSN=0;}}
bool _tmp2 = (RemoteXY.button_2);
if (_tmp2) { if (! _trgt2I) _trgt2 = ! _trgt2; }
_trgt2I = _tmp2;
in_207141796_2 = _trgt2;
out_207141796_2=0;
if(tmp_207141796_2==2) {tmp_207141796_2=in_207141796_2;}
if(in_207141796_2 != tmp_207141796_2) {out_207141796_2=1; tmp_207141796_2=in_207141796_2;}
if(out_207141796_2){ if(!_SEEPR2OSN){(updateBooleanToEEPROM(0, 1, 0x0, (_trgt2)));
_SEEPR2OSN=1;} }else{ if(_SEEPR2OSN){_SEEPR2OSN=0;}}
in_207141796_9 = _trgt9;
out_207141796_9=0;
if(tmp_207141796_9==2) {tmp_207141796_9=in_207141796_9;}
if(in_207141796_9 != tmp_207141796_9) {out_207141796_9=1; tmp_207141796_9=in_207141796_9;}
if(out_207141796_9){ if(!_SEEPR11OSN){(updateBooleanToEEPROM(1, 0, 0x0, (_trgt9)));
_SEEPR11OSN=1;} }else{ if(_SEEPR11OSN){_SEEPR11OSN=0;}}
bool _tmp9 = (RemoteXY.button_9);
if (_tmp9) { if (! _trgt9I) _trgt9 = ! _trgt9; }
_trgt9I = _tmp9;
if((readBooleanFromEEPROM(0, 1, 0x0)))
{_swi2=255;}
else
{_swi2=0;}
bool _tmp3 = (RemoteXY.button_3);
if (_tmp3) { if (! _trgt3I) _trgt3 = ! _trgt3; }
_trgt3I = _tmp3;
in_207141796_3 = _trgt3;
out_207141796_3=0;
if(tmp_207141796_3==2) {tmp_207141796_3=in_207141796_3;}
if(in_207141796_3 != tmp_207141796_3) {out_207141796_3=1; tmp_207141796_3=in_207141796_3;}
if(out_207141796_3){ if(!_SEEPR3OSN){(updateBooleanToEEPROM(0, 2, 0x0, (_trgt3)));
_SEEPR3OSN=1;} }else{ if(_SEEPR3OSN){_SEEPR3OSN=0;}}
bool _tmp10 = (RemoteXY.button_10);
if (_tmp10) { if (! _trgt10I) _trgt10 = ! _trgt10; }
_trgt10I = _tmp10;
in_207141796_10 = _trgt10;
out_207141796_10=0;
if(tmp_207141796_10==2) {tmp_207141796_10=in_207141796_10;}
if(in_207141796_10 != tmp_207141796_10) {out_207141796_10=1; tmp_207141796_10=in_207141796_10;}
if(out_207141796_10){ if(!_SEEPR12OSN){(updateBooleanToEEPROM(1, 1, 0x0, (_trgt10)));
_SEEPR12OSN=1;} }else{ if(_SEEPR12OSN){_SEEPR12OSN=0;}}
if((readBooleanFromEEPROM(0, 2, 0x0)))
{_swi3=255;}
else
{_swi3=0;}
bool _tmp4 = (RemoteXY.button_4);
if (_tmp4) { if (! _trgt4I) _trgt4 = ! _trgt4; }
_trgt4I = _tmp4;
in_207141796_4 = _trgt4;
out_207141796_4=0;
if(tmp_207141796_4==2) {tmp_207141796_4=in_207141796_4;}
if(in_207141796_4 != tmp_207141796_4) {out_207141796_4=1; tmp_207141796_4=in_207141796_4;}
if(out_207141796_4){ if(!_SEEPR4OSN){(updateBooleanToEEPROM(0, 3, 0x0, (_trgt4)));
_SEEPR4OSN=1;} }else{ if(_SEEPR4OSN){_SEEPR4OSN=0;}}
bool _tmp11 = (RemoteXY.button_11);
if (_tmp11) { if (! _trgt11I) _trgt11 = ! _trgt11; }
_trgt11I = _tmp11;
in_207141796_11 = _trgt11;
out_207141796_11=0;
if(tmp_207141796_11==2) {tmp_207141796_11=in_207141796_11;}
if(in_207141796_11 != tmp_207141796_11) {out_207141796_11=1; tmp_207141796_11=in_207141796_11;}
if(out_207141796_11){ if(!_SEEPR13OSN){(updateBooleanToEEPROM(1, 2, 0x0, (_trgt11)));
_SEEPR13OSN=1;} }else{ if(_SEEPR13OSN){_SEEPR13OSN=0;}}
if((readBooleanFromEEPROM(0, 3, 0x0)))
{_swi4=255;}
else
{_swi4=0;}
if(_changeNumber1_Out){ if(!_SEEPR5OSN){(updateIntegerToEEPROM(2, 0, 0x0, ((RemoteXY.edit_1))));
_SEEPR5OSN=1;} }else{ if(_SEEPR5OSN){_SEEPR5OSN=0;}}
in_207141796_12 = _trgt12;
out_207141796_12=0;
if(tmp_207141796_12==2) {tmp_207141796_12=in_207141796_12;}
if(in_207141796_12 != tmp_207141796_12) {out_207141796_12=1; tmp_207141796_12=in_207141796_12;}
if(out_207141796_12){ if(!_SEEPR14OSN){(updateBooleanToEEPROM(1, 3, 0x0, (_trgt12)));
_SEEPR14OSN=1;} }else{ if(_SEEPR14OSN){_SEEPR14OSN=0;}}
bool _tmp12 = (RemoteXY.button_12);
if (_tmp12) { if (! _trgt12I) _trgt12 = ! _trgt12; }
_trgt12I = _tmp12;
if((readBooleanFromEEPROM(0, 0, 0x0)))
{_swi1=255;}
else
{_swi1=0;}
if(_changeNumber2_Out){ if(!_SEEPR6OSN){(updateIntegerToEEPROM(4, 0, 0x0, ((RemoteXY.edit_2))));
_SEEPR6OSN=1;} }else{ if(_SEEPR6OSN){_SEEPR6OSN=0;}}
bool _tmp13 = (RemoteXY.button_13);
if (_tmp13) { if (! _trgt13I) _trgt13 = ! _trgt13; }
_trgt13I = _tmp13;
in_207141796_13 = _trgt13;
out_207141796_13=0;
if(tmp_207141796_13==2) {tmp_207141796_13=in_207141796_13;}
if(in_207141796_13 != tmp_207141796_13) {out_207141796_13=1; tmp_207141796_13=in_207141796_13;}
if(out_207141796_13){ if(!_SEEPR15OSN){(updateBooleanToEEPROM(1, 4, 0x0, (_trgt13)));
_SEEPR15OSN=1;} }else{ if(_SEEPR15OSN){_SEEPR15OSN=0;}}
bool _tmp5 = (RemoteXY.button_5);
if (_tmp5) { if (! _trgt5I) _trgt5 = ! _trgt5; }
_trgt5I = _tmp5;
in_207141796_5 = _trgt5;
out_207141796_5=0;
if(tmp_207141796_5==2) {tmp_207141796_5=in_207141796_5;}
if(in_207141796_5 != tmp_207141796_5) {out_207141796_5=1; tmp_207141796_5=in_207141796_5;}
if(out_207141796_5){ if(!_SEEPR7OSN){(updateBooleanToEEPROM(0, 4, 0x0, (_trgt5)));
_SEEPR7OSN=1;} }else{ if(_SEEPR7OSN){_SEEPR7OSN=0;}}
in_207141796_14 = _trgt14;
out_207141796_14=0;
if(tmp_207141796_14==2) {tmp_207141796_14=in_207141796_14;}
if(in_207141796_14 != tmp_207141796_14) {out_207141796_14=1; tmp_207141796_14=in_207141796_14;}
if(out_207141796_14){ if(!_SEEPR16OSN){(updateBooleanToEEPROM(1, 5, 0x0, (_trgt14)));
_SEEPR16OSN=1;} }else{ if(_SEEPR16OSN){_SEEPR16OSN=0;}}
if((readBooleanFromEEPROM(0, 4, 0x0)))
{_swi7=255;}
else
{_swi7=0;}
bool _tmp14 = (RemoteXY.button_14);
if (_tmp14) { if (! _trgt14I) _trgt14 = ! _trgt14; }
_trgt14I = _tmp14;
bool _tmp6 = (RemoteXY.button_6);
if (_tmp6) { if (! _trgt6I) _trgt6 = ! _trgt6; }
_trgt6I = _tmp6;
in_207141796_6 = _trgt6;
out_207141796_6=0;
if(tmp_207141796_6==2) {tmp_207141796_6=in_207141796_6;}
if(in_207141796_6 != tmp_207141796_6) {out_207141796_6=1; tmp_207141796_6=in_207141796_6;}
if(out_207141796_6){ if(!_SEEPR8OSN){(updateBooleanToEEPROM(0, 5, 0x0, (_trgt6)));
_SEEPR8OSN=1;} }else{ if(_SEEPR8OSN){_SEEPR8OSN=0;}}
if(((int(_dht1.temperature))) >= ((readIntegerFromEEPROM(2, 0, 0x0)))) _trgs1 = 1;
if(((int(_dht1.temperature))) <= ((readIntegerFromEEPROM(4, 0, 0x0)))) _trgs1 = 0;
if((readBooleanFromEEPROM(0, 0, 0x0)))
{_swi5=_trgs1;}
else
{_swi5=0;}
if((readBooleanFromEEPROM(0, 5, 0x0)))
{_swi8=255;}
else
{_swi8=0;}
bool _tmp15 = (RemoteXY.button_15);
if (_tmp15) { if (! _trgt15I) _trgt15 = ! _trgt15; }
_trgt15I = _tmp15;
in_207141796_15 = _trgt15;
out_207141796_15=0;
if(tmp_207141796_15==2) {tmp_207141796_15=in_207141796_15;}
if(in_207141796_15 != tmp_207141796_15) {out_207141796_15=1; tmp_207141796_15=in_207141796_15;}
if(out_207141796_15){ if(!_SEEPR17OSN){(updateBooleanToEEPROM(1, 6, 0x0, (_trgt15)));
_SEEPR17OSN=1;} }else{ if(_SEEPR17OSN){_SEEPR17OSN=0;}}
bool _tmp7 = (RemoteXY.button_7);
if (_tmp7) { if (! _trgt7I) _trgt7 = ! _trgt7; }
_trgt7I = _tmp7;
in_207141796_7 = _trgt7;
out_207141796_7=0;
if(tmp_207141796_7==2) {tmp_207141796_7=in_207141796_7;}
if(in_207141796_7 != tmp_207141796_7) {out_207141796_7=1; tmp_207141796_7=in_207141796_7;}
if(out_207141796_7){ if(!_SEEPR9OSN){(updateBooleanToEEPROM(0, 6, 0x0, (_trgt7)));
_SEEPR9OSN=1;} }else{ if(_SEEPR9OSN){_SEEPR9OSN=0;}}
if((readBooleanFromEEPROM(0, 6, 0x0)))
{_swi9=255;}
else
{_swi9=0;}
bool _tmp16 = (RemoteXY.button_16);
if (_tmp16) { if (! _trgt16I) _trgt16 = ! _trgt16; }
_trgt16I = _tmp16;
in_207141796_16 = _trgt16;
out_207141796_16=0;
if(tmp_207141796_16==2) {tmp_207141796_16=in_207141796_16;}
if(in_207141796_16 != tmp_207141796_16) {out_207141796_16=1; tmp_207141796_16=in_207141796_16;}
if(out_207141796_16){ if(!_SEEPR18OSN){(updateBooleanToEEPROM(1, 7, 0x0, (_trgt16)));
_SEEPR18OSN=1;} }else{ if(_SEEPR18OSN){_SEEPR18OSN=0;}}
bool _tmp8 = (RemoteXY.button_8);
if (_tmp8) { if (! _trgt8I) _trgt8 = ! _trgt8; }
_trgt8I = _tmp8;
in_207141796_8 = _trgt8;
out_207141796_8=0;
if(tmp_207141796_8==2) {tmp_207141796_8=in_207141796_8;}
if(in_207141796_8 != tmp_207141796_8) {out_207141796_8=1; tmp_207141796_8=in_207141796_8;}
if(out_207141796_8){ if(!_SEEPR10OSN){(updateBooleanToEEPROM(0, 7, 0x0, (_trgt8)));
_SEEPR10OSN=1;} }else{ if(_SEEPR10OSN){_SEEPR10OSN=0;}}
if((readBooleanFromEEPROM(0, 7, 0x0)))
{_swi6=255;}
else
{_swi6=0;}
if((readBooleanFromEEPROM(1, 0, 0x0)))
{_swi11=255;}
else
{_swi11=0;}
if((readBooleanFromEEPROM(1, 1, 0x0)))
{_swi12=255;}
else
{_swi12=0;}
if((readBooleanFromEEPROM(1, 2, 0x0)))
{_swi13=255;}
else
{_swi13=0;}
if((readBooleanFromEEPROM(1, 3, 0x0)))
{_swi10=255;}
else
{_swi10=0;}
if((readBooleanFromEEPROM(1, 4, 0x0)))
{_swi15=255;}
else
{_swi15=0;}
if((readBooleanFromEEPROM(1, 5, 0x0)))
{_swi16=255;}
else
{_swi16=0;}
if((readBooleanFromEEPROM(1, 6, 0x0)))
{_swi17=255;}
else
{_swi17=0;}
if (1)
{ if (_tim1I) { if (_isTimer(_tim1P, 5000)) {_tim1O = 1;}} else {_tim1I =1; _tim1P = millis();}} else {_tim1O = 0; _tim1I = 0;}
if(((int((_d18x2x1O)))) >= (45)) _trgs2 = 1;
if(((int((_d18x2x1O)))) <= (40)) _trgs2 = 0;
if((readBooleanFromEEPROM(1, 7, 0x0)))
{_swi18=1;}
else
{_swi18=_trgs2;}
if(_isTimer(_d18x2x1Tti, 1000)) {
_d18x2x1Tti = millis();
_d18x2x1O= _readDS18_ow20(_FLPArray83226250, _FLPArray83226250[8]);}
if((readBooleanFromEEPROM(1, 7, 0x0)))
{_swi14=255;}
else
{_swi14=0;}
if(_isTimer(_dht1Tti, 1000)) {
if(_isTimer(_dht1LRT,( _dht1.getMinimumSamplingPeriod()))) {
_dht1.readSensor();
_dht1LRT = millis();
_dht1Tti = millis();
}
}
((String((readIntegerFromEEPROM(2, 0, 0x0)), DEC))).toCharArray((RemoteXY.text_6), 3);
((String((readIntegerFromEEPROM(4, 0, 0x0)), DEC))).toCharArray((RemoteXY.text_7), 3);
RemoteXY.led_1_r = _swi1;
RemoteXY.led_2_r = _swi2;
RemoteXY.led_3_r = _swi3;
RemoteXY.led_4_r = _swi4;
(((String("t")) + (( _floatToStringWitRaz(_dht1.temperature,0))) + (String(" h")) + (( _floatToStringWitRaz(_dht1.humidity,0))))).toCharArray((RemoteXY.text_1), 11);
(((String("t")) + (( _floatToStringWitRaz(_dht2.temperature,0))) + (String(" h")) + (( _floatToStringWitRaz(_dht2.humidity,0))))).toCharArray((RemoteXY.text_2), 11);
(((String("t")) + (( _floatToStringWitRaz(_dht3.temperature,0))) + (String(" h")) + (( _floatToStringWitRaz(_dht3.humidity,0))))).toCharArray((RemoteXY.text_3), 11);
(((String("t")) + (( _floatToStringWitRaz(_dht4.temperature,0))) + (String(" h")) + (( _floatToStringWitRaz(_dht4.humidity,0))))).toCharArray((RemoteXY.text_4), 11);
RemoteXY.led_5_r = _swi7;
RemoteXY.led_6_r = _swi8;
RemoteXY.led_7_r = _swi9;
RemoteXY.led_8_r = _swi6;
RemoteXY.led_9_r = _swi11;
RemoteXY.led_10_r = _swi12;
RemoteXY.led_11_r = _swi13;
RemoteXY.led_12_r = _swi10;
RemoteXY.led_13_r = _swi15;
RemoteXY.led_14_r = _swi16;
RemoteXY.led_15_r = _swi17;
RemoteXY.led_16_r = _swi14;
if(_isTimer(_dht2Tti, 1000)) {
if(_isTimer(_dht2LRT,( _dht2.getMinimumSamplingPeriod()))) {
_dht2.readSensor();
_dht2LRT = millis();
_dht2Tti = millis();
}
}
if(_isTimer(_dht3Tti, 1000)) {
if(_isTimer(_dht3LRT,( _dht3.getMinimumSamplingPeriod()))) {
_dht3.readSensor();
_dht3LRT = millis();
_dht3Tti = millis();
}
}
if(_isTimer(_dht4Tti, 1000)) {
if(_isTimer(_dht4LRT,( _dht4.getMinimumSamplingPeriod()))) {
_dht4.readSensor();
_dht4LRT = millis();
_dht4Tti = millis();
}
}
if (_changeNumber1_Out) {_changeNumber1_Out = 0;} else {_tempVariable_int = (RemoteXY.edit_1);
if (_tempVariable_int != _changeNumber1_OLV) {_changeNumber1_OLV = _tempVariable_int; _changeNumber1_Out = 1;}
}
digitalWrite(23, !((readBooleanFromEEPROM(0, 1, 0x0))));
digitalWrite(24, !((readBooleanFromEEPROM(0, 2, 0x0))));
if (_changeNumber2_Out) {_changeNumber2_Out = 0;} else {_tempVariable_int = (RemoteXY.edit_2);
if (_tempVariable_int != _changeNumber2_OLV) {_changeNumber2_OLV = _tempVariable_int; _changeNumber2_Out = 1;}
}
digitalWrite(25, !((readBooleanFromEEPROM(0, 3, 0x0))));
digitalWrite(26, !((readBooleanFromEEPROM(0, 4, 0x0))));
digitalWrite(22, !(_swi5));
digitalWrite(27, !((readBooleanFromEEPROM(0, 5, 0x0))));
digitalWrite(28, !((readBooleanFromEEPROM(0, 6, 0x0))));
digitalWrite(29, !((readBooleanFromEEPROM(0, 7, 0x0))));
digitalWrite(30, !((readBooleanFromEEPROM(1, 0, 0x0))));
digitalWrite(31, !((readBooleanFromEEPROM(1, 1, 0x0))));
digitalWrite(32, !((readBooleanFromEEPROM(1, 2, 0x0))));
digitalWrite(33, !((readBooleanFromEEPROM(1, 3, 0x0))));
digitalWrite(34, !((readBooleanFromEEPROM(1, 4, 0x0))));
digitalWrite(35, !((readBooleanFromEEPROM(1, 5, 0x0))));
digitalWrite(36, !((readBooleanFromEEPROM(1, 6, 0x0))));
if(_sowb1_needScan){
if( _oneWireSeach (_FLPArray83226250, _ow20)) {_sowb1_FLPArray83226250=1;
}
_ow20.reset_search();
_sowb1_needScan=0;}
if(_tim1O){if(! _sowb1_ost) {
_sowb1_ost=1;
_sowb1_needScan=1;
_sowb1_FLPArray83226250=0;
}} else{
_sowb1_ost=0;
}
digitalWrite(37, !(_swi18));
}
String _floatToStringWitRaz(float value, int raz)
{
return String(value,raz);
}
bool _isTimer(unsigned long startTime, unsigned long period )
{
unsigned long currentTime;
currentTime = millis();
if (currentTime>= startTime) {return (currentTime>=(startTime + period));} else {return (currentTime >=(4294967295-startTime+period));}
}
float _convertDS18x2xData(byte type_s, byte data[12])
{
int16_t raw = (data[1] << 8) | data[0];
if (type_s)
{
raw = raw << 3;
if (data[7] == 0x10) { raw = (raw & 0xFFF0) + 12 - data[6]; }
}
else
{
byte cfg = (data[4] & 0x60);
if (cfg == 0x00) raw = raw & ~7; else if (cfg == 0x20) raw = raw & ~3; else if (cfg == 0x40) raw = raw & ~1;
}
return (float)raw / 16.0;
}
float _readDS18_ow20(byte addr[8], byte type_s)
{ byte data[12];
byte i;
_ow20.reset();
_ow20.select(addr);
_ow20.write(0xBE);
for ( i = 0; i < 9; i++) {
data[i] = _ow20.read();}
_ow20.reset();
_ow20.select(addr);
_ow20.write(0x44, 1);
return _convertDS18x2xData(type_s, data);}
bool _oneWireSeach (byte array[], OneWire ow )
{
byte temp[8];
byte i;
if ( !ow.search(temp)) {
return false;
}
if (OneWire::crc8(temp, 7) != temp[7]) {
return false;
}
switch (temp[0]) {
case 0x10:
array[8] = 1;
break;
case 0x28:
array[8] = 0;
break;
case 0x22:
array[8] = 0;
break;
default:
return false;
}
for ( i = 0; i < 8; i++) {
array[i] = temp[i];
}
return true;
} byte readByteFromEEPROM(int addres, byte bitAddres, byte chipAddres)
{
return EEPROM.read(addres);
}
void updateByteToEEPROM(int addres, byte bitAddres, byte chipAddres, byte value)
{
return EEPROM.update(addres, value);
}
bool readBooleanFromEEPROM(int addres, byte bitAddres, byte chipAddres)
{
byte temp = readByteFromEEPROM( addres, bitAddres, chipAddres);
return bitRead(temp, bitAddres);
}
void updateBooleanToEEPROM(int addres, byte bitAddres, byte chipAddres, bool value)
{
byte temp = readByteFromEEPROM( addres, bitAddres, chipAddres);
bitWrite(temp, bitAddres, value);
updateByteToEEPROM( addres, bitAddres, chipAddres, temp);
}
int readIntegerFromEEPROM(int addres, byte bitAddres, byte chipAddres)
{
byte hight = readByteFromEEPROM( addres, bitAddres, chipAddres);
byte low = readByteFromEEPROM( (addres+1), bitAddres, chipAddres);
return word(hight, low);
}
void updateIntegerToEEPROM(int addres, byte bitAddres, byte chipAddres, int value)
{
updateByteToEEPROM( addres, bitAddres, chipAddres, highByte(value));
updateByteToEEPROM( (addres+1), bitAddres, chipAddres, lowByte(value));
}
вот покажи мне где я просил код? я хочу его сам написать - кубиками охаяли, теперь читаю книжки, да я не понимаю пока ничего, но и не пишу пока кода,
думай как хочешь ,
спасибо , тут хоть обьясняется что какая строка означает и делает, такого я и хотел, где есть обьяснение происходящего, можно узнать где такие уроки ещё увидеть, пожалуйста, кроме этого сайта
Смотря что понимать под этой фразой. Он (Гайвер) блогер. Он делает что-то снимает видео и к этому видео есть код. Готовый.
И ему главное - картинка, поэтому качество/работоспособность кода всегда под вопросом
Сергей, нафига вы выложили код от FLProg? Эту мешанину машинно сгенерированного кода ни с чем не перепутать. Неужели вы за эту фигню еще что и заплатили? :))))
Дык, недавно ж обсуждали!