<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="sk">
	<id>https://senzor.robotika.sk/sensorwiki/index.php?action=history&amp;feed=atom&amp;title=R%C3%BDchlokurz_micro%3Abit%2F02_Anim%C3%A1cia</id>
	<title>Rýchlokurz micro:bit/02 Animácia - História úprav</title>
	<link rel="self" type="application/atom+xml" href="https://senzor.robotika.sk/sensorwiki/index.php?action=history&amp;feed=atom&amp;title=R%C3%BDchlokurz_micro%3Abit%2F02_Anim%C3%A1cia"/>
	<link rel="alternate" type="text/html" href="https://senzor.robotika.sk/sensorwiki/index.php?title=R%C3%BDchlokurz_micro:bit/02_Anim%C3%A1cia&amp;action=history"/>
	<updated>2026-09-30T00:34:45Z</updated>
	<subtitle>História úprav pre túto stránku na wiki</subtitle>
	<generator>MediaWiki 1.42.1</generator>
	<entry>
		<id>https://senzor.robotika.sk/sensorwiki/index.php?title=R%C3%BDchlokurz_micro:bit/02_Anim%C3%A1cia&amp;diff=19686&amp;oldid=prev</id>
		<title>Balogh: Vytvorená stránka „&lt;!-- Názov stránky: Rýchlokurz micro:bit/02 Animácia --&gt; ← Predchádzajúca lekcia | &#039;&#039;&#039;⌂ Obsah kurzu&#039;&#039;&#039; | Nasledujúca lekcia →  == Čo sa naučíte == * nakresliť vlastný obrázok, * vytvoriť animáciu zo striedajúcich sa obrázkov, * čo je &#039;&#039;&#039;nekonečný cyklus&#039;&#039;&#039; a prečo ho majú takmer všetky programy pre mikrokontroléry.  == Vysvet…“</title>
		<link rel="alternate" type="text/html" href="https://senzor.robotika.sk/sensorwiki/index.php?title=R%C3%BDchlokurz_micro:bit/02_Anim%C3%A1cia&amp;diff=19686&amp;oldid=prev"/>
		<updated>2026-09-28T07:24:41Z</updated>

		<summary type="html">&lt;p&gt;Vytvorená stránka „&amp;lt;!-- Názov stránky: Rýchlokurz micro:bit/02 Animácia --&amp;gt; &lt;a href=&quot;/sensorwiki/index.php/R%C3%BDchlokurz_micro:bit/01_V%C3%BDpis_na_displej&quot; title=&quot;Rýchlokurz micro:bit/01 Výpis na displej&quot;&gt;← Predchádzajúca lekcia&lt;/a&gt; | &amp;#039;&amp;#039;&amp;#039;&lt;a href=&quot;/sensorwiki/index.php/R%C3%BDchlokurz_micro:bit&quot; title=&quot;Rýchlokurz micro:bit&quot;&gt;⌂ Obsah kurzu&lt;/a&gt;&amp;#039;&amp;#039;&amp;#039; | &lt;a href=&quot;/sensorwiki/index.php/R%C3%BDchlokurz_micro:bit/03_Premenn%C3%A1&quot; title=&quot;Rýchlokurz micro:bit/03 Premenná&quot;&gt;Nasledujúca lekcia →&lt;/a&gt;  == Čo sa naučíte == * nakresliť vlastný obrázok, * vytvoriť animáciu zo striedajúcich sa obrázkov, * čo je &amp;#039;&amp;#039;&amp;#039;nekonečný cyklus&amp;#039;&amp;#039;&amp;#039; a prečo ho majú takmer všetky programy pre mikrokontroléry.  == Vysvet…“&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nová stránka&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;!-- Názov stránky: Rýchlokurz micro:bit/02 Animácia --&amp;gt;&lt;br /&gt;
