Label

Jumat, 02 Desember 2016

Program UP counter dan Down counter Pakai Push button


Pada kesempatan kali ini saya akan mengshare program up and down counter memakai push button.
Dengan menggunakan Perintah / syntak JNB dan CLR/SETB

Dan memanfaatkan Perintah CJNE dan Call delay



ORG 0H
     RATUSAN EQU 30H
     PULUHAN EQU 31H
     SATUAN EQU 32H
     ;
START:
      MOV R7,#1
SETUP: MOV A,R7
       CALL BIN2DEC
       CALL DISPLAY2SEVENSEGMEN
       JNB P2.0,GETOUT
       JB P2.1,SETDN
       INC R7
       ACALL DELAY
       CJNE R7,#100D,SETUP
       MOV R7,#1
       SJMP SETUP
       ;
SETDN: MOV A,R7
       CALL BIN2DEC
       CALL DISPLAY2SEVENSEGMEN
       JNB P2.0,GETOUT
       JB P2.2,SETUP
       DEC R7
       ACALL DELAY
       CJNE R7,#0D,SETDN
       MOV R7,#99D
       SJMP SETDN
GETOUT: SJMP GETOUT
      ;
DISPLAY2SEVENSEGMEN:
      MOV A,PULUHAN
      MOV DPTR,#DATA7SEGMEN
      MOVC A,@A+DPTR
      MOV P0,A
      CLR P3.5
      SETB P3.6
      SETB P3.7
      CALL DELAY
      ;
      MOV A,SATUAN
      MOV DPTR,#DATA7SEGMEN
      MOVC A,@A+DPTR
      MOV P0,A
      SETB P3.5
      SETB P3.6
      SETB P3.7
      CALL DELAY
      RET
      ;
BIN2DEC:
      MOV B,#100D
      DIV AB
      MOV RATUSAN,A
      MOV A,B
      MOV B,#10D
      DIV AB
      MOV PULUHAN,A
      MOV SATUAN,B
      RET
      ;
DELAY: MOV R0,#30
DELAY1: MOV R2,#255
        DJNZ R2,$
        DJNZ R0,DELAY1
        RET
        ;
DATA7SEGMEN:
        DB 11000000B,11111001B,10100100B,10110000B,10011001B
        DB 10010010B,10000010B,11111000B,10000000B,10010000B
        END

Tidak ada komentar:

Posting Komentar