ARM07 - Maticový LED zobrazovač

Možný bodový zisk 3+2+3 b
Vzorový program TBD
Vzorový program - rozšíření TBD

Zadání a kritéria

  • Navrhněte v jazyce C program ovládající maticový displej s 8×8 LEDkami
  • Na displeji zobrazte jeden z obrázků níže, 'X' značí svítící LED, případně si vymyslete vlastní tvary
  • Vykreslování na displej bude řídit časovač. Periodu obnovení zvolte takovou, aby se displej jevil statický tj. min 50 Hz na celý displej.

 XXXXXXXX        -----X--        XXXXX---        XX------
 X------X        ----XXX-        XXX--X--        X--XX---
 X------X        XXXX---X        XXX---X-        XX-X----
 X------X        X----X-X        X------X        X--XX-X-
 X------X        X------X        X------X        X--X--X-
 X------X        X-XX---X        -X----X-        ---XX-X-
 X------X        X-XX---X        --X--X--        ------X-
 XXXXXXXX        XXXXXXXX        ---XX---        ------XX

Rozšíření A

  • Základní program
  • Krátkým stiskem USER tlačítka (B1) budete přepínat mezi obrázky (1 b)
  • Dlouhým stiskem USER tlačítka aktivujte automatické přepínání mezi obrázky (1 b)
    • Přepínání deaktivujete následovným stiskem tlačítka (dlouhý nebo krátký)
Pro snadnější detekci krátkých a dlouhých stisků můžete využít Input Capture módu některého z časovačů. Tlačítko USER sice není připojené k žádnému časovači, ale můžete ke vstupu některého časovače připojit propojkou.

Rozšíření B

  • Rozšíření A
  • Přepínání obrázku bude animované. Obrázek se začne posouvat a prázdné místo doplněno pixely z dalšího obrázku (jako v zobrazovače v MHD). (1 b)
  • Přidejte ovládání pomocí UART (1 b)
  • Umožněte vložit nový obrázek nebo přepsat stávající. (1 b)
  • Navrhněte vlastní API pro příjem dat. Například:
    • Následující obrázek n<lf> (znak 'n' následovaný klávesou enter/znakem nového řádku)
    • Zapni animaci a<lf>
    • Nahraj obrázek uXXXXXXXXX——XX–…–XXXXXXXXX<lf> (znak 'u' následován 64 znaky s hodnotou pixelu).
courses/b2m37mam/homeworks/b_hw07.txt · Last modified: 2024/09/24 15:43 by nentvond