[[Rýchlokurz micro:bit/01 Výpis na displej|← Predchádzajúca lekcia]] | &amp;#039;&amp;#039;&amp;#039;[[Rýchlokurz micro:bit|⌂ Obsah kurzu]]&amp;#039;&amp;#039;&amp;#039; | [[Rýchlokurz micro:bit/03 Premenná|Nasledujúca lekcia →]]&lt;br /&gt;
&lt;br /&gt;
== Čo sa naučíte ==&lt;br /&gt;
* nakresliť vlastný obrázok,&lt;br /&gt;
* vytvoriť animáciu zo striedajúcich sa obrázkov,&lt;br /&gt;
* čo je &amp;#039;&amp;#039;&amp;#039;nekonečný cyklus&amp;#039;&amp;#039;&amp;#039; a prečo ho majú takmer všetky programy pre mikrokontroléry.&lt;br /&gt;
&lt;br /&gt;
== Vysvetlenie: cyklus ==&lt;br /&gt;
&lt;br /&gt;
Animácia je rýchle striedanie obrázkov, presne ako vo filme. Keby sme chceli, aby smajlík žmurkal stále dookola, museli by sme príkazy &amp;#039;&amp;#039;zobraz – počkaj – zobraz – počkaj&amp;#039;&amp;#039; napísať nekonečne veľakrát. Namiesto toho použijeme &amp;#039;&amp;#039;&amp;#039;cyklus&amp;#039;&amp;#039;&amp;#039; (anglicky &amp;#039;&amp;#039;loop&amp;#039;&amp;#039;): konštrukciu, ktorá opakuje skupinu príkazov. Príkazy vnútri cyklu sa nazývajú &amp;#039;&amp;#039;&amp;#039;telo cyklu&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Blok &amp;#039;&amp;#039;&amp;#039;forever&amp;#039;&amp;#039;&amp;#039; je &amp;#039;&amp;#039;&amp;#039;nekonečný cyklus&amp;#039;&amp;#039;&amp;#039;: jeho telo sa vykoná, a keď program príde na koniec, pokračuje znova od začiatku tela, a tak stále dookola, kým micro:bit nevypnete.&lt;br /&gt;
&lt;br /&gt;
Na počítači program po skončení práce skončí a vráti riadenie operačnému systému. Mikrokontrolér však žiadny operačný systém, ktorému by mohol „vrátiť slovo“, nemá. Jeho úlohou je väčšinou nepretržite niečo sledovať a riadiť, napr. merať teplotu a zapínať kúrenie. Preto majú takmer všetky programy pre mikrokontroléry rovnakú stavbu:&lt;br /&gt;
&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;príprava&amp;#039;&amp;#039;&amp;#039; – vykoná sa raz po zapnutí (blok &amp;#039;&amp;#039;on start&amp;#039;&amp;#039;),&lt;br /&gt;
# &amp;#039;&amp;#039;&amp;#039;hlavná slučka&amp;#039;&amp;#039;&amp;#039; – opakuje sa donekonečna (blok &amp;#039;&amp;#039;forever&amp;#039;&amp;#039;).&lt;br /&gt;
&lt;br /&gt;
Túto stavbu uvidíte aj v iných systémoch, napr. v prostredí Arduino sa tieto dve časti volajú &amp;lt;code&amp;gt;setup()&amp;lt;/code&amp;gt; a &amp;lt;code&amp;gt;loop()&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Program: žmurkajúci smajlík ==&lt;br /&gt;
&lt;br /&gt;
Otvorený smajlík je medzi hotovými ikonami, ale žmurkajúci nie. Ten si nakreslíme sami pomocou bloku &amp;#039;&amp;#039;&amp;#039;show leds&amp;#039;&amp;#039;&amp;#039; (kategória &amp;#039;&amp;#039;Basic&amp;#039;&amp;#039;), v ktorom klikaním rozsvecujete a zhasínate jednotlivé LED.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery heights=200px mode=&amp;quot;packed&amp;quot;&amp;gt;&lt;br /&gt;
Súbor:Microbit-Kurz02.png|&amp;#039;&amp;#039;Program v blokoch...&amp;#039;&amp;#039;&lt;br /&gt;
Súbor:Microbit-Kurz02Run.png|&amp;#039;&amp;#039;...a jeho beh v simulátore&amp;#039;&amp;#039;&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tabs&amp;gt;&lt;br /&gt;
&amp;lt;tab name=&amp;quot;JavaScript&amp;quot;&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
basic.forever(function () {&lt;br /&gt;
    basic.showIcon(IconNames.Happy)&lt;br /&gt;
    basic.pause(1000)&lt;br /&gt;
    basic.showLeds(`&lt;br /&gt;
        . . . . .&lt;br /&gt;
        . # . . .&lt;br /&gt;
        . . . . .&lt;br /&gt;
        # . . . #&lt;br /&gt;
        . # # # .&lt;br /&gt;
        `)&lt;br /&gt;
    basic.pause(200)&lt;br /&gt;
})&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/tab&amp;gt;&lt;br /&gt;
&amp;lt;tab name=&amp;quot;Python&amp;quot;&amp;gt;&amp;lt;syntaxhighlight lang=&amp;quot;python&amp;quot;&amp;gt;&lt;br /&gt;
def on_forever():&lt;br /&gt;
    basic.show_icon(IconNames.HAPPY)&lt;br /&gt;
    basic.pause(1000)&lt;br /&gt;
    basic.show_leds(&amp;quot;&amp;quot;&amp;quot;&lt;br /&gt;
        . . . . .&lt;br /&gt;
        . # . . .&lt;br /&gt;
        . . . . .&lt;br /&gt;
        # . . . #&lt;br /&gt;
        . # # # .&lt;br /&gt;
        &amp;quot;&amp;quot;&amp;quot;)&lt;br /&gt;
    basic.pause(200)&lt;br /&gt;
