background image

Laboratorium z Techniki Mikroprocesorowej 

Temat ćwiczenia: 

7) Obsługa przycisków 

Data ćwiczenia: 

 

Grupa  

WIMiR AiR 

1.  Tatar 
2.  Radosław  

Ocena: 

 

1.  Kod programu z opisem: 

LJMP INIT 
 
ORG 3H  

 

;skok po przerwaniu T0 

LJMP ZEROWANIET0 

 

ORG 02BH 

 

;skok po przerwaniu T2 

LJMP MRUGANIET2 

 

;----------------------------------------------------------------------- 
ORG 50H 
ZEROWANIET0: 
 

MOV TL0, #0 

 

MOV TH0, #0 

; zerowanie licznika T0 

RETI 
;----------------------------------------------------------------------- 
ORG 75H 
MRUGANIET2: 
 

INC DPL        

;inkrementujemy licznik wywolan 

 

PUSH ACC 

   

;akumulator na stos 

 

MOV A, DPL 

   

 

 

CJNE A,#010,POMIN 

;pomijamy zapalenie/zgaszenie poki nie zliczylismy 10 wywolan 

 

 

 

 

ZMIEN:  

 

 

 

 

CPL P1.0 

;zapalenie/zgaszenie pinu 

 

 

MOV DPL, #0 

;zerowanie licznika wywolan 

 

 

MOV DPH, #0 

 

 

 

POMIN:  

 

;sciagniecie akumulatora ze stosu 

 

POP ACC  

RETI 
;----------------------------------------------------------------- 
;PROGRAM GLOWNY 
ORG 100H 
START: 
 

INC R7  

 

;inkrementacja kontrolna 

 

MOV ACC, TL0   

;widzimy zliczenia T0 w ACC 

 

MOV P2, ACC 

 

;przepisujemy akumulator na port2   

 

LJMP START 

;-------------------------------------------------------------------- 
ORG 150H 
INIT: 
 

MOV DPH,#0 

 

MOV DPL,#0 

 

 

SETB EA ;wlaczamy system przerwan 

 

SETB EX0 

;wlaczamy przerwania licznika T0 przyciskiem 

 

SETB 0ADh 

;ET2 - #0ADh aktywowanie przerwan od czasomierza   

 

;----------------------------------------------------- 

 

;Konfiguracja T0 

 

 

MOV TH0, #0F5H; 

 

MOV TMOD, #00000101B  ;wlaczamy tryb 1 i C/T 

 

MOV TCON, #00010001B  ;wlaczmy aktywowanie przez poziom niski 

 

 

 

;---------------------------------------------------- 

 

;konfiguracja T2 

 

background image

 

MOV 0C8h, #084H 

;T2CON - #0C8h  

 

MOV 0CBh,#03Ch  

;RCAP2H - #0CBh 

 

MOV 0CAh,#0AFh  

;RCAP2L - #0CAh 

 

 

LJMP START 
END 
 

2.  Podsumowanie: 

Głównym celem ćwiczenia było nauczenie się zliczania impulsów z przycisków. Nauczyliśmy się 

również obsługiwać przerwania co określony czas.