Budowa, działanie zestawu mikrokomputerowego DSM-51
6. Mnemoniki z parametrami
–
wybór parametru ([←], [→], [↑], [↓]) i akceptacja ([↵]), 1. Zapoznać się z elementami budowy i działania zestawu
–
Rr (jeden z ośmiu rejestrów R0..R7),
–
załączyć zestaw (zestaw ustawi tryb pracy 0),
–
@Ri (jeden z dwu rejestrów @R1, @R2),
–
uruchomić test ( [0] + [RESET ROM] ),
–
dir (wybór rejestru specjalnego lub edycja adresu komórki pamięci),
–
sprawdzić działanie klawiszy sterujących,
–
#d8 (edycja dwucyfrowej liczny szesnastkowej),
–
zakończyć test ( [RESET ROM] ).
–
#d16 (edycja czterocyfrowej liczny szesnastkowej), 2. Przełączyć zestaw w tryb 2 (wpisywanie programu, jego asemblacja
–
bit (wybór bitu rejestru specjalnego),
i uruchamianie)
–
addr (wybór etykiety L0..L3F),
–
[RESET ROM] + [2], zwolnienie [RESET ROM], [2],
–
addr w rozkazie LCALL (wybór podprogramu lub etykiety),
–
przejście do menu głównego programu [↵].
–
addr w dyrektywie ORG (edycja czterocyfrowej liczby szesnastkowej) 3. Menu główne
–
rel (wybór etykiety L0..L3F).
–
EDIT (edycja programu),
7. Wprowadzić program
–
RUN (uruchomienie programu),
CLR
P1.7
;zerowanie bitu b7 portu P1 (zapalenie diody)
–
STEP (praca krokowa programu),
L00
;etykieta
–
wybór opcji menu ([←], [→]).
LJMP L00
;skok do etykiety
4. Edycja programu
.END
–
uruchomić edycję programu (EDIT, [↵]),
8. Uruchomić program
–
INS (wstawianie linii programu),
–
MAIN,
–
MAIN (powrót do menu głównego),
–
RUN.
–
DEL (usuwanie linii programu),
9. Zatrzymać program
–
początkowa postać programu (jedna linia zawierająca .END),
–
RESET RAM.
–
przeglądanie linii programu ([↑], [↓]).
Uwaga: Nie naciskać przycisku RESET ROM, spowodowałoby to usunięcie 5. Wstawianie linii programu (INS, [↵])
wprowadzonego programu z pamięci.
–
mnemoniki, dyrektywy, etykiety,
–
wybór ([←], [→], [↑], [↓]) i akceptacja ([↵])
–
mnemoniki w kolejności alfabetycznej,
–
dyrektywy DB i ORG za mnemonikami,
–
64 etykiety za dyrektywami (L00..L3F).
10. Wprowadzić i uruchomić program, zatrzymać program.
15. Zmodyfikować i uruchomić program
CLR
P1.7
LCALL LCD_CLR
;wywołanie czyszczenia wyświetlacza
MOV A, #10H
;wprowadzenie do akumulatora A liczby 16
MOV A, #10H
LCALL DEL_100
;wywołanie opóźnienia [A]*100 ms
INC A
;inkrementacja akumulatora (zwiększenie o 1) SETB P1.7
;ustawienie bitu b7 portu P1 (zgaszenie diody) LCALL WR_HEX
;wywołanie wyświetlenia liczby z akumulatora L00
L00
LJMP L00
LJMP L00
.END
16. Wprowadzić program, który będzie zliczał zaświecenia diody i wyświetlał je 11. Zmodyfikować program, uruchomić i zatrzymać program.
na wyświetlaczu. Dioda ma migać z częstotliwością 1 Hz. Wykorzystać rozkazy
L00
MOV R0, A
;zapisanie zawartości akumulatora w rejestrze R0
MOV A, #0AH
;wprowadzenie do akumulatora liczby 10
MOV A, R0
;zapisanie w akumulatorze zawartości rejestru R0
LCALL DEL_100
;wywołanie opóźnienia [A]*100 ms
CLR
P1.7
;zapalenie diody
MOV A, #0AH
LCALL DEL_100
;wywołanie opóźnienia [A]*100 ms
SETB P1.7
;zgaszenie diody
LJMP L00
.END
12. Zmodyfikować program, tak, aby działanie programu zaczynało się od świecenia diody.
13. Wprowadzić do programu zmiany tak, aby dioda świeciła przez 1,5 s i gasła na czas 0,5 s.
14. Wprowadzić i uruchomić program
LCALL LCD_CLR
;wywołanie czyszczenia wyświetlacza
MOV A, #10H
LCALL WR_HEX
;wywołanie wyświetlenia liczby z akumulatora L00
LJMP L00