Šablona:Zadani uloh z MIT

Z MediaWiki SPŠ a VOŠ Písek
Skočit na navigaci Skočit na vyhledávání

1 - Napište a odlaďte program, který zajistí změnu rychlosti blikání LED:

  • po stlačení Tl1 LED svítí 0,25 s a nesvítí 0,25 s
  • po stlačení Tl2 LED svítí 0,75 s a nesvítí 0,75 s

2 - Napište a odlaďte program, který vyvolá při každém stisku tlačítka krátký tón (pípnutí). Kmitočet tónu bude 1 kHz a doba jeho trvání 0,25 s.

3 - Napište a odlaďte program, který po přijetí čísla 0 až 9 zobrazí na sedmisegmentovce odpovídající číslici, při příjmu čísla A až F zobrazí vodorovnou čárku. Přenosovou rychlost sériového kanálu nastavte na 9600 Bd.

4 - Napište a odlaďte program, který zajistí, aby po stisku tlačítka Tl1 svítila dioda plným jasem, po stisku tlačítka Tl2 přibližně polovičním jasem.

5 - Napište a odlaďte program, který zajistí postupné rozsvěcování a zhasínání diod podle následujícího obrázku. Dobu svícení jedné kombinace diod volte 0,5 s.

6 - Napište a odlaďte program, který při prvním stisku tlačítka spustí generování tónu o kmitočtu 440 Hz, při dalším stisku generování ukončí atd. Je třeba programově ošetřit zákmity tlačítka při jeho sepnutí.

7 - Napište a odlaďte program, který zajistí ovládání motorku tlačítky:

  • po stlačení Tl1 se motorek otáčí plnou rychlostí
  • po stlačení Tl2 se motorek otáčí přibližně poloviční rychlostí

8 - Napište a odlaďte program, který bude počítat počet stisků tlačítka a zobrazovat jej na 7segmentovce. Po desátém stisku se zobrazí nula a počítá se opět do devíti atd. Pro správnou činnost musí být programově ošetřeny zákmity tlačítka po jeho stisku.

9 - Napište a odlaďte program, který bude počítat přiváděné impulsy a jejich počet zobrazovat na 7segmentovce. Po desátém impulsu se zobrazí nula a počítá se opět do devíti atd.

10 - Napište a odlaďte program, který bude realizovat “běžícího hada“ na LED diodách podle následujícího obrázku. Časový interval mezi jednotlivými polohami svítících diod volte 0,25 s.

11 - Napište a odlaďte program, který bude realizovat na LED diodách běžící světlo podle následujícího obrázku. Rychlost běhu světla bude řízena tlačítky:

  • po stlačení Tl1 LED bude doba svícení každé diody 0,25 s
  • po stlačení Tl2 LED bude doba svícení každé diody 0,75 s

12 - Napište a odlaďte program, který bude realizovat posun svítící diody podle stisku tlačítek:

  • po stlačení Tl1 se svítící LED posune o jedno místo vpravo
  • po stlačení Tl2 se svítící LED posune o jedno místo vlevo

Pro správnou činnost musí být programově ošetřeny zákmity tlačítek po jejich stisku.

13 - Napište a odlaďte program, který bude počítat počet stisků tlačítka a zobrazovat jej na LED diodách jako binární číslo. Pro správnou činnost musí být programově ošetřeny zákmity tlačítka po jeho stisku:

14 - Napište a odlaďte program, který zajistí střídavé blikání diod: po dobu 5 s bliká s kmitočtem 5 Hz (100 ms svítí, 100 ms nesvítí) první dioda, pak 5 s bliká s kmitočtem 2 Hz druhá dioda atd.

15 - Napište a odlaďte program, který podle čísla 0h až Fh přijatého sériovým kanálem bude ovládat motorek: • číslo 1: zapnutí motorku na přibližně poloviční otáčky • číslo 2: zapnutí motorku na plné otáčky • číslo 0: vypnutí motorku Příjem jiných čísel je ignorován. Přenosovou rychlost nastavte na 9600 Bd.

16 - Napište a odlaďte program, který podle čísla přijatého sériovým kanálem rozsvítí odpovídající diodu: • číslo 0: svítí dioda na vývodu 0 • číslo 1: svítí dioda na vývodu 1 • : • číslo 7: svítí dioda na vývodu Po sériové lince se přenášejí bajty mající hodnotu hexadecimálních čísel 0 až F, přenosová rychlost je 9600 Bd.

17 - Napište a odlaďte program, který bude počítat a zobrazovat na 7segmentovce počet tisíců přijatých impulsů na vstup T0 z vnějšího zdroje signálu (po 9 naskočí 0 atd.)

18 - Na jednotlivé vývody brány P1 jsou připojeny LED diody (rozsvěcují se nulovou úrovní na vývodech), na vstup T0 brány P3 jsou přiváděny impulsy z vnějšího zdroje signálu. Napište a odlaďte program, který bude počítat a zobrazovat na LED diodách v BCD kódu počet tisíců přijatých impulsů na vstup T0 z vnějšího zdroje signálu.

