mirror of
https://github.com/filiprojek/auto-awning-close.git
synced 2024-11-02 10:32:28 +01:00
Refactored, formatted, getting ready for platformio
This commit is contained in:
parent
fa60386901
commit
03cbc8e04b
@ -1,123 +0,0 @@
|
||||
#include <VirtualWire.h>
|
||||
|
||||
int led = 2;
|
||||
int btnA = 4;
|
||||
int btnB = 5;
|
||||
int btnC = 6;
|
||||
int btnD = 7;
|
||||
|
||||
int transmitter = 8;
|
||||
|
||||
void setup()
|
||||
{
|
||||
// put your setup code here, to run once:
|
||||
Serial.begin(9600);
|
||||
|
||||
pinMode(led, OUTPUT);
|
||||
pinMode(btnA, INPUT);
|
||||
pinMode(btnB, INPUT);
|
||||
pinMode(btnC, INPUT);
|
||||
pinMode(btnD, INPUT);
|
||||
|
||||
// vysilac
|
||||
// nastavení typu bezdrátové komunikace
|
||||
vw_set_ptt_inverted(true);
|
||||
// nastavení čísla datového pinu pro vysílač
|
||||
vw_set_tx_pin(transmitter);
|
||||
// nastavení rychlosti přenosu v bitech za sekundu
|
||||
vw_setup(1000);
|
||||
}
|
||||
|
||||
/* const char whichButtonWasPressed()
|
||||
{
|
||||
|
||||
Serial.write("\n\nreturn false\n\n");
|
||||
return "";
|
||||
} */
|
||||
|
||||
/* void sendMsg(inputMsg)
|
||||
{
|
||||
Serial.write("input");
|
||||
// Serial.write(input)
|
||||
Serial.write("\n odesilani...\n");
|
||||
|
||||
switch (inputMsg)
|
||||
{
|
||||
case 'A':
|
||||
vw_send((uint8_t *)"1", strlen("1"));
|
||||
break;
|
||||
case 'B':
|
||||
vw_send((uint8_t *)"2", strlen("2"));
|
||||
break;
|
||||
case 'C':
|
||||
vw_send((uint8_t *)"3", strlen("3"));
|
||||
break;
|
||||
case 'D':
|
||||
vw_send((uint8_t *)"4", strlen("4"));
|
||||
break;
|
||||
default:
|
||||
vw_send((uint8_t *)"0", strlen("0"));
|
||||
}
|
||||
|
||||
vw_wait_tx();
|
||||
digitalWrite(13, false);
|
||||
delay(900);
|
||||
} */
|
||||
|
||||
void loop()
|
||||
{
|
||||
String pressedBtn = "N";
|
||||
if (digitalRead(btnA) == HIGH)
|
||||
{
|
||||
Serial.write("btna");
|
||||
pressedBtn = "A";
|
||||
|
||||
Serial.write("\n odesilani...\n");
|
||||
vw_send((uint8_t *)"1", strlen("1"));
|
||||
vw_wait_tx();
|
||||
digitalWrite(13, false);
|
||||
delay(900);
|
||||
}
|
||||
|
||||
if (digitalRead(btnB) == HIGH)
|
||||
{
|
||||
Serial.write("btnb");
|
||||
pressedBtn = "B";
|
||||
|
||||
Serial.write("\n odesilani...\n");
|
||||
vw_send((uint8_t *)"2", strlen("2"));
|
||||
vw_wait_tx();
|
||||
digitalWrite(13, false);
|
||||
delay(900);
|
||||
}
|
||||
|
||||
if (digitalRead(btnC) == HIGH)
|
||||
{
|
||||
Serial.write("btnc");
|
||||
pressedBtn = "C";
|
||||
|
||||
Serial.write("\n odesilani...\n");
|
||||
vw_send((uint8_t *)"3", strlen("3"));
|
||||
vw_wait_tx();
|
||||
digitalWrite(13, false);
|
||||
delay(900);
|
||||
}
|
||||
|
||||
if (digitalRead(btnD) == HIGH)
|
||||
{
|
||||
Serial.write("btnd");
|
||||
pressedBtn = "D";
|
||||
|
||||
Serial.write("\n odesilani...\n");
|
||||
vw_send((uint8_t *)"4", strlen("4"));
|
||||
vw_wait_tx();
|
||||
digitalWrite(13, false);
|
||||
delay(900);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* vw_send((uint8_t *)"1", strlen("1"));
|
||||
vw_wait_tx();
|
||||
digitalWrite(13, false);
|
||||
delay(900); */
|
@ -1,14 +0,0 @@
|
||||
// pin declaration
|
||||
int windPin = 0;
|
||||
int rainPin = 0;
|
||||
int rtcPin = 0;
|
||||
|
||||
void setup()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
|
||||
}
|
@ -1,5 +0,0 @@
|
||||
{
|
||||
"port": "COM4",
|
||||
"board": "arduino:avr:uno",
|
||||
"sketch": "main.ino"
|
||||
}
|
@ -1,538 +0,0 @@
|
||||
{
|
||||
"version": 4,
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Arduino",
|
||||
"compilerPath": "C:\\Users\\filiprojek\\AppData\\Local\\Arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7\\bin\\avr-g++",
|
||||
"compilerArgs": [
|
||||
"-w",
|
||||
"-std=gnu++11",
|
||||
"-fpermissive",
|
||||
"-fno-exceptions",
|
||||
"-ffunction-sections",
|
||||
"-fdata-sections",
|
||||
"-fno-threadsafe-statics",
|
||||
"-Wno-error=narrowing"
|
||||
],
|
||||
"intelliSenseMode": "gcc-x64",
|
||||
"includePath": [
|
||||
"C:\\Users\\filiprojek\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.3\\cores\\arduino",
|
||||
"C:\\Users\\filiprojek\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.3\\variants\\standard",
|
||||
"C:\\Users\\filiprojek\\Documents\\Arduino\\libraries\\rc-switch-2.6.4",
|
||||
"c:\\users\\filiprojek\\appdata\\local\\arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7\\lib\\gcc\\avr\\7.3.0\\include",
|
||||
"c:\\users\\filiprojek\\appdata\\local\\arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7\\lib\\gcc\\avr\\7.3.0\\include-fixed",
|
||||
"c:\\users\\filiprojek\\appdata\\local\\arduino15\\packages\\arduino\\tools\\avr-gcc\\7.3.0-atmel3.6.1-arduino7\\avr\\include"
|
||||
],
|
||||
"forcedInclude": [
|
||||
"C:\\Users\\filiprojek\\AppData\\Local\\Arduino15\\packages\\arduino\\hardware\\avr\\1.8.3\\cores\\arduino\\Arduino.h"
|
||||
],
|
||||
"cStandard": "c11",
|
||||
"cppStandard": "c++11",
|
||||
"defines": [
|
||||
"F_CPU=16000000L",
|
||||
"ARDUINO=10813",
|
||||
"ARDUINO_AVR_UNO",
|
||||
"ARDUINO_ARCH_AVR",
|
||||
"__DBL_MIN_EXP__=(-125)",
|
||||
"__HQ_FBIT__=15",
|
||||
"__cpp_attributes=200809",
|
||||
"__UINT_LEAST16_MAX__=0xffffU",
|
||||
"__ATOMIC_ACQUIRE=2",
|
||||
"__SFRACT_IBIT__=0",
|
||||
"__FLT_MIN__=1.17549435e-38F",
|
||||
"__GCC_IEC_559_COMPLEX=0",
|
||||
"__BUILTIN_AVR_SLEEP=1",
|
||||
"__BUILTIN_AVR_COUNTLSULLK=1",
|
||||
"__cpp_aggregate_nsdmi=201304",
|
||||
"__BUILTIN_AVR_COUNTLSULLR=1",
|
||||
"__UFRACT_MAX__=0XFFFFP-16UR",
|
||||
"__UINT_LEAST8_TYPE__=unsigned char",
|
||||
"__DQ_FBIT__=63",
|
||||
"__INTMAX_C(c)=c ## LL",
|
||||
"__ULFRACT_FBIT__=32",
|
||||
"__SACCUM_EPSILON__=0x1P-7HK",
|
||||
"__CHAR_BIT__=8",
|
||||
"__USQ_IBIT__=0",
|
||||
"__UINT8_MAX__=0xff",
|
||||
"__ACCUM_FBIT__=15",
|
||||
"__WINT_MAX__=0x7fff",
|
||||
"__FLT32_MIN_EXP__=(-125)",
|
||||
"__cpp_static_assert=200410",
|
||||
"__USFRACT_FBIT__=8",
|
||||
"__ORDER_LITTLE_ENDIAN__=1234",
|
||||
"__SIZE_MAX__=0xffffU",
|
||||
"__WCHAR_MAX__=0x7fff",
|
||||
"__LACCUM_IBIT__=32",
|
||||
"__DBL_DENORM_MIN__=double(1.40129846e-45L)",
|
||||
"__GCC_ATOMIC_CHAR_LOCK_FREE=1",
|
||||
"__GCC_IEC_559=0",
|
||||
"__FLT_EVAL_METHOD__=0",
|
||||
"__BUILTIN_AVR_LLKBITS=1",
|
||||
"__cpp_binary_literals=201304",
|
||||
"__LLACCUM_MAX__=0X7FFFFFFFFFFFFFFFP-47LLK",
|
||||
"__GCC_ATOMIC_CHAR32_T_LOCK_FREE=1",
|
||||
"__BUILTIN_AVR_HKBITS=1",
|
||||
"__BUILTIN_AVR_BITSLLK=1",
|
||||
"__FRACT_FBIT__=15",
|
||||
"__BUILTIN_AVR_BITSLLR=1",
|
||||
"__cpp_variadic_templates=200704",
|
||||
"__UINT_FAST64_MAX__=0xffffffffffffffffULL",
|
||||
"__SIG_ATOMIC_TYPE__=char",
|
||||
"__BUILTIN_AVR_UHKBITS=1",
|
||||
"__UACCUM_FBIT__=16",
|
||||
"__DBL_MIN_10_EXP__=(-37)",
|
||||
"__FINITE_MATH_ONLY__=0",
|
||||
"__cpp_variable_templates=201304",
|
||||
"__LFRACT_IBIT__=0",
|
||||
"__GNUC_PATCHLEVEL__=0",
|
||||
"__FLT32_HAS_DENORM__=1",
|
||||
"__LFRACT_MAX__=0X7FFFFFFFP-31LR",
|
||||
"__UINT_FAST8_MAX__=0xff",
|
||||
"__has_include(STR)=__has_include__(STR)",
|
||||
"__DEC64_MAX_EXP__=385",
|
||||
"__INT8_C(c)=c",
|
||||
"__INT_LEAST8_WIDTH__=8",
|
||||
"__UINT_LEAST64_MAX__=0xffffffffffffffffULL",
|
||||
"__SA_FBIT__=15",
|
||||
"__SHRT_MAX__=0x7fff",
|
||||
"__LDBL_MAX__=3.40282347e+38L",
|
||||
"__FRACT_MAX__=0X7FFFP-15R",
|
||||
"__UFRACT_FBIT__=16",
|
||||
"__UFRACT_MIN__=0.0UR",
|
||||
"__UINT_LEAST8_MAX__=0xff",
|
||||
"__GCC_ATOMIC_BOOL_LOCK_FREE=1",
|
||||
"__UINTMAX_TYPE__=long long unsigned int",
|
||||
"__LLFRACT_EPSILON__=0x1P-63LLR",
|
||||
"__BUILTIN_AVR_DELAY_CYCLES=1",
|
||||
"__DEC32_EPSILON__=1E-6DF",
|
||||
"__FLT_EVAL_METHOD_TS_18661_3__=0",
|
||||
"__UINT32_MAX__=0xffffffffUL",
|
||||
"__GXX_EXPERIMENTAL_CXX0X__=1",
|
||||
"__ULFRACT_MAX__=0XFFFFFFFFP-32ULR",
|
||||
"__TA_IBIT__=16",
|
||||
"__LDBL_MAX_EXP__=128",
|
||||
"__WINT_MIN__=(-__WINT_MAX__ - 1)",
|
||||
"__INT_LEAST16_WIDTH__=16",
|
||||
"__ULLFRACT_MIN__=0.0ULLR",
|
||||
"__SCHAR_MAX__=0x7f",
|
||||
"__WCHAR_MIN__=(-__WCHAR_MAX__ - 1)",
|
||||
"__INT64_C(c)=c ## LL",
|
||||
"__DBL_DIG__=6",
|
||||
"__GCC_ATOMIC_POINTER_LOCK_FREE=1",
|
||||
"__AVR_HAVE_SPH__=1",
|
||||
"__LLACCUM_MIN__=(-0X1P15LLK-0X1P15LLK)",
|
||||
"__BUILTIN_AVR_KBITS=1",
|
||||
"__BUILTIN_AVR_ABSK=1",
|
||||
"__BUILTIN_AVR_ABSR=1",
|
||||
"__SIZEOF_INT__=2",
|
||||
"__SIZEOF_POINTER__=2",
|
||||
"__GCC_ATOMIC_CHAR16_T_LOCK_FREE=1",
|
||||
"__USACCUM_IBIT__=8",
|
||||
"__USER_LABEL_PREFIX__",
|
||||
"__STDC_HOSTED__=1",
|
||||
"__LDBL_HAS_INFINITY__=1",
|
||||
"__LFRACT_MIN__=(-0.5LR-0.5LR)",
|
||||
"__HA_IBIT__=8",
|
||||
"__FLT32_DIG__=6",
|
||||
"__TQ_IBIT__=0",
|
||||
"__FLT_EPSILON__=1.19209290e-7F",
|
||||
"__GXX_WEAK__=1",
|
||||
"__SHRT_WIDTH__=16",
|
||||
"__USFRACT_IBIT__=0",
|
||||
"__LDBL_MIN__=1.17549435e-38L",
|
||||
"__FRACT_MIN__=(-0.5R-0.5R)",
|
||||
"__AVR_SFR_OFFSET__=0x20",
|
||||
"__DEC32_MAX__=9.999999E96DF",
|
||||
"__cpp_threadsafe_static_init=200806",
|
||||
"__DA_IBIT__=32",
|
||||
"__INT32_MAX__=0x7fffffffL",
|
||||
"__UQQ_FBIT__=8",
|
||||
"__INT_WIDTH__=16",
|
||||
"__SIZEOF_LONG__=4",
|
||||
"__UACCUM_MAX__=0XFFFFFFFFP-16UK",
|
||||
"__UINT16_C(c)=c ## U",
|
||||
"__PTRDIFF_WIDTH__=16",
|
||||
"__DECIMAL_DIG__=9",
|
||||
"__LFRACT_EPSILON__=0x1P-31LR",
|
||||
"__AVR_2_BYTE_PC__=1",
|
||||
"__ULFRACT_MIN__=0.0ULR",
|
||||
"__INTMAX_WIDTH__=64",
|
||||
"__has_include_next(STR)=__has_include_next__(STR)",
|
||||
"__BUILTIN_AVR_ULLRBITS=1",
|
||||
"__LDBL_HAS_QUIET_NAN__=1",
|
||||
"__ULACCUM_IBIT__=32",
|
||||
"__UACCUM_EPSILON__=0x1P-16UK",
|
||||
"__BUILTIN_AVR_SEI=1",
|
||||
"__GNUC__=7",
|
||||
"__ULLACCUM_MAX__=0XFFFFFFFFFFFFFFFFP-48ULLK",
|
||||
"__cpp_delegating_constructors=200604",
|
||||
"__HQ_IBIT__=0",
|
||||
"__BUILTIN_AVR_SWAP=1",
|
||||
"__FLT_HAS_DENORM__=1",
|
||||
"__SIZEOF_LONG_DOUBLE__=4",
|
||||
"__BIGGEST_ALIGNMENT__=1",
|
||||
"__STDC_UTF_16__=1",
|
||||
"__UINT24_MAX__=16777215UL",
|
||||
"__BUILTIN_AVR_NOP=1",
|
||||
"__GNUC_STDC_INLINE__=1",
|
||||
"__DQ_IBIT__=0",
|
||||
"__FLT32_HAS_INFINITY__=1",
|
||||
"__DBL_MAX__=double(3.40282347e+38L)",
|
||||
"__ULFRACT_IBIT__=0",
|
||||
"__cpp_raw_strings=200710",
|
||||
"__INT_FAST32_MAX__=0x7fffffffL",
|
||||
"__DBL_HAS_INFINITY__=1",
|
||||
"__INT64_MAX__=0x7fffffffffffffffLL",
|
||||
"__ACCUM_IBIT__=16",
|
||||
"__DEC32_MIN_EXP__=(-94)",
|
||||
"__BUILTIN_AVR_UKBITS=1",
|
||||
"__INTPTR_WIDTH__=16",
|
||||
"__BUILTIN_AVR_FMULSU=1",
|
||||
"__LACCUM_MAX__=0X7FFFFFFFFFFFFFFFP-31LK",
|
||||
"__INT_FAST16_TYPE__=int",
|
||||
"__LDBL_HAS_DENORM__=1",
|
||||
"__BUILTIN_AVR_BITSK=1",
|
||||
"__BUILTIN_AVR_BITSR=1",
|
||||
"__cplusplus=201402L",
|
||||
"__cpp_ref_qualifiers=200710",
|
||||
"__DEC128_MAX__=9.999999999999999999999999999999999E6144DL",
|
||||
"__INT_LEAST32_MAX__=0x7fffffffL",
|
||||
"__USING_SJLJ_EXCEPTIONS__=1",
|
||||
"__DEC32_MIN__=1E-95DF",
|
||||
"__ACCUM_MAX__=0X7FFFFFFFP-15K",
|
||||
"__DEPRECATED=1",
|
||||
"__cpp_rvalue_references=200610",
|
||||
"__DBL_MAX_EXP__=128",
|
||||
"__USACCUM_EPSILON__=0x1P-8UHK",
|
||||
"__WCHAR_WIDTH__=16",
|
||||
"__FLT32_MAX__=3.40282347e+38F32",
|
||||
"__DEC128_EPSILON__=1E-33DL",
|
||||
"__SFRACT_MAX__=0X7FP-7HR",
|
||||
"__FRACT_IBIT__=0",
|
||||
"__PTRDIFF_MAX__=0x7fff",
|
||||
"__UACCUM_MIN__=0.0UK",
|
||||
"__UACCUM_IBIT__=16",
|
||||
"__BUILTIN_AVR_NOPS=1",
|
||||
"__BUILTIN_AVR_WDR=1",
|
||||
"__FLT32_HAS_QUIET_NAN__=1",
|
||||
"__GNUG__=7",
|
||||
"__LONG_LONG_MAX__=0x7fffffffffffffffLL",
|
||||
"__SIZEOF_SIZE_T__=2",
|
||||
"__ULACCUM_MAX__=0XFFFFFFFFFFFFFFFFP-32ULK",
|
||||
"__cpp_rvalue_reference=200610",
|
||||
"__cpp_nsdmi=200809",
|
||||
"__SIZEOF_WINT_T__=2",
|
||||
"__LONG_LONG_WIDTH__=64",
|
||||
"__cpp_initializer_lists=200806",
|
||||
"__FLT32_MAX_EXP__=128",
|
||||
"__SA_IBIT__=16",
|
||||
"__ULLACCUM_MIN__=0.0ULLK",
|
||||
"__BUILTIN_AVR_ROUNDUHK=1",
|
||||
"__BUILTIN_AVR_ROUNDUHR=1",
|
||||
"__cpp_hex_float=201603",
|
||||
"__GXX_ABI_VERSION=1011",
|
||||
"__INT24_MAX__=8388607L",
|
||||
"__UTA_FBIT__=48",
|
||||
"__FLT_MIN_EXP__=(-125)",
|
||||
"__USFRACT_MAX__=0XFFP-8UHR",
|
||||
"__UFRACT_IBIT__=0",
|
||||
"__BUILTIN_AVR_ROUNDFX=1",
|
||||
"__BUILTIN_AVR_ROUNDULK=1",
|
||||
"__BUILTIN_AVR_ROUNDULR=1",
|
||||
"__cpp_lambdas=200907",
|
||||
"__BUILTIN_AVR_COUNTLSLLK=1",
|
||||
"__BUILTIN_AVR_COUNTLSLLR=1",
|
||||
"__BUILTIN_AVR_ROUNDHK=1",
|
||||
"__INT_FAST64_TYPE__=long long int",
|
||||
"__BUILTIN_AVR_ROUNDHR=1",
|
||||
"__DBL_MIN__=double(1.17549435e-38L)",
|
||||
"__BUILTIN_AVR_COUNTLSK=1",
|
||||
"__BUILTIN_AVR_ROUNDLK=1",
|
||||
"__BUILTIN_AVR_COUNTLSR=1",
|
||||
"__BUILTIN_AVR_ROUNDLR=1",
|
||||
"__LACCUM_MIN__=(-0X1P31LK-0X1P31LK)",
|
||||
"__ULLACCUM_FBIT__=48",
|
||||
"__BUILTIN_AVR_LKBITS=1",
|
||||
"__ULLFRACT_EPSILON__=0x1P-64ULLR",
|
||||
"__DEC128_MIN__=1E-6143DL",
|
||||
"__REGISTER_PREFIX__",
|
||||
"__UINT16_MAX__=0xffffU",
|
||||
"__DBL_HAS_DENORM__=1",
|
||||
"__BUILTIN_AVR_ULKBITS=1",
|
||||
"__ACCUM_MIN__=(-0X1P15K-0X1P15K)",
|
||||
"__AVR_ARCH__=2",
|
||||
"__SQ_IBIT__=0",
|
||||
"__FLT32_MIN__=1.17549435e-38F32",
|
||||
"__UINT8_TYPE__=unsigned char",
|
||||
"__BUILTIN_AVR_ROUNDUK=1",
|
||||
"__BUILTIN_AVR_ROUNDUR=1",
|
||||
"__UHA_FBIT__=8",
|
||||
"__NO_INLINE__=1",
|
||||
"__SFRACT_MIN__=(-0.5HR-0.5HR)",
|
||||
"__UTQ_FBIT__=128",
|
||||
"__FLT_MANT_DIG__=24",
|
||||
"__LDBL_DECIMAL_DIG__=9",
|
||||
"__VERSION__=\"7.3.0\"",
|
||||
"__UINT64_C(c)=c ## ULL",
|
||||
"__ULLFRACT_FBIT__=64",
|
||||
"__cpp_unicode_characters=200704",
|
||||
"__FRACT_EPSILON__=0x1P-15R",
|
||||
"__ULACCUM_MIN__=0.0ULK",
|
||||
"__UDA_FBIT__=32",
|
||||
"__cpp_decltype_auto=201304",
|
||||
"__LLACCUM_EPSILON__=0x1P-47LLK",
|
||||
"__GCC_ATOMIC_INT_LOCK_FREE=1",
|
||||
"__FLT32_MANT_DIG__=24",
|
||||
"__BUILTIN_AVR_BITSUHK=1",
|
||||
"__BUILTIN_AVR_BITSUHR=1",
|
||||
"__FLOAT_WORD_ORDER__=__ORDER_LITTLE_ENDIAN__",
|
||||
"__USFRACT_MIN__=0.0UHR",
|
||||
"__BUILTIN_AVR_BITSULK=1",
|
||||
"__ULLACCUM_IBIT__=16",
|
||||
"__BUILTIN_AVR_BITSULR=1",
|
||||
"__UQQ_IBIT__=0",
|
||||
"__BUILTIN_AVR_LLRBITS=1",
|
||||
"__SCHAR_WIDTH__=8",
|
||||
"__BUILTIN_AVR_BITSULLK=1",
|
||||
"__BUILTIN_AVR_BITSULLR=1",
|
||||
"__INT32_C(c)=c ## L",
|
||||
"__DEC64_EPSILON__=1E-15DD",
|
||||
"__ORDER_PDP_ENDIAN__=3412",
|
||||
"__DEC128_MIN_EXP__=(-6142)",
|
||||
"__UHQ_FBIT__=16",
|
||||
"__LLACCUM_FBIT__=47",
|
||||
"__FLT32_MAX_10_EXP__=38",
|
||||
"__BUILTIN_AVR_ROUNDULLK=1",
|
||||
"__BUILTIN_AVR_ROUNDULLR=1",
|
||||
"__INT_FAST32_TYPE__=long int",
|
||||
"__BUILTIN_AVR_HRBITS=1",
|
||||
"__UINT_LEAST16_TYPE__=unsigned int",
|
||||
"__BUILTIN_AVR_UHRBITS=1",
|
||||
"__INT16_MAX__=0x7fff",
|
||||
"__SIZE_TYPE__=unsigned int",
|
||||
"__UINT64_MAX__=0xffffffffffffffffULL",
|
||||
"__UDQ_FBIT__=64",
|
||||
"__INT8_TYPE__=signed char",
|
||||
"__cpp_digit_separators=201309",
|
||||
"__ELF__=1",
|
||||
"__ULFRACT_EPSILON__=0x1P-32ULR",
|
||||
"__LLFRACT_FBIT__=63",
|
||||
"__FLT_RADIX__=2",
|
||||
"__INT_LEAST16_TYPE__=int",
|
||||
"__BUILTIN_AVR_ABSFX=1",
|
||||
"__LDBL_EPSILON__=1.19209290e-7L",
|
||||
"__UINTMAX_C(c)=c ## ULL",
|
||||
"__INT24_MIN__=(-__INT24_MAX__-1)",
|
||||
"__SACCUM_MAX__=0X7FFFP-7HK",
|
||||
"__BUILTIN_AVR_ABSHR=1",
|
||||
"__SIG_ATOMIC_MAX__=0x7f",
|
||||
"__GCC_ATOMIC_WCHAR_T_LOCK_FREE=1",
|
||||
"__cpp_sized_deallocation=201309",
|
||||
"__SIZEOF_PTRDIFF_T__=2",
|
||||
"__AVR=1",
|
||||
"__BUILTIN_AVR_ABSLK=1",
|
||||
"__BUILTIN_AVR_ABSLR=1",
|
||||
"__LACCUM_EPSILON__=0x1P-31LK",
|
||||
"__DEC32_SUBNORMAL_MIN__=0.000001E-95DF",
|
||||
"__INT_FAST16_MAX__=0x7fff",
|
||||
"__UINT_FAST32_MAX__=0xffffffffUL",
|
||||
"__UINT_LEAST64_TYPE__=long long unsigned int",
|
||||
"__USACCUM_MAX__=0XFFFFP-8UHK",
|
||||
"__SFRACT_EPSILON__=0x1P-7HR",
|
||||
"__FLT_HAS_QUIET_NAN__=1",
|
||||
"__FLT_MAX_10_EXP__=38",
|
||||
"__LONG_MAX__=0x7fffffffL",
|
||||
"__DEC128_SUBNORMAL_MIN__=0.000000000000000000000000000000001E-6143DL",
|
||||
"__FLT_HAS_INFINITY__=1",
|
||||
"__cpp_unicode_literals=200710",
|
||||
"__USA_FBIT__=16",
|
||||
"__UINT_FAST16_TYPE__=unsigned int",
|
||||
"__DEC64_MAX__=9.999999999999999E384DD",
|
||||
"__INT_FAST32_WIDTH__=32",
|
||||
"__BUILTIN_AVR_RBITS=1",
|
||||
"__CHAR16_TYPE__=unsigned int",
|
||||
"__PRAGMA_REDEFINE_EXTNAME=1",
|
||||
"__SIZE_WIDTH__=16",
|
||||
"__INT_LEAST16_MAX__=0x7fff",
|
||||
"__DEC64_MANT_DIG__=16",
|
||||
"__UINT_LEAST32_MAX__=0xffffffffUL",
|
||||
"__SACCUM_FBIT__=7",
|
||||
"__FLT32_DENORM_MIN__=1.40129846e-45F32",
|
||||
"__GCC_ATOMIC_LONG_LOCK_FREE=1",
|
||||
"__SIG_ATOMIC_WIDTH__=8",
|
||||
"__INT_LEAST64_TYPE__=long long int",
|
||||
"__INT16_TYPE__=int",
|
||||
"__INT_LEAST8_TYPE__=signed char",
|
||||
"__SQ_FBIT__=31",
|
||||
"__DEC32_MAX_EXP__=97",
|
||||
"__INT_FAST8_MAX__=0x7f",
|
||||
"__INTPTR_MAX__=0x7fff",
|
||||
"__QQ_FBIT__=7",
|
||||
"__cpp_range_based_for=200907",
|
||||
"__UTA_IBIT__=16",
|
||||
"__AVR_ERRATA_SKIP__=1",
|
||||
"__FLT32_MIN_10_EXP__=(-37)",
|
||||
"__LDBL_MANT_DIG__=24",
|
||||
"__SFRACT_FBIT__=7",
|
||||
"__SACCUM_MIN__=(-0X1P7HK-0X1P7HK)",
|
||||
"__DBL_HAS_QUIET_NAN__=1",
|
||||
"__SIG_ATOMIC_MIN__=(-__SIG_ATOMIC_MAX__ - 1)",
|
||||
"AVR=1",
|
||||
"__BUILTIN_AVR_FMULS=1",
|
||||
"__cpp_return_type_deduction=201304",
|
||||
"__INTPTR_TYPE__=int",
|
||||
"__UINT16_TYPE__=unsigned int",
|
||||
"__WCHAR_TYPE__=int",
|
||||
"__SIZEOF_FLOAT__=4",
|
||||
"__AVR__=1",
|
||||
"__BUILTIN_AVR_INSERT_BITS=1",
|
||||
"__USQ_FBIT__=32",
|
||||
"__UINTPTR_MAX__=0xffffU",
|
||||
"__INT_FAST64_WIDTH__=64",
|
||||
"__DEC64_MIN_EXP__=(-382)",
|
||||
"__cpp_decltype=200707",
|
||||
"__FLT32_DECIMAL_DIG__=9",
|
||||
"__INT_FAST64_MAX__=0x7fffffffffffffffLL",
|
||||
"__GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1",
|
||||
"__FLT_DIG__=6",
|
||||
"__UINT_FAST64_TYPE__=long long unsigned int",
|
||||
"__BUILTIN_AVR_BITSHK=1",
|
||||
"__BUILTIN_AVR_BITSHR=1",
|
||||
"__INT_MAX__=0x7fff",
|
||||
"__LACCUM_FBIT__=31",
|
||||
"__USACCUM_MIN__=0.0UHK",
|
||||
"__UHA_IBIT__=8",
|
||||
"__INT64_TYPE__=long long int",
|
||||
"__BUILTIN_AVR_BITSLK=1",
|
||||
"__BUILTIN_AVR_BITSLR=1",
|
||||
"__FLT_MAX_EXP__=128",
|
||||
"__UTQ_IBIT__=0",
|
||||
"__DBL_MANT_DIG__=24",
|
||||
"__cpp_inheriting_constructors=201511",
|
||||
"__BUILTIN_AVR_ULLKBITS=1",
|
||||
"__INT_LEAST64_MAX__=0x7fffffffffffffffLL",
|
||||
"__DEC64_MIN__=1E-383DD",
|
||||
"__WINT_TYPE__=int",
|
||||
"__UINT_LEAST32_TYPE__=long unsigned int",
|
||||
"__SIZEOF_SHORT__=2",
|
||||
"__ULLFRACT_IBIT__=0",
|
||||
"__LDBL_MIN_EXP__=(-125)",
|
||||
"__UDA_IBIT__=32",
|
||||
"__WINT_WIDTH__=16",
|
||||
"__INT_LEAST8_MAX__=0x7f",
|
||||
"__LFRACT_FBIT__=31",
|
||||
"__LDBL_MAX_10_EXP__=38",
|
||||
"__ATOMIC_RELAXED=0",
|
||||
"__DBL_EPSILON__=double(1.19209290e-7L)",
|
||||
"__BUILTIN_AVR_BITSUK=1",
|
||||
"__BUILTIN_AVR_BITSUR=1",
|
||||
"__UINT8_C(c)=c",
|
||||
"__INT_LEAST32_TYPE__=long int",
|
||||
"__BUILTIN_AVR_URBITS=1",
|
||||
"__SIZEOF_WCHAR_T__=2",
|
||||
"__LLFRACT_MAX__=0X7FFFFFFFFFFFFFFFP-63LLR",
|
||||
"__TQ_FBIT__=127",
|
||||
"__INT_FAST8_TYPE__=signed char",
|
||||
"__ULLACCUM_EPSILON__=0x1P-48ULLK",
|
||||
"__BUILTIN_AVR_ROUNDK=1",
|
||||
"__BUILTIN_AVR_ROUNDR=1",
|
||||
"__UHQ_IBIT__=0",
|
||||
"__LLACCUM_IBIT__=16",
|
||||
"__FLT32_EPSILON__=1.19209290e-7F32",
|
||||
"__DBL_DECIMAL_DIG__=9",
|
||||
"__STDC_UTF_32__=1",
|
||||
"__INT_FAST8_WIDTH__=8",
|
||||
"__DEC_EVAL_METHOD__=2",
|
||||
"__TA_FBIT__=47",
|
||||
"__UDQ_IBIT__=0",
|
||||
"__ORDER_BIG_ENDIAN__=4321",
|
||||
"__cpp_runtime_arrays=198712",
|
||||
"__WITH_AVRLIBC__=1",
|
||||
"__UINT64_TYPE__=long long unsigned int",
|
||||
"__ACCUM_EPSILON__=0x1P-15K",
|
||||
"__UINT32_C(c)=c ## UL",
|
||||
"__BUILTIN_AVR_COUNTLSUHK=1",
|
||||
"__INTMAX_MAX__=0x7fffffffffffffffLL",
|
||||
"__cpp_alias_templates=200704",
|
||||
"__BUILTIN_AVR_COUNTLSUHR=1",
|
||||
"__BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__",
|
||||
"__FLT_DENORM_MIN__=1.40129846e-45F",
|
||||
"__LLFRACT_IBIT__=0",
|
||||
"__INT8_MAX__=0x7f",
|
||||
"__LONG_WIDTH__=32",
|
||||
"__UINT_FAST32_TYPE__=long unsigned int",
|
||||
"__CHAR32_TYPE__=long unsigned int",
|
||||
"__BUILTIN_AVR_COUNTLSULK=1",
|
||||
"__BUILTIN_AVR_COUNTLSULR=1",
|
||||
"__FLT_MAX__=3.40282347e+38F",
|
||||
"__cpp_constexpr=201304",
|
||||
"__USACCUM_FBIT__=8",
|
||||
"__BUILTIN_AVR_COUNTLSFX=1",
|
||||
"__INT32_TYPE__=long int",
|
||||
"__SIZEOF_DOUBLE__=4",
|
||||
"__FLT_MIN_10_EXP__=(-37)",
|
||||
"__UFRACT_EPSILON__=0x1P-16UR",
|
||||
"__INT_LEAST32_WIDTH__=32",
|
||||
"__BUILTIN_AVR_COUNTLSHK=1",
|
||||
"__BUILTIN_AVR_COUNTLSHR=1",
|
||||
"__INTMAX_TYPE__=long long int",
|
||||
"__BUILTIN_AVR_ABSLLK=1",
|
||||
"__BUILTIN_AVR_ABSLLR=1",
|
||||
"__DEC128_MAX_EXP__=6145",
|
||||
"__AVR_HAVE_16BIT_SP__=1",
|
||||
"__ATOMIC_CONSUME=1",
|
||||
"__GNUC_MINOR__=3",
|
||||
"__INT_FAST16_WIDTH__=16",
|
||||
"__UINTMAX_MAX__=0xffffffffffffffffULL",
|
||||
"__DEC32_MANT_DIG__=7",
|
||||
"__HA_FBIT__=7",
|
||||
"__BUILTIN_AVR_COUNTLSLK=1",
|
||||
"__BUILTIN_AVR_COUNTLSLR=1",
|
||||
"__BUILTIN_AVR_CLI=1",
|
||||
"__DBL_MAX_10_EXP__=38",
|
||||
"__LDBL_DENORM_MIN__=1.40129846e-45L",
|
||||
"__INT16_C(c)=c",
|
||||
"__cpp_generic_lambdas=201304",
|
||||
"__STDC__=1",
|
||||
"__PTRDIFF_TYPE__=int",
|
||||
"__LLFRACT_MIN__=(-0.5LLR-0.5LLR)",
|
||||
"__BUILTIN_AVR_LRBITS=1",
|
||||
"__ATOMIC_SEQ_CST=5",
|
||||
"__DA_FBIT__=31",
|
||||
"__UINT32_TYPE__=long unsigned int",
|
||||
"__BUILTIN_AVR_ROUNDLLK=1",
|
||||
"__UINTPTR_TYPE__=unsigned int",
|
||||
"__BUILTIN_AVR_ROUNDLLR=1",
|
||||
"__USA_IBIT__=16",
|
||||
"__BUILTIN_AVR_ULRBITS=1",
|
||||
"__DEC64_SUBNORMAL_MIN__=0.000000000000001E-383DD",
|
||||
"__DEC128_MANT_DIG__=34",
|
||||
"__LDBL_MIN_10_EXP__=(-37)",
|
||||
"__BUILTIN_AVR_COUNTLSUK=1",
|
||||
"__BUILTIN_AVR_COUNTLSUR=1",
|
||||
"__SIZEOF_LONG_LONG__=8",
|
||||
"__ULACCUM_EPSILON__=0x1P-32ULK",
|
||||
"__cpp_user_defined_literals=200809",
|
||||
"__SACCUM_IBIT__=8",
|
||||
"__GCC_ATOMIC_LLONG_LOCK_FREE=1",
|
||||
"__LDBL_DIG__=6",
|
||||
"__FLT_DECIMAL_DIG__=9",
|
||||
"__UINT_FAST16_MAX__=0xffffU",
|
||||
"__GCC_ATOMIC_SHORT_LOCK_FREE=1",
|
||||
"__BUILTIN_AVR_ABSHK=1",
|
||||
"__BUILTIN_AVR_FLASH_SEGMENT=1",
|
||||
"__INT_LEAST64_WIDTH__=64",
|
||||
"__ULLFRACT_MAX__=0XFFFFFFFFFFFFFFFFP-64ULLR",
|
||||
"__UINT_FAST8_TYPE__=unsigned char",
|
||||
"__USFRACT_EPSILON__=0x1P-8UHR",
|
||||
"__ULACCUM_FBIT__=32",
|
||||
"__QQ_IBIT__=0",
|
||||
"__cpp_init_captures=201304",
|
||||
"__ATOMIC_ACQ_REL=4",
|
||||
"__ATOMIC_RELEASE=3",
|
||||
"__BUILTIN_AVR_FMUL=1",
|
||||
"USBCON"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
@ -1,50 +0,0 @@
|
||||
#include <RCSwitch.h>
|
||||
|
||||
RCSwitch mySwitch = RCSwitch();
|
||||
|
||||
int delayTime = 2000;
|
||||
|
||||
|
||||
void setup()
|
||||
{
|
||||
Serial.begin(9600);
|
||||
mySwitch.enableReceive(0); // Receiver on interrupt 0 => that is pin #2
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
if (mySwitch.available())
|
||||
{
|
||||
|
||||
/* Serial.print("Received ");
|
||||
Serial.print( mySwitch.getReceivedValue() );
|
||||
Serial.print(" / ");
|
||||
Serial.print( mySwitch.getReceivedBitlength() );
|
||||
Serial.print("bit ");
|
||||
Serial.print("Protocol: ");
|
||||
Serial.println( mySwitch.getReceivedProtocol() ); */
|
||||
|
||||
switch(mySwitch.getReceivedValue())
|
||||
{
|
||||
case 16736113:
|
||||
Serial.println("aaaaaaaaaa");
|
||||
delay(delayTime);
|
||||
break;
|
||||
case 3696136:
|
||||
Serial.println("bbbbbbbbbb");
|
||||
delay(delayTime);
|
||||
break;
|
||||
case 16736120:
|
||||
Serial.println("cccccccccc");
|
||||
delay(delayTime);
|
||||
break;
|
||||
case 16736114:
|
||||
Serial.println("dddddddddd");
|
||||
delay(delayTime);
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
mySwitch.resetAvailable();
|
||||
}
|
||||
}
|
216
main/main.ino
216
main/main.ino
@ -1,216 +0,0 @@
|
||||
#include <RCSwitch.h>
|
||||
#include <Wire.h>
|
||||
#include <Rtc_Pcf8563.h>
|
||||
|
||||
RCSwitch mySwitch = RCSwitch();
|
||||
Rtc_Pcf8563 rtc;
|
||||
|
||||
// defining used pins
|
||||
int wind = 8;
|
||||
int rain = 12;
|
||||
int receiver = 9;
|
||||
|
||||
int relay1 = 4;
|
||||
int relay2 = 6;
|
||||
int relay3 = 5;
|
||||
int relay4 = 7;
|
||||
|
||||
// codes from remote controller
|
||||
const int recRelay4 = 3696136;
|
||||
const int recRelay3 = 16736114;
|
||||
const int recRelay2 = 16736120;
|
||||
const int recRelay1 = 16736113;
|
||||
|
||||
int delayTime = 500;
|
||||
// status of roleta
|
||||
bool isOpen = false;
|
||||
|
||||
|
||||
void setup()
|
||||
{
|
||||
Serial.begin(9600);
|
||||
|
||||
pinMode(relay1, OUTPUT);
|
||||
pinMode(relay2, OUTPUT);
|
||||
pinMode(relay3, OUTPUT);
|
||||
pinMode(relay4, OUTPUT);
|
||||
pinMode(wind, INPUT);
|
||||
pinMode(rain, INPUT);
|
||||
|
||||
mySwitch.enableReceive(0); // Receiver on interrupt 0 => that is pin #2
|
||||
|
||||
//clear out the registers
|
||||
///rtc.initClock();
|
||||
//set a time to start with.
|
||||
//day, weekday, month, century(1=1900, 0=2000), year(0-99)
|
||||
///rtc.setDate(18, 6, 6, 0, 21);
|
||||
//hr, min, sec
|
||||
///rtc.setTime(18, 44, 0);
|
||||
}
|
||||
|
||||
void updateRTC()
|
||||
{
|
||||
/*
|
||||
function to update RTC time using user input
|
||||
*/
|
||||
|
||||
// ask user to enter new date and time
|
||||
const char txt[6][15] = { "year [4-digit]", "month [1~12]", "day [1~31]",
|
||||
"hours [0~23]", "minutes [0~59]", "seconds [0~59]"};
|
||||
String str = "";
|
||||
long newDate[6];
|
||||
|
||||
while (Serial.available()) {
|
||||
Serial.read(); // clear serial buffer
|
||||
}
|
||||
|
||||
for (int i = 0; i < 6; i++) {
|
||||
|
||||
Serial.print("Enter ");
|
||||
Serial.print(txt[i]);
|
||||
Serial.print(": ");
|
||||
|
||||
while (!Serial.available()) {
|
||||
; // wait for user input
|
||||
}
|
||||
|
||||
str = Serial.readString(); // read user input
|
||||
newDate[i] = str.toInt(); // convert user input to number and save to array
|
||||
|
||||
Serial.println(newDate[i]); // show user input
|
||||
}
|
||||
|
||||
// update RTC
|
||||
//rtc.adjust(DateTime(2021, newDate[1], newDate[2], newDate[3], newDate[4], newDate[5]));
|
||||
rtc.setDate(newDate[2], 6, newDate[1], 0, 2020);
|
||||
Serial.println("RTC Updated!");
|
||||
}
|
||||
|
||||
void relayOn(int pin, bool controller = false)
|
||||
{
|
||||
Serial.print("realy ");
|
||||
Serial.print(pin);
|
||||
Serial.print("\n");
|
||||
|
||||
if(controller == false)
|
||||
{
|
||||
Serial.println("jsemtu");
|
||||
if(pin == relay4)
|
||||
{
|
||||
isOpen = true;
|
||||
}
|
||||
if(pin == relay1)
|
||||
{
|
||||
isOpen = false;
|
||||
}
|
||||
}
|
||||
|
||||
digitalWrite(pin, HIGH);
|
||||
delay(delayTime);
|
||||
if(pin == relay3) {
|
||||
// delay(1500);
|
||||
}
|
||||
digitalWrite(pin, LOW);
|
||||
|
||||
delay(delayTime);
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
//formatted strings are at the current time/date.
|
||||
Serial.print(rtc.formatTime());
|
||||
Serial.print("\r\n");
|
||||
Serial.print(rtc.formatDate());
|
||||
Serial.print("\r\n");
|
||||
delay(1000);
|
||||
|
||||
// assign day and month into variable
|
||||
char h1 = rtc.formatTime(RTCC_TIME_HM)[0];
|
||||
char h2 = rtc.formatTime(RTCC_TIME_HM)[1];
|
||||
int onlyHour = ( 10 * (h1 - '0') ) + h2 - '0';
|
||||
|
||||
char m1 = rtc.formatTime(RTCC_TIME_HM)[3];
|
||||
char m2 = rtc.formatTime(RTCC_TIME_HM)[4];
|
||||
int onlyMinutes = ( 10 * (m1 - '0') ) + m2 - '0';
|
||||
|
||||
char M1 = rtc.formatDate()[0];
|
||||
char M2 = rtc.formatDate()[1];
|
||||
int onlyMonth = ( 10 * (M1 - '0') ) + M2 - '0';
|
||||
|
||||
Serial.println(onlyHour);
|
||||
Serial.println(onlyMinutes);
|
||||
Serial.println(onlyMonth);
|
||||
Serial.println(isOpen);
|
||||
|
||||
// setting up date and time from serial monitor
|
||||
if (Serial.available())
|
||||
{
|
||||
char input = Serial.read();
|
||||
if (input == 'u') updateRTC(); // update RTC time
|
||||
}
|
||||
|
||||
// time actions
|
||||
if(onlyMonth >= 5 && onlyMonth <= 8)
|
||||
{
|
||||
if(onlyHour >= 7 && onlyHour <= 14)
|
||||
{
|
||||
if(isOpen == false)
|
||||
{
|
||||
Serial.println("cas otevira");
|
||||
relayOn(relay4);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(isOpen == true)
|
||||
{
|
||||
Serial.println("cas zavira");
|
||||
relayOn(relay1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// rain actions
|
||||
if(digitalRead(rain) != HIGH)
|
||||
{
|
||||
Serial.println("voda zavira");
|
||||
//relayOn(relay1, true);
|
||||
}
|
||||
|
||||
// wind actions
|
||||
if (digitalRead(wind) == HIGH)
|
||||
{
|
||||
Serial.println("vitr zavira");
|
||||
//relayOn(relay1, true);
|
||||
}
|
||||
else
|
||||
{
|
||||
//digitalWrite(relay1, LOW); -> probably useless
|
||||
}
|
||||
|
||||
// remote controller actions
|
||||
if (mySwitch.available())
|
||||
{
|
||||
int received = mySwitch.getReceivedValue();
|
||||
Serial.println("Received " + received);
|
||||
|
||||
if (received == recRelay1)
|
||||
{
|
||||
relayOn(relay1, true);
|
||||
}
|
||||
if (received == recRelay2)
|
||||
{
|
||||
relayOn(relay2, true);
|
||||
}
|
||||
if (received == recRelay3)
|
||||
{
|
||||
relayOn(relay3, true);
|
||||
}
|
||||
if (received == recRelay4)
|
||||
{
|
||||
relayOn(relay4, true);
|
||||
}
|
||||
|
||||
mySwitch.resetAvailable();
|
||||
}
|
||||
}
|
201
src/main.ino
Normal file
201
src/main.ino
Normal file
@ -0,0 +1,201 @@
|
||||
#include <RCSwitch.h>
|
||||
#include <Rtc_Pcf8563.h>
|
||||
#include <Wire.h>
|
||||
|
||||
RCSwitch remote = RCSwitch();
|
||||
Rtc_Pcf8563 rtc;
|
||||
|
||||
// defining used pins
|
||||
const int wind = 8;
|
||||
const int rain = 12;
|
||||
|
||||
const int r_close = 4; // close
|
||||
const int r_stop = 5; // stop
|
||||
const int r_open = 6; // open
|
||||
const int r_led = 7; // led
|
||||
|
||||
// codes from remote controller
|
||||
const unsigned long rec_r_close = 16736113;
|
||||
const unsigned long rec_r_stop = 16736114;
|
||||
const unsigned long rec_r_open = 3696136;
|
||||
const unsigned long rec_r_led = 16736120;
|
||||
|
||||
int delayTime = 500; // default delay time used everywhere
|
||||
bool isOpen = false; // current status
|
||||
bool t_open = false; // open by time
|
||||
|
||||
void setup()
|
||||
{
|
||||
Serial.begin(9600);
|
||||
Wire.begin(); // Initialize I2C communication
|
||||
|
||||
Serial.println("press 'u' to set the new date");
|
||||
Serial.print("\n\n\n\n\n");
|
||||
|
||||
pinMode(r_close, OUTPUT);
|
||||
pinMode(r_led, OUTPUT);
|
||||
pinMode(r_stop, OUTPUT);
|
||||
pinMode(r_open, OUTPUT);
|
||||
pinMode(wind, INPUT);
|
||||
pinMode(rain, INPUT);
|
||||
|
||||
remote.enableReceive(0); // Receiver on interrupt 0 => that is pin #2
|
||||
|
||||
relayOn(r_close, true); // close the awning to return it to its base state
|
||||
printStatus();
|
||||
}
|
||||
|
||||
void loop()
|
||||
{
|
||||
// if serial is available, check user's input for char 'u' for date update
|
||||
if (Serial.available() > 0)
|
||||
{
|
||||
char userInput = Serial.read();
|
||||
if (userInput == 'u')
|
||||
{
|
||||
setNewDateTimeFromSerial();
|
||||
}
|
||||
}
|
||||
|
||||
// Extract hour and month
|
||||
int hour = (rtc.formatTime()[0] - '0') * 10 + (rtc.formatTime()[1] - '0');
|
||||
int month = (rtc.formatDate()[0] - '0') * 10 + (rtc.formatDate()[1] - '0');
|
||||
|
||||
// handle actions
|
||||
handleTimeBasedActinos(hour, month);
|
||||
handleWeatherBasedActions();
|
||||
handleRemoteControlActions();
|
||||
|
||||
// printStatus();
|
||||
delay(250);
|
||||
}
|
||||
|
||||
void relayOn(int pin, bool controller = false)
|
||||
{
|
||||
Serial.println("Turning on relay pin ");
|
||||
Serial.print(pin);
|
||||
Serial.print("\n");
|
||||
|
||||
Serial.println("isOpen: ");
|
||||
Serial.print(isOpen);
|
||||
Serial.print("\r\n");
|
||||
|
||||
if (pin == r_open)
|
||||
{
|
||||
isOpen = true;
|
||||
}
|
||||
|
||||
if (pin == r_close)
|
||||
{
|
||||
isOpen = false;
|
||||
}
|
||||
|
||||
if (pin == r_close && isOpen == false && controller == false)
|
||||
{
|
||||
Serial.println("Not closing - already closed");
|
||||
return;
|
||||
}
|
||||
|
||||
digitalWrite(pin, HIGH);
|
||||
delay(delayTime);
|
||||
digitalWrite(pin, LOW);
|
||||
delay(delayTime);
|
||||
}
|
||||
|
||||
void handleTimeBasedActions(int hour, int month)
|
||||
{
|
||||
if (month >= 5 && month <= 8)
|
||||
{
|
||||
if (hour >= 7 && hour <= 14 && !t_open)
|
||||
{
|
||||
Serial.println("Time to open");
|
||||
relayOn(r_open);
|
||||
t_open = !t_open;
|
||||
}
|
||||
else if (t_open)
|
||||
{
|
||||
Serial.println("Time to close");
|
||||
relayOn(r_close);
|
||||
t_open = !t_open;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void handleWeatherBasedActions()
|
||||
{
|
||||
// rain actions
|
||||
if (digitalRead(rain) != HIGH)
|
||||
{
|
||||
Serial.println("Rain detected, closing");
|
||||
relayOn(r_close);
|
||||
}
|
||||
|
||||
// wind actions
|
||||
if (digitalRead(wind) == HIGH)
|
||||
{
|
||||
Serial.println("Wind detected, closing");
|
||||
relayOn(r_close);
|
||||
}
|
||||
}
|
||||
|
||||
void handleRemoteControlActions()
|
||||
{
|
||||
if (remote.available())
|
||||
{
|
||||
int received = remote.getReceivedValue();
|
||||
Serial.println("Received " + received);
|
||||
|
||||
switch (received)
|
||||
{
|
||||
case rec_r_close:
|
||||
relayOn(r_close, true);
|
||||
break;
|
||||
case rec_r_led:
|
||||
relayOn(r_led, true);
|
||||
break;
|
||||
case rec_r_stop:
|
||||
relayOn(r_stop, true);
|
||||
break;
|
||||
case rec_r_open:
|
||||
relayOn(r_open, true);
|
||||
break;
|
||||
}
|
||||
|
||||
remote.resetAvailable();
|
||||
}
|
||||
}
|
||||
|
||||
void setNewDateTimeFromSerial()
|
||||
{
|
||||
Serial.println("Enter new date and time in format: YYYY MM DD HH MM SS");
|
||||
while (Serial.available() > 0)
|
||||
{
|
||||
String input = Serial.readStringUntil('\n');
|
||||
int year, month, day, hour, minute, second;
|
||||
|
||||
if (sscanf(input.c_str(), "%d %d %d %d %d %d", &year, &month, &day, &hour, &minute, &second) == 6)
|
||||
{
|
||||
rtc.setDate(day, rtc.getWeekday(), month, false, year - 2000);
|
||||
rtc.setTime(hour, minute, second);
|
||||
Serial.println("Time set successfully!");
|
||||
}
|
||||
else
|
||||
{
|
||||
Serial.println("Invalid input. Please enter the date and time in the format: YYYY MM DD HH MM SS");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void printStatus()
|
||||
{
|
||||
// print current status
|
||||
Serial.println("Time:");
|
||||
Serial.print(rtc.formatTime());
|
||||
Serial.print(" | ");
|
||||
Serial.print(rtc.formatDate());
|
||||
Serial.print("\r\n");
|
||||
|
||||
Serial.println("isOpen: ");
|
||||
Serial.print(isOpen);
|
||||
Serial.print("\r\n");
|
||||
}
|
Loading…
Reference in New Issue
Block a user