Microbit – tlačidlá

Na Microbite sú po bokoch displeja 2 tlačidlá označené ako “A” a “B”. Pomocou podmienky (if) v programe a príslušného príkazu môžeme určiť čo sa vykoná ak budú tlačidlá stlačené:

from microbit import * 
while True:         
        if button_a.is_pressed():                 
            display.show(Image.HAPPY)         
        else:                 
            display.show(Image.SAD) 

Ak sa stlačí tlačidlo A ( if button_a.is_pressed(): ) tak sa zobrazí smajlík inak bude zobrazená smutná tvárička. Podmienka sa opakuje v cykle while True , ktorý sa opakuje neustále. Tento cyklus sa používa veľmi často.

Okrem príkazu button_a.is_pressed(), ktorý zisťuje len či je momentálne tlačidlo stlačené je možné použiť aj príkaz button_a.was_pressed(). Ten sa používa na zistenie či bolo stlačené ale teraz už nie je stlačené:

from microbit import * 
while True:         
        if button_a.was_pressed():                 
            display.show(Image.HAPPY)         
        else:                 
            display.show(Image.SAD)  
        sleep(1000)

Príkaz sleep(1000) zastaví opakovanie cyklu na 1000 milisekúnd (1 sekunda). Microbit si chvílku pamätá, že bol stlačené tlačidlo A a program teda vykreslí smajlíka. Po chvíli to zabudne a vykreslí sa smutná tvárička.

Ak chcete zistiť či je stlačené tlačidlo A aj B zároveň a zároveň aj zistiť stlačenie obidvoch tlačidiel samostatne je najlepšie to napísať takto:

from microbit import * 
while True:     
        if button_a.is_pressed() and button_b.is_pressed():
            display.scroll("AB")              
        elif button_a.is_pressed():         
            display.show("A")     
        elif button_b.is_pressed():         
            display.show("B")     
        sleep(100) 

Pre zistenie počtu stlačení tlačidla môžete použiť príkazy button_a.get_presses() alebo button_b.get_presses() :

from microbit import * 
while True:    
        sleep(2000)    
        pocet = button_a.get_presses()    
        display.scroll(str(pocet)) 

Cyklus sa zastaví na 2 sekundy a potom vypíše počet stlačení tlačidla A. Počet stlačení sa uloží do premennej pocet ako číslo. Skôr ako sa vypíše na displej sa musí previesť na reťazec ( str(pocet) ) – to je bežný proces v programovacom jazyku Python.

Leave a Reply

Your email address will not be published. Required fields are marked *