| Ćwiczenie - przerwania |
|
A51 MACRO ASSEMBLER PSR2 DATE 03/12/07 PAGE 1 Polecenie NAPISZ I URUCHOM PROGRAM, KTÓRY POWINIEN SKŁADAĆ SIĘ Z PROGRAMU GŁÓWNEGO I PODPROGRAMU OBSŁUGI PRZERWAŃ, W PROGRAMIE GŁÓWNYM POWINIEN NAPRZEMIAN "ZAPALAĆ" DIODY 4 MŁODSZYCH BITÓW PORTU P5 ORAZ 4 MŁODSZYCH BITÓW PORTU WYJ. PO UAKTYWNIENIU I WYZWOLENIU PRZERWANIA PROCEDURA POWINNA WYKONYWAĆ LINIJKĘ ŚWIETLNĄ POPRZEDZONĄ I ZAKOŃCZONĄ SYGNAŁEM BUCZKA. Autorzy MARCIN BANASIAK PIOTR BELCARZ klasa IV Technikum Elektronicznego LOC OBJ 1 ORG 0000H 2 USING 0 3 BZYK EQU 0EAH 4 INE0 EQU 0A8H 5 DIODA XDATA 9700H 6 P5 EQU 0F8H 7 LJMP START 8 ORG 0003H 9 JMP BUCZ 10 RETI 11 CZAS:MOV R3,#100D 12 L1:MOV R2,#100D 13 L2:MOV R1,#15D 14 L3:DJNZ R1,L3 15 DJNZ R2,L2 16 DJNZ R3,L1 17 RET 18LSWIET:MOV R4,#0FH 19 CLR A 20 MOV A,R4 21 MOVX @DPTR,A 22 LCALL CZAS 23 MOV A,#0H 24 MOVX @DPTR,A 25 LSW2:MOV R5,#0FH 26 CLR A 27 MOV A,R5 28 MOV P5,A 29 LCALL CZAS 30 MOV A,#0H 31 MOV P5,A 32 SJMP LSWIET 33 BUCZ:PUSH ACC 34 PUSH AR1 35 PUSH AR2 36 PUSH AR3 37 SETB BZYK 38 LCALL CZAS 39 CLR BZYK 40 LCALL CZAS 41 MOV A,#1H 42 PROG:MOV P5,A 43 RLC A 44 INC A 45 LCALL CZAS 46 JNC PROG 47 SETB BZYK 48 LCALL CZAS 49 MOV P5,#0D 50 CLR BZYK 51 LCALL CZAS 52 POP AR3 53 POP AR2 54 POP AR1 55 POP ACC 56 RET 0061 75A881 57 START:MOV INE0,#81H 58 MOV TCON,#0H 59 MOV DPTR,#DIODA 60 MOV SP,#0007H 61 LCALL LSWIET 62 END REGISTER BANK(S) USED: 0 ASSEMBLY COMPLETE, NO ERRORS FOUND |
;



