====== 13. Úkoly, příklady, opakování ====== ===== Podklady pro cvičení ===== {{ :courses:b2m37mam:labs:stm32f401re.pdf | Datasheet STM32F401 }} {{ :courses:b2m37mam:stm32f401_refmanual.pdf | Referenční manuál STM32F401 }} {{ :courses:b2m37mam:nucleo_64_pins.pdf | Datasheet Nucleo F401RE}} [[courses:b2m37mam:tutorials:dev_kits:nucleof401| Podklady pro Nucleo STM32F401]] ===== Příklady ke zkoušce ===== {{ :courses:b2m37mam:labs:MAM_2025-Otázky,Registry,paměti,Čísla.pdf | Možné otázky, připojení k uP a program - Skalický }} {{ :courses:b2m37mam:labs:mam_2025-pameti.pdf | Paměti, paměťové V/V - Skalický }} {{ :courses:b2m37mam:labs:cv13_priklady_ke_zkousce.pdf | Příklady ke zkoušce }} {{ :courses:b2m37mam:labs:podklady_ke_zkousce_250113_135641.pdf | Řešení}} ===== Integrované obvody řady 74xx ===== {{ :courses:b2m37mam:tutorials:dit:74hc137.pdf | 74HC137}} - Výběr 1 z 8 {{ :courses:b2m37mam:tutorials:dit:74hc_hct273.pdf |74HC273}} - 8x hradlo D s CLK a MR {{ :courses:b2m37mam:tutorials:cd74hc373.pdf |74HC373}} - 8x hradlo D s OE a LE {{ :courses:b2m37mam:labs:sn74hc374.pdf | 74HC374}} - 8x hradlo D s OE a CLK ==== Příklad 1: Vstupní a výstupní brána ==== Zapojte k mikroprocesoru dva obvody tak, abyste jimi realizovali jednu vstupní a jednu výstupní 8-mi bitovou bránu. Brány realizujte pomocí obvodů 74273 a 74374. Napište program jako pseudokód, který bude realizovat čtení a zápis do obvodů. Nezapomeňte správně inicializovat piny procesoru. ==== Příklad 2: 7-mi segmentový displej ==== Navrhněte zapojení pro statický displej skládající se ze tří 7-mi segmentových displejů, které využívají autonomní paměťový kontrolér (FSMC - Flexible static memory controller) se sdílenou 8-mi bitovou datovou a adresovou sběrnicí ''DA[7..0]''. FSMC přistupuje k externímu paměťovému prostoru pro RAM s bázovou adresou ''0x6000 0000'' a v ní má vyhrazený paměťový prostor v rozsahu ''0x00'' - ''0xFF'' (8-mi bitová adresová sběrnice). Časový průběh přístupu do paměti je zobrazený na diagramu u příkladu. Signál * ''CE'' (chip enable) udává, kdy se přistupuje do externího paměťového prostoru * ''OE'' (output enable) udává, kdy se z externího paměťového prostoru čte * ''WE'' (write enable) udává, kdy se doz externího paměťového prostoru zapisuje * ''ALE'' (address latch enable) zachytává adresu ze společné sběrnice Uvažujte možnost, že displej můžete najednou rozsvítit nebo zhasnout bez nutnosti změny dat. Můžete využít libovolných obvodů nebo hradel. Napište program jako pseudokód, který bude zobrazovat hodnoty na 7-mi segmentových displejích při zápisu dat na vybranou adresu nebo rozsah adres. Předpokládejte, že FSMC kontrolér je již inicializovaný. ==== Příklad 3: Maticový displej ==== Zapojte k mikroprocesoru dva obvody tak, abyste jimi realizovali zobrazování informací na dynamickém maticovém displeji 8x8. Zapojení realizujte pomocí obvodů 74373 a 74137. Napište funkci ''zobraz(data, col)'' jako pseudokód, který bude realizovat zobrazování informací pro každý sloupec. ''data'' představují data v jednom sloupci ''col''. Následně napište kód ve funkci ''main'', který využije funkci ''zobraz'' a zobrazíte pomocí ní čtvereček na displeji. Nezapomeňte správně inicializovat piny procesoru.