Wykład - porty równoległe obsługa klawiatury matrycowej zestawu ZD537

Nasza ocena:

3
Pobrań: 364
Wyświetleń: 679
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Wykład - porty równoległe obsługa klawiatury matrycowej zestawu ZD537 - strona 1 Wykład - porty równoległe obsługa klawiatury matrycowej zestawu ZD537 - strona 2 Wykład - porty równoległe obsługa klawiatury matrycowej zestawu ZD537 - strona 3

Fragment notatki:

PODSTAWY TECHNIK MIKROPROCESOROWYCH
Laboratorium Temat: Porty równoległe. Obsługa klawiatury matrycowej zestawu ZD537.
Zadania do wykonania
Zadanie 1. Program odczytu z klawiatury metodą skaningową(numery kolumny i wiersza klawisza wyświetlić na LED)
Zadanie 2.
Podprogram zwracający (w Akumulatorze i na LED) numer/od naciśnietego klawisza.
Zadanie 3.
Program realizujący funkcję kalkulatora( np. dodawania dwu liczb wpisanych z klawiatury).
REALIZACJA ZADAŃ
Ad.1
$NOMOD51 $INCLUDE (REG517.INC)
CSEG AT 0000h
PETLA:
MOV R3,#4 ; licznik wierszy, przesyłanie do R3 liczby 4
MOV R1,#07Fh ; ustawienie wiersza początkowego
JZ PETLA1
PETLA1:
MOV P5,R1
MOV A,P7 ; wysłanie stanu z portu P7 do akumulatora
XRL A,#0FFh
JZ PETLA2
MOV A,P7 ; wysłanie stanu z portu P7 do akumulatora
ANL A,R1 ; maska zerująca 4 najstarsze bity akumulatora
MOV P1,A ; wysłanie zawartości akumulatora na port P1
PETLA2:
MOV A,R1
RR A
MOV R1,A
DJNZ R3,PETLA1 SJMP PETLA ; pętla powrotu na początek programu
JMP $
END
Ad.2
$NOMOD51
$INCLUDE(REG517.INC)
CSEG AT 0
MOV R2,#0 ; numer sprawdzanego klawisza
MOV R3,#4 ; licznik petli, przesyłanie do R3 liczby 4
MOV P5,#0EFH ; wysterowanie portu P5 MOV A,P7 ; wysłanie stanu z portu P7 do akumulatora
ety1:
RRC A ; przesuniecie bitowe w prawo JNC WYJSCIE ; skok na koniec, gdy flaga C=0
INC R2 DJNZ R3,ety1 ; R3=R3-1, jeśli R3!=0 to skok do ety1
MOV R3,#4
MOV P5,#0DFH
MOV A,P7
SETB C ; ustawienie C=1
CPL C ; zmiana stanu C (wyzerowanie)
ety2:
RRC A ; przesuniecie bitowe w prawo JNC WYJSCIE ; skok na koniec, gdy flaga C=0
INC R2 ; skok na koniec, gdy flaga C=0
DJNZ R3,ety2 ; R3=R3-1, jeśli R3!=0 to skok do ety2
MOV R3,#4
MOV P5,#0BFH
MOV A,P7
SETB C
CPL C
ety3:
RRC A ; przesuniecie bitowe w prawo JNC WYJSCIE ; skok na koniec, gdy flaga C=0
INC R2 ; skok na koniec, gdy flaga C=0
DJNZ R3,ety3 ; R3=R3-1, jeśli R3!=0 to skok do ety

(…)


DJNZ R3, ety4 ; R3=R3-1, jeśli R3!=0 to skok do ety4
WYJSCIE:
MOV A,R2 ; przepisanie numeru klawisza do akumulatora
CPL A MOV P1,A ; wyświetlenie na diodach LED numeru w kodzie NKB
JMP $
END
Ad.3
Start: MOV SCON,11010000B MOV TMOD,00100000B MOV TH1,#243D MOV TL1,#243D SETB TR1 ; włącz taktowanie SETB REN ; włącz odbiornik ELO: JNB RI,$ ; czekaj na 1 znak z klawiatury
MOV A,SBUF ; przepisz znak…
... zobacz całą notatkę

Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz