Timery-liczniki, obsługa w trybie przeglądania-zadania

Nasza ocena:

3
Pobrań: 427
Wyświetleń: 532
Komentarze: 0
Notatek.pl

Pobierz ten dokument za darmo

Podgląd dokumentu
Timery-liczniki, obsługa w trybie przeglądania-zadania - strona 1 Timery-liczniki, obsługa w trybie przeglądania-zadania - strona 2 Timery-liczniki, obsługa w trybie przeglądania-zadania - strona 3

Fragment notatki:

PODSTAWY TECHNIK MIKROPROCESOROWYCH
Temat: TIMERY/LICZNIKI, obsługa w trybie przeglądania.
Zadania do wykonania
Zadanie 1. Procedury odmierzania określonych odcinków czasu: τ1 ≤ 65ms i τ2 ≥ 65 ms z wykorzystaniem liczników T0/T1.
Zadanie 2.
Procedura generowania N wzajemnie „asynchronicznych” periodycznych sygnałów, z których każdy ma zadane czasy trwania: „1”-THIGH(i), i „0”-TLOW(i); i=1,2…….N.
Zadanie 3.
Program pomiaru zadanej wielkości: np. a) czasu trwania impulsu THIGH lub okresu przebiegu periodycznego generowanego przez ZD-537, b) czasu między kolejnymi zwarciami przycisków/klawiszy.
REALIZACJA ZADAŃ
Ad.1.
$NOMOD51 $INCLUDE(reg517.inc) CSEG AT 0000h SKOK:
MOV R2,#20 ; R2*50ms
CPL P1.0
CALL OP ;procedura generacji opóźnienia
SJMP SKOK
OP:
ANL TMOD,#0Fh ; wyzerowanie 4 starszych bitów odp. za ustawienia T1
ORL TMOD,#10h ; rodzaje trybu pracy M0=1, M1=0 ANL TCON,#3Fh ; TF1=0, TR1=0
MOV TH1,#03Ch ; przywrócenie wartości początkowych licznikowi
MOV TL1,#0B0h ; 65536-50000
SETB TR1 ; start T1 (TR1=1)
SKOK2:
JNB TF1,$ ; oczekiwanie na przepełnienie i przerwanie
CLR TF1 ; zerowanie przepełnienia
MOV TH1,#3Ch ; powrót to wartości początkowych
MOV TL1,#0A9h DJNZ R2,SKOK2
RET
END Ad.2.
$NOMOD51 $INCLUDE(reg517.inc) CSEG AT 0000h
TON1 EQU 90 ; czas zapalenia diody P1.0
TOFF1 EQU 9 ; czas zgaszenia diody P1.0
TON2 EQU 40 ; czas zapalenia diody P1.1
TOFF2 EQU 30 ; czas zgaszenia diody P1.1
TON3 EQU 20 ; czas zapalenia diody P1.2
TOFF3 EQU 30 ; czas zgaszenia diody P1.2
START:
MOV TMOD,#01h ; ustawienie trybu pracy licznika
MOV R0,#TOFF1 ; wysłanie okresów do rejestru
MOV R2,#TOFF2 ; zgaszenia kolejnych diod LED
MOV R4,#TOFF3 LICZNIK:
LCALL OP ; wywołanie opóźnienia
MOV TH0,#4Ch ; ustawienia początkowe licznika T0
MOV TL0,#0h SETB TR0 ; start licznika JNB TF0,$ ; oczekiwanie na przepełnienie L0-ZM:
DEC R0
MOV A,R0
JZ L0 ; warunek pełnego cyklu dla P1.0 to zapal/zgaś ... zobacz całą notatkę



Komentarze użytkowników (0)

Zaloguj się, aby dodać komentarz