this dir | view | cards | source | edit | dark top

Systémy

Systémy
Cviko

6 cvičení – 6 domácích úkolů odevzdávaných do recodexu

plus závěrečná úloha v SISu

Poznámky

k úkolu ze systémů – nemusí nás trápit oscilace, musíme udělat jednotný kód pro všechna tři tlačítka (přístup C nebo C++)

// předávání funkcí v C
struct Button;
typedef void(*action-f)(Button &b);
void increment(Button &b) { counter++; }
struct Button { int pin; bool down; action-f down; }
struct Button buttons[3];
button[0].down = &increment;
// třídy v C++
// virtuální funkce + virtuální destruktor
// když k nějaké virtuální metodě dám =0, tak mi to znemožní vytvořit samotnou třídu – u každého syna musím danou metodu přepsat
// nepoužívat operátor new
// chci mít pole tlačítek
Button *buttons[3];
// uděláme si globální proměnné pro jednotlivé typy (tři tlačítka) a pak jejich ukazatele uložíme do pole
// všechen kód na detekci změny nebo autorepeatu bude ve funkci loop
// můžeme si vybrat, který přístup se nám líbí víc
Poznámky

ReCodEx má problém s voláním funkcí v globálním scopu

u tříd dělá problém volání funkcí v konstruktoru a při přímé inicializaci vlastností objektu (stylem int t = millis();)

Poznámky

dají se používat dvě metody latchování

6. úloha

pasti

6. úloha

úkol

Hurá, máš hotovo! 🎉
Pokud ti moje kartičky pomohly, můžeš mi koupit pivo.