03 ruj Tipkalo i digitalni izlazni moduli
Tipkalo je digitalni ulazni modul kojim ćete u ovom primjeru najprije uključivati i isključivati svjetleću diodu, a zatim pokretati i zaustavljati rad ventilatora.
Svjetleća dioda i ventilator radit će kao digitalni izlazni moduli. To znači da će se nalaziti u jednom od dva moguća stanja – bit će ili uključeni ili isključeni. U stanju uključenosti svjetleća dioda će svijetliti svojim najjačim intenzitetom, a ventilator će se okretati najvećom brzinom.
Ovim primjerom je prikazano kako digitalni ulazni modul (tipkalo) upravlja radom digitalnih izlaznih modula (svjetleća dioda i ventilator).
Zadatak
Izradite program kojim će svaki put kad se pritisne tipkalo, svjetleća dioda zasvijetliti kao znak da je tipkalo pritisnuto. Dodatno, neka se u isto vrijeme kao i vanjska svjetleća dioda i na micro:bitu uključuje i isključuje dioda koja se nalazi na sredini zaslona (pozicija: 2, 2).
Kad prebacite program na micro:bit i isprobajte kako radi, odspojite svjetleću diodu i na njezino mjesto spojite ventilator te ga pokrenite pritiskom na tipkalo.
Spajanje modula
U pločicu smjestite micro:bit. Na mjestima za spajanje elektroničkih modula kablovima povežite i spojite tipkalo te svjetleću diodu kao što vidite na prikazu spoja. Tipkalo kao digitalni ulazni modul se može spojiti na bilo koji izvod na pločici. Svjetleća dioda može biti digitalni ili analogni izlazni modul te se isto može spojiti na bilo koji izvod. U ovom primjeru, prema prikazu spajanja, tipkalo je spojeno na izvod P0, a svjetleća dioda na izvod P1. USB kabelom povežite micro:bit s računalom kako bi spoj dobio napajanje i kako biste prebacili program na micro:bit.
Sve naredbe u ovom programu smjestite u forever petlju jer želite da se program neprestano izvršava. To jest, da svaki put kad pritisnete na tipkalo, uključite svjetleću diodu (ili pokrenete rad ventilatora).
U programu je najprije potrebno definirati uvjet koji mora biti ostvaren kako bi svjetleća dioda zasvijetlila. Uvjet za to je pritisak na tipkalo. Tipkalo je digitalni ulazni modul spojen na izvod P0. Svaki put kad se pritisne tipkalo, izvod P0 poprima vrijednost 1. Kad se tipkalo otpusti, vrijednost izvoda P0 postaje 0.
1. korak
Iz kategorije Logic odaberite naredbu if then else i smjestite je u forever petlju. U if dijelu naredbe postavite operator za usporedbu (jednako) koja se nalazi u kategoriji Logic. Time ćete moći provjeriti uvjet koji mora glasiti: očitana vrijednost na izvodu P0 je jednaka 1.
S lijeve strane usporedbe potrebno je postaviti blok koji predstavlja digitalno očitanu vrijednost izvoda P0. Taj blok se nalazi u kategoriji Pins. Pins kategoriju ćete pronaći u Advanced dijelu kategorija kad ga otvorite.
2. korak
Iz Pins odaberite prvi blok digital read pin P0. Njime micro:bit provjerava digitalni signal na izvodu P0. Taj blok postavite s lijeve strane usporedbe, a s desne upišite broj 1. Sada je definiran uvjet kojim se provjerava je li vrijednost digitalnog signala na izvodu P0 jednaka 1. Drugim riječima, je li pritisnuto tipkalo u spoju.
Ako je uvjet ostvaren (tipkalo je pritisnuto), svjetleća dioda mora zasvijetliti. To ćete u programskome kôdu definirati u then dijelu naredbe. Svjetleća dioda je u ovom spoju digitalni izlazni modul spojen na izvodu P1. Preko izvoda P1 svjetleća dioda će primiti digitalni signal. Micro:bit kontrolira taj proces prateći stanje na izvodu P0. Kada micro:bit s izvoda P0 dobije digitalni signal 1, tada na izvodu P1 postavlja vrijednost digitalnog signala na 1.
3. korak
Naredba kojim micro:bit na izvode postavlja vrijednost digitalnog signala nalazi se u kategoriji Pins i zove se digital write pin P0 to 0. U toj naredbi možete odabrati izvod koji vam treba te upisati vrijednost digitalnog signala koja može biti 0 ili 1.
Odaberite naredbu digital write pin P0 to 0 i smjestite ju u then dio naredbe. Pritiskom na strelicu uz parametar P0, izmijenite P0 u P1 te umjesto 0 kao argument naredbe upišite 1.
Time je definirano ako je vrijednost digitalnog signala na izvodu P0 jednaka 1 (tipkalo je pritisnuto), tada izvod P1 poprima vrijednost 1 (svjetleća dioda svijetli).
4. korak
U else dijelu sada valja definirati što će se događati kada uvjet nije ostvaren (kad tipkalo nije pritisnuto). Kad tipkalo nije pritisnuto, svjetleća dioda neće svijetliti. To znači da će stanje izvoda P1 na kojem je dioda spojena biti 0. U else dio naredbe postavite naredbu digital write pin P0 to 0 te umjesto P0 odaberite P1.
5. korak
I na samom micro:bitu možete pratiti rad tipkala i svjetleće diode. U if dio dodajte naredbu show leds iz kategorije Basic i u njoj odaberite diodu koja se nalazi na sredini zaslona. U else dio dodajte naredbu clear screen iz kategorije Basic u dijelu more. Tim naredbama će se i na zaslonu micro:bita uključivati i isključivati dioda ovisno o tome je li tipkalo pritisnuto. Primijetite da svjetleće diode (i vanjska i ona na micro:bitu) svijetle onoliko dugo koliko je tipkalo pritisnuto.
Prebacite program na micro:bit i isprobajte ga najprije sa svjetlećom diodom, a zatim s ventilatorom.