программа написана, если кто может как она в принципе работает и что каждая строчка означает)
задание: разработать прогаммму организующую перезапись 5 ячеек из внешней памяти начиная с адреса 1234h , во внутреннюю память при подсчете 9 внешних событий с помощью T/C1 в режиме 1. предусмотреть возможность блокировки таймера внешним источником
программа написана, если кто может как она в принципе работает и что каждая строчка означает)
Текст главной программы:
NAME PRG
EXTRN CODE(PERENOS)
PRG SEGMENT CODE
CSEG AT 0
JMP START
RSEG PRG
START:
MOV DPTR, #1234h
MOV A, #11
MOVX @DPTR, A
MOV A, #22
INC DPTR
MOVX @DPTR, A
MOV A, #33
INC DPTR
MOVX @DPTR, A
MOV A, #44
INC DPTR
MOVX @DPTR, A
MOV A, #55
INC DPTR
MOVX @DPTR, A
INIT_TMR:
MOV TMOD, #208
MOV TH1, #255
MOV TL1, #247
SETB TR1
WAIT_TF:
JNB TF1, WAIT_TF
CALL PERENOS
JMP WAIT_TF
STOP:JMP STOP
END
текст подпрограммы:
NAME PERENOS
PUBLIC PERENOS
ROUTINE SEGMENT CODE
RSEG ROUTINE
PERENOS:
MOV DPTR, #1234h
MOVX A, @DPTR
MOV 30h, A
INC DPTR
MOVX A, @DPTR
MOV 31h, A
INC DPTR
MOVX A, @DPTR
MOV 32h, A
INC DPTR
MOVX A, @DPTR
MOV 33h, A
INC DPTR
MOVX A, @DPTR
MOV 34h, A
CLR TF1
MOV TH1, #255
MOV TL1, #247
RET
END
программа написана, если кто может как она в принципе работает и что каждая строчка означает)
Текст главной программы:
NAME PRG
EXTRN CODE(PERENOS)
PRG SEGMENT CODE
CSEG AT 0
JMP START
RSEG PRG
START:
MOV DPTR, #1234h
MOV A, #11
MOVX @DPTR, A
MOV A, #22
INC DPTR
MOVX @DPTR, A
MOV A, #33
INC DPTR
MOVX @DPTR, A
MOV A, #44
INC DPTR
MOVX @DPTR, A
MOV A, #55
INC DPTR
MOVX @DPTR, A
INIT_TMR:
MOV TMOD, #208
MOV TH1, #255
MOV TL1, #247
SETB TR1
WAIT_TF:
JNB TF1, WAIT_TF
CALL PERENOS
JMP WAIT_TF
STOP:JMP STOP
END
текст подпрограммы:
NAME PERENOS
PUBLIC PERENOS
ROUTINE SEGMENT CODE
RSEG ROUTINE
PERENOS:
MOV DPTR, #1234h
MOVX A, @DPTR
MOV 30h, A
INC DPTR
MOVX A, @DPTR
MOV 31h, A
INC DPTR
MOVX A, @DPTR
MOV 32h, A
INC DPTR
MOVX A, @DPTR
MOV 33h, A
INC DPTR
MOVX A, @DPTR
MOV 34h, A
CLR TF1
MOV TH1, #255
MOV TL1, #247
RET
END