mirror of
https://github.com/Derisis13/Shutter.git
synced 2025-12-06 19:32:48 +01:00
Version 1.1: Second working version. First commit. Added features: disabling channels for the day by having the same raise and lower timings.
This commit is contained in:
62
main.c
Executable file
62
main.c
Executable file
@@ -0,0 +1,62 @@
|
||||
#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;
|
||||
}
|
||||
Reference in New Issue
Block a user