mirror of
https://github.com/Derisis13/Shutter.git
synced 2025-12-06 19:32:48 +01:00
62 lines
1.9 KiB
C
Executable File
62 lines
1.9 KiB
C
Executable File
#include "idozites.h"
|
|
#include "mozgatas_demo.h"
|
|
#include <stdio.h>
|
|
#define FILEPATH "menetrend.txt"
|
|
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
* REDŐNY AUTOMATA
|
|
* ---------------
|
|
* C program az itthoni redőnyök automatizálására egy kiszuperált router és egy kompatibilis távirányító segítségével.
|
|
* A programot egy időzítő (Cron) hívja meg fix időközönként.
|
|
* Egy helyi fájlból, a menetrend.txt-ből olvassa ki a felhúzások és lehúzások idejét, ha annyi az idő, fel/lehúzza,
|
|
* ez egy heti menetrendet képes tárolni és végrehajtani.
|
|
* GPIO-kkal vezérli a távirányító gombmátrixát.
|
|
* A programot OpenWrt 19.07-re fordítom. HW: D-Link DIR-600. (fordítási környezethez:$ source openwrt.config)
|
|
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
|
|
int main ()
|
|
{
|
|
redony ercsi13[] = {
|
|
{
|
|
1, 0, 0 //fiúszoba
|
|
},
|
|
{
|
|
2, 0, 0 //lányszoba
|
|
},
|
|
{
|
|
3, 0, 0 //nappali bal
|
|
},
|
|
{
|
|
4, 0, 0 //nappali jobb
|
|
},
|
|
{
|
|
5, 0, 0 //szülői szoba
|
|
},
|
|
{
|
|
6, 0, 0 //konyha
|
|
},
|
|
{
|
|
7, 0, 0 //előtető (lehúzás = kieresztés, felhúzás = behúzás)
|
|
}
|
|
};
|
|
|
|
//beolvassuk minden redőny időpontját
|
|
for (int i = 0; i < 7; ++i)
|
|
{
|
|
FILE *schedule = fopen (FILEPATH, "r");
|
|
find_today (schedule);
|
|
get_timing (&ercsi13[i], schedule);
|
|
fclose (schedule);
|
|
}
|
|
|
|
/*
|
|
//exportáljuk a gpio-kat, hogy tudjuk használni őket
|
|
export ();
|
|
*/
|
|
|
|
//leellenőrizzük az időpontokat, minden redőny úgy mozog, ahhogy azt megmondtuk neki.
|
|
for (int i = 0; i < 7; ++i)
|
|
{
|
|
set_ch (&ercsi13[i]);
|
|
press_button (check_timing (&ercsi13[i]));
|
|
}
|
|
return 0;
|
|
} |