Diskuze: Časovač

Člen

Zobrazeno 11 zpráv z 11.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |


Tak v určitých intervalech nebo v určitých časech? Trochu rozdíl 
Máš 5 různých časů nebo máš jeden čas a pak 4 časové konstanty tipu 5 minut delay?
Na přesný kód určitě jo, na daní postupu jak na to je to fuk 
Ahoj,
omlouvám se, psal jsem to narychlo a asi jsem neposkytl dostatek informací...
Zároveň se omlouvám, že to doplňuji až nyní.
Používám microcontroler ATmega328p s Arduino bootloaderem, tedy platforma Arduino.
Jsou to dané časy. Intervalem jsem myslel rozmezí dvou časů, po které
bude pin zapnutý. Ty časy by měli být uložené v nějaké proměnné,
ideálně asi poli, později je budu chtít měnit přes webové rozhraní. Ale
nevím přesně, jak časy ukládat, stačí to s přesností na minuty. Napadlo
mě jako dvě pole – jedno pro hodiny, druhé pro minuty, a nebo ukládat
např. počet minut od začátku dne...
Díky.
Řešení je jistě víc - já používám toto :
typedef struct
{
int startTime ;
int stopTime ;
} TimeInterval;
TimeInterval intervals[5];
intervals[1].startTime = 525;//atd....
Hodnoty jsou, tak jak jsi uvažoval v minutách - tedy v rozmezí 0-1440 pro
24h
A to celé samozřejmě zálohovat v eeprom
Díky, co je to to typedef struct? To je nějaký zvláštní typ pole?
A kam v tom dám kód pro zapnutí/vypnutí pinu? Do těch {} za stopTime něco
takového:?
digitalWrite(pin, !digitalRead(pin));
A jéje - mělo mně napadnout , že jsi C-čkem (téměř) nepolíbený 
Ale v podstatě jsi jen obětí Arduinovského "instantního" přístupu k programování.
Nejdřív ti teda vysvětlím, a co se ptáš :
typedef struct znamená, že si definuješ vlastní datový typ a že to bude struktura - a ano, v jistém smyslu se dá říct,že struktura je jistý "zvláštní" typ pole jen se k jednotlivým položkám nepřistupuje pomocí jejich indexu, ale pomocí jejich jména
v té struktuře máš pojmenované dvě proměnné typu int kam se ukládají požadované časy - podle tvého zadání je to interval "od-do"
dále
TimeInterval intervals[5];
je už skutečné pole výše definovaných struktur a pomocí
intervals[1].startTime = 525;
int cas_x =intervals[2].stopTime ;
můžeš zapisovat/číst jejich hodnoty
a výstupy budeš ovládat
if(time_now == intervals[1].startTime )digitalWrite(pin, HIGH);
else if(time_now == intervals[1].stopTime )digitalWrite(pin, LOW);
přičemž time_now bude nějaký čas generovaný nějakým obvodem reálného času který tam jistě máš abys věděl, kdy spínat výstupy
na druhou stranu ale nečekej, že ti tu budeme dávat školení ze základů
jazyka C - v případě arduina dokonce C++
na to je spousta hotových tutoriálů - třeba právě zde
já osobně ti od této chvíle jsem ochotný pomoct s jakýmkoliv tvým řešením či pokusem o něj případně otázky spojené s hardwarem - na otázky "jak mám udělat ?" už reagovat nebudu
a ano, v jistém smyslu se dá říct,že struktura je jistý "zvláštní" typ pole jen se k jednotlivým položkám nepřistupuje pomocí jejich indexu, ale pomocí jejich jména
zajímavě podaná definice struktury 
Pokud máš lepší vysvětlení pro někoho, kdo do dneška neměl o
existenci struktury tušení tak prosím. 
Když se nad tím zamyslíš, tak struktura je fyzicky jen "pole" (chápej jako
oblast) bajtů v paměti
a tedy
int cislo[2];
a
struct
{
int cislo1;
int cislo2;
} cislo;
jedno jest a můžeš na to aplikovat co jsem napsal
Struktura je sdružený datový typ složený ze dvou nebo více proměnných nazývaných prvky (členy, složky) struktury. Na rozdíl od pole, kde jsou všechny prvky stejného typu, může mít každý prvek struktury svůj vlastní datový typ platný v jazyce C, který se může lišit od typu ostatních prvků.
Obecný formát definice struktury:
struct jmeno_typu {
typ prvek1;
typ prvek2;
...
typ prvekN;
} seznam_promennych;
Položka jmeno_typu a seznam_promennych není povinná, ale musí vždy být uvedena alespon jedna z nich. Pro pevný počet struktur není potřeba zadávat jmeno_typu. Uvedeme-li jmeno_typu, můžeme deklarovat proměnné zvlášt dle potřeby následujícím způsobem:
struct jmeno_typu seznam_promennych;
Zobrazeno 11 zpráv z 11.