Mam program , który odlicza czas 10 minut tyle sekundy zmieniają się nie co sekunde tylko co dłuższy czas co zmienić w programie żeby sekundy zmieniały się co sekunde
Kod: Zaznacz cały
LJMP START
ORG 100H
START:
mov r4, #9
mov r3, #59
MOV TMOD,#00010001B
MOV TH0,#76
MOV TL0,#0
SETB TR0
MOV TH1,#76
MOV TL1,#0
SETB TR1
MOV R0,80H
MOV R1,82H
MOV A,#9
SUBB A,#1
MOV R1,A
INC R0
LOP:
LCALL LCD_CLR
MOV A, r4 ;wyswietlenie minut
LCALL BIN_BCD
LCALL WRITE_HEX
MOV A, #':' ;wyswietlenie dwukropka
LCALL WRITE_DATA
MOV A, r3 ;wyswietlenie sekund
LCALL BIN_BCD
LCALL WRITE_HEX
DEC r3 ;Dekrementacja
CJNE r3, #255, TIME_N50
mov r3, #59
DEC r4
CJNE r4, #255, TIME_N50
LJMP STOP
; LCALL WRITE_DATA
; INC DPTR
; MOV A,#20
TIME_N50:
JNB TF0,$
MOV TH0,#76
CLR TF0
DJNZ ACC,TIME_N50
MOV A,R1
JNZ LOP
STOP:
lcall wait_key
ljmp start
SJMP STOP
BIN_BCD: ;konwersja bin -> bcd
MOV B, #10
DIV AB
SWAP A
ADD A, B
RET