basic.forever(on_forever)&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&amp;lt;/tab&amp;gt;&lt;br /&gt;
&amp;lt;/tabs&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Ako to funguje ==&lt;br /&gt;
&lt;br /&gt;
Vlastný obrázok sa v textovom zápise kreslí priamo znakmi: &amp;lt;code&amp;gt;#&amp;lt;/code&amp;gt; znamená rozsvietenú LED, &amp;lt;code&amp;gt;.&amp;lt;/code&amp;gt; zhasnutú. Päť riadkov po päť znakov presne zodpovedá displeju.&lt;br /&gt;
&lt;br /&gt;
Smajlík svieti 1 sekundu s otvorenými očami a 0,2 sekundy žmurká. Potom sa telo cyklu začne znova. Skutočné časy sú o niečo dlhšie, pretože bloky &amp;#039;&amp;#039;show icon&amp;#039;&amp;#039; a &amp;#039;&amp;#039;show leds&amp;#039;&amp;#039; samy po zobrazení chvíľu počkajú (približne 0,4 – 0,6 s). Na presné časovanie sa preto nespoliehajte.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Odsadenie&amp;#039;&amp;#039;&amp;#039; (medzery na začiatku riadkov) ukazuje, ktoré príkazy patria do tela cyklu. V JavaScripte je telo navyše uzavreté v zložených zátvorkách &amp;lt;code&amp;gt;{ }&amp;lt;/code&amp;gt; a odsadenie slúži len na lepšiu čitateľnosť. V Pythone zátvorky nie sú a &amp;#039;&amp;#039;&amp;#039;odsadenie je povinné&amp;#039;&amp;#039;&amp;#039;: práve ono určuje, čo je vnútri cyklu. V blokoch to isté vyjadruje to, že bloky sú vložené do „čeľustí“ bloku &amp;#039;&amp;#039;forever&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
Možno vás zarazí, že v Pythone je &amp;lt;code&amp;gt;def on_forever():&amp;lt;/code&amp;gt; a v JavaScripte &amp;lt;code&amp;gt;function ()&amp;lt;/code&amp;gt;. Takto sa zapisuje &amp;#039;&amp;#039;&amp;#039;funkcia&amp;#039;&amp;#039;&amp;#039;, teda pomenovaná skupina príkazov, ktorá sa vykoná neskôr. Posledný riadok &amp;lt;code&amp;gt;basic.forever(on_forever)&amp;lt;/code&amp;gt; hovorí: „túto skupinu príkazov opakuj stále dookola“. Funkciám sa budeme podrobnejšie venovať v lekcii o tlačidlách. Zatiaľ stačí vedieť, že celý obsah funkcie tvorí telo cyklu.&lt;br /&gt;
&lt;br /&gt;
== Časté chyby ==&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Chýbajúca pauza.&amp;#039;&amp;#039;&amp;#039; Bez pauzy sa obrázky striedajú tak rýchlo, že ich oko nerozlíši.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Program je v &amp;#039;&amp;#039;on start&amp;#039;&amp;#039; namiesto vo &amp;#039;&amp;#039;forever&amp;#039;&amp;#039;.&amp;#039;&amp;#039;&amp;#039; Animácia potom prebehne len raz.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Zlé odsadenie v Pythone.&amp;#039;&amp;#039;&amp;#039; Príkaz, ktorý nie je odsadený, už nepatrí do tela cyklu.&lt;br /&gt;
&lt;br /&gt;
== Úlohy ==&lt;br /&gt;
# Zmeňte časy tak, aby smajlík žmurkal pomaly a „ospalo“.&lt;br /&gt;
# Nakreslite animáciu tlčúceho srdca: striedajte ikony &amp;#039;&amp;#039;Heart&amp;#039;&amp;#039; a &amp;#039;&amp;#039;Small Heart&amp;#039;&amp;#039;.&lt;br /&gt;
# Vytvorte animáciu aspoň zo štyroch vlastných obrázkov, napr. otáčajúcu sa čiaru ( | / — \ ) alebo panáčika, ktorý máva.&lt;br /&gt;
# Do bloku &amp;#039;&amp;#039;on start&amp;#039;&amp;#039; pridajte príkaz, ktorý pred začiatkom animácie raz zobrazí text „START“. Uvedomte si, prečo sa zobrazí len raz.&lt;br /&gt;
&lt;br /&gt;
[[Rýchlokurz micro:bit/01 Výpis na displej|← Predchádzajúca lekcia]] | &amp;#039;&amp;#039;&amp;#039;[[Rýchlokurz micro:bit|⌂ Obsah kurzu]]&amp;#039;&amp;#039;&amp;#039; | [[Rýchlokurz micro:bit/03 Premenná|Nasledujúca lekcia →]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Rýchlokurz micro:bit]]&lt;/div&gt;</summary>
		<author><name>Balogh</name></author>
	</entry>
</feed>