Maticový LED displej
Konstrukce
Modul LED diod
Bipolární krokový motor
7.segmentový displej
LCD displej
Maticová klávesnice
Maticový LED displej má rozměr 5 sloupců a 7 řádek. Sloupce jsou připojeny na 10-bitový posuvný registr ( na sloupce jsou připojeny bity 1-5 ), který podle impulsů na Px.7 postupně přepíná jednotlivé sloupce. Pomocí bitů Px.0 - Px.6 rozsvěcujeme LED v aktivovaném sloupci.
Posuvný registr je nutné před použitím restartovat impulsem delším než 1ms na vývodu Px.7 a stejně dlouhou prodlevou. Tím aktivujeme 0-tý sloupec. Impulsem na Px.7 se posuneme na 1. sloupec, na kterém pomocí bitů Px.0 - Px.6 rozsvítíme LED, které odpovídají 1. sloupci zvoleného znaku. Dalšími impulsy postupně aktivujeme další sloupce. 6 - 9 sloupec přeskočíme 4 nebo 5 ( podle programu ) impulsy na Px.7. Tento algoritmus ( kromě restartu ) stále opakujeme co nejrychleji.
START: ZACATEK: SLOUPCE: VOLNE: NULOVANI: ZPOZD: SMYCKA: POSUN: TAB: |
org MOV CALL MOV CALL MOV MOVC MOV INC MOV CJNE MOV CALL DJNZ JMP SETB CALL CLR CALL RET MOV MOV DJNZ DJNZ RET SETB CLR RET DB DB DB DB DB END |
00h DPTR,#TAB NULOVANI R0,#0 POSUN A,R0 A,@A+DPTR P1,A R0 P1,#7Fh R0,#5,SLOUPCE R1,#5 POSUN R1,VOLNE ZACATEK P1.7 ZPOZD P1.7 ZPOZD R7,#5 R6,#250 R6,$ R7,SMYCKA P1.7 P1.7 00011110b 00101110b 00110110b 00111010b 00111100b |
; nastavení ukazatele na 1.cislo v tabulce ; RESET posuvného registru ; R0 určuje pozici v tabulce ; posun na další sloupec ; přečtení hodnoty z tabulky ; zobrazení hodnoty na P1 ; posun v tabulce na dalsí pozici ; zhasnutí všech LED v aktivním sloupci ; pokud nejsme na konci tabulky, opakuj pro další ; sloupec ; přeskočení volných vývodů v posuvném registru ; RESET posuvného registru ; impuls ; prodleva ; zpožďovací smyčka t>1ms ; impuls pro posun na další sloupec ; tabulka pro znak ; 1. bit musí být log0, aby nevytvořil další posuvný ; impuls |