19 - Napište a odlaďte program, který bude snímat binární číslo zadané DIP přepínači a vyhodnocovat je: • bude-li číslo obsahovat sudý počet jedniček, zobrazí se na 7segmentovce znak S • bude-li číslo obsahovat lichý počet jedniček, zobrazí se na 7segmentovce znak L • bude-li číslo nulové, zobrazí se na 7segmentovce znak 0 Při každé změně stavu DIP přepínačů blikne tečka na 7segmentovce (rozsvítí se na 0,25 s).

20 - Napište a odlaďte program, který bude snímat binární číslo zadané DIP přepínači a vyhodnocovat počet jedniček v něm: • nebude-li číslo obsahovat žádnou jedničku, zobrazí se na 7segmentovce číslice 0 • bude-li číslo obsahovat jednu jedničku, zobrazí se na 7segmentovce číslice 1 • bude-li číslo obsahovat dvě jedničky, zobrazí se na 7segmentovce číslice 2 • : • bude-li číslo obsahovat osm jedniček, zobrazí se na 7segmentovce číslice 8

21 - Napište a odlaďte program, který bude řídit frekvenci blikání LED diody binárním číslem zadaným dolními čtyřmi bity DIP přepínače (na ostatních bitech nezáleží): • při zadání čísla 1 až 9, bude dioda svítit po dobu Ts = (zadané číslo) krát 50 ms a po stejnou dobu bude zhasnuta • při zadání čísla 0 nebo čísla A až F se rychlost blikání nezmění

22 - Napište a odlaďte program, který bude vysílat sériovým kanálem čísla 0 až F v intervalu 750 ms a současně je sériovým kanálem přijímat a zobrazovat na 7segmentovce. Vysílání je možné přerušit stiskem tlačítka a dalším stiskem je opět obnovit.

23 - Napište a odlaďte program, který bude realizovat osmibitový dekadický čítač inkrementující nebo dekrementující po 1 s. Výstup čítače zobrazujte na osmici LED diod. Tlačítky Tl1 a Tl2 je možné přepínat čítač mezi vzestupným a sestupným.

24 - Napište a odlaďte program, který první po sériové lince přijímá hexadecimální čísla 0 až F. Přijaté číslo považujeme za desítky a druhé za jednotky BCD čísla. Po přijetí obou čísel blikne LED dioda připojená na P1.0 (rozsvítí se na dobu 0,25 s) a BCD číslo se zobrazí na osmici LED diod. Přijetí čísel A až F je neúčinné. Přenosovou rychlost nastavte na 9600 Bd.

25 - Napište a odlaďte program, který vždy při zadání binárního čísla na DIP přepínačích dělitelného pěti zajistí, že se ozve z reproduktorku krátký tón (pípnutí). Dobu trvání tónu volte 0,4 s a jeho kmitočet 800 Hz.

26 - Napište a odlaďte program, který bude generovat na vývodu P1.0 obdélníkový signál střídy 1:1, u něhož doba trvání impulsu bude dána zadaným číslem: Ti = zadané číslo [ms; -]. Po zadání nuly se generování průběhu přeruší.

27 - Napište a odlaďte program, který vždy při zadání nového binárního čísla v dolní čtveřici bitů DIP přepínače (na horní čtveřici nezáleží) rozběhne motorek na dobu odpovídající v sekundách zadanému číslu.

28 - Napište a odlaďte program realizující programový osmibitový binární čítač. Čítač bude inkrementovat při každém stisku tlačítka Tl1 a dekrementovat při stisku tlačítka Tl2Výstup čítače zobrazujte na osmici LED diod.

29 - Napište a odlaďte program, který bude opakovaně číst binární číslo zadané DIP přepínači a porovnávat je s mezemi: • bude-li přečtené číslo < 32, bude na 7segmentovce blikat dolní vodorovný segment • bude-li přečtené číslo ≥ 32 a  128, bude na 7segmentovce blikat střední vodorovný segment • bude-li přečtené číslo > 128, bude na 7segmentovce blikat horní vodorovný segment Kmitočet blikání volte 4 Hz.

30 - Napište a odlaďte program, který bude realizovat běžící světlo na LED diodách podle následujícího obrázku. Rychlost běhu světla bude řízena číslem přijatým po sériové lince: • doba svícení jedné diody = přijaté číslo x 50 ms • bude-li přijata nula, běh světla se zastaví Po sériové lince se přenášejí bajty mající hodnotu hexadecimálních čísel 0 až F, přenosová rychlost je 9600 Bd.

31 - Napište a odlaďte program, který zajistí po každém stisku tlačítka blikání diody připojené na následujícím vývodu portu. Bliká-li dioda připojená na P1.0, bude po stisku tlačítka blikat dioda připojená na P1.1 atd. (po blikání diody připojené na P1.7 bude po stisku tlačítka opět blikat dioda na P1.0). Frekvenci blikání diod volte 5 Hz.

32 - Napište a odlaďte program, který bude ukládat přijaté bajty do paměti a vždy po přijetí deseti čísel je postupně zobrazí na 7segmentovce v intervalu 750 ms. Během zobrazování nebudou nová čísla přijímána. Po sériové lince se přenášejí bajty mající hodnotu hexadecimálních čísel 0 až F. Přenosová rychlost je 9600 Bd.


edit