This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| et:exercises:digi [2010/02/04 16:35] – mikk.leini | et:exercises:digi [2020/07/20 12:00] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | < | ||
| + | ====== Harjutusülesanded ====== | ||
| + | Eesmärgiks on koostada programm, mis täidab kirjeldatud ülesannet. | ||
| + | |||
| + | ===== Soojendusülesanne ===== | ||
| + | |||
| + | * Süütab nupu S1 vajutamisel ühe LED-i, S2 vajutamisel kaks LED-i, S3 vajutamisel kolm LED-i.(Lahendus: | ||
| + | |||
| + | /* NB! Versioon 3 link on katki! */ | ||
| + | |||
| + | ===== Algajale ===== | ||
| + | |||
| + | - Imiteerib ülekäiguraja autode valgusfoori tööd. Kuni pole vajutatud ühelegi nupule, põleb autodele roheline LED. Pärast suvalisele nupule vajutamist hakkab roheline kolmeks sekundiks vilkuma, seejärel süttib kolmeks sekundiks kollane ning kümneks sekundiks punane ja lõpuks jääb uuesti pidevalt põlema roheline LED. (Lahendus: {{: | ||
| + | - Loendab nupuvajutusi. Vajutus loetakse lõppenuks alles siis, kui nupp vabastatakse. Tulemus kuvatakse kahendkoodis LED-idel. Maksimaalne tulemus kolmel LED-il on 2< | ||
| + | - Vajutades nupule S1, süttib korraga LED1 ja LED3, vajutades nupule S2, süttib LED2, vajutades nupule S3, kustuvad kõik LED-id. Operatsioonid tuleb teostada otse vastavate registrite väärtusi muutes (ilma Kodulabori teegita). (Lahendus: {{: | ||
| + | - Loendab nupuvajutusi. Tulemus kuvatakse LED-i vilkumistega. Pärast igat nupule vajutamist suureneb vilgutamiste arv ühe võrra. Valida võib suvalise nupu. LED-i vilgutamiseks kasutada alamfunktsiooni, | ||
| + | - Vajutades nupule S1, vilgutab punane LED morsekoodis " | ||
| + | |||
| + | ===== Edasijõudnule ===== | ||
| + | |||
| + | - Igale nupule kolmest vastab üks LED, mis süttib nuppu all hoides. Süütamiseks või kustutamiseks tuleb kasutada registreid ja teha võib seda ainult ühe omistamistehtega (vihje: kasutada bitinihutust). | ||
| + | - Vajutades nuppe järjekorras S3 – S2 - S1, süttib roheline LED. Kõigi teiste kombinatsioonide korral süttib punane LED. Iga nupuvajutuse korral vilgatab kollane LED, mis kinnitab nupule vajutust. | ||
| + | - Igale LED-ile vastab üks nupp. Kontroller vilgutab LED-e suvaliselt ja kasutaja peab nuppe vajutades sama jada kordama. Vilkumiste jada läheb iga korraga järjest pikemaks, lisades eelnevale jadale uue suvalise LED-i. Pärast iga kasutaja sisestuskorda kontrollitakse, | ||
| + | - Programm mõõdab reaktsiooniaega. Suvalise LED-i süttides peab kasutaja võimalikult kiiresti vajutama nuppu LED-i all. Aeg, mil LED süttib, on juhuslik, kuid vähemalt 100 ms. Reaktsiooniaega näidatakse kasutajale millisekundites LCD ekraanil. Nuppude väärtust ei tohi lugeda kontaktide põrkumist filtreeriva funktsiooniga, | ||
| + | |||
| + | < | ||
| + | |||
| + | ===== Kordamisküsimused ===== | ||
| + | |||
| + | - Mis on tehete " | ||
| + | - Mis on tehete " | ||
| + | - Kirjutage avaldis, milles kasutate võrrandit "x = x + 1" kaksteist korda. | ||
| + | - Kuidas kirjutate C-keeles lõputu tsükli? Esitage kaks erinevat varianti. | ||
| + | - Millist tüüpi muutuja valite C-keeles, et esitada positiivseid arve vahemikus 7 kuni 154? | ||
| + | - Milline register määrab ära pordi suuna? Tooge pordi näide sisendi ja väljundi seadistamise kohta. | ||
| + | - Milliste meetoditega saab elimineerida lüliti kontaktide põrkumisest tekkivaid väärlülitusi? | ||
| + | - Mida tähendab termin bitinihutus? | ||
| + | - Miks kasutatakse lülitite juures //pull-up// takistit? Mille järgi määratakse selle takistus? | ||
| + | - Arvutage LED voolu piirava takisti väärtus, kui toitepinge on 5 V, LED päripinge 2,7 V ja vool 30 mA. | ||