documentp2

4
;P2 : ALAMAT ADC ;P1 : DATA ADC $MOD51 ORG 0H SJMP MAIN ORG 23H ACALL SER_INT RETI MAIN : MOV SP,#07H ACALL INIT_SER MOV P2,#0H MOV DPTR,#STRING MOV R6,#57 MOV R7,#46 ACALL SER_TULIS ACALL T_PILIH START : MOV IE,#90H INTRO : CJNE R6,#57,LANJUT SJMP INTRO WHILE1 : CJNE R6,#57,LANJUT MOV IE,#0H ACALL T_PILIH MOV IE,#90H STOP : CJNE R6,#57,LANJUT SJMP STOP LANJUT : MOV IE,#0H ACALL T_DATA MOV IE,#90H ACALL DELAY SJMP WHILE1

Upload: agung-elek

Post on 23-Oct-2015

4 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: DocumentP2

;P2 : ALAMAT ADC

;P1 : DATA ADC

    $MOD51

    ORG     0H

    SJMP    MAIN

    ORG    23H

    ACALL    SER_INT

    RETI

MAIN :    

    MOV    SP,#07H

    ACALL    INIT_SER

    MOV    P2,#0H

    MOV    DPTR,#STRING

    MOV    R6,#57

    MOV    R7,#46

    ACALL    SER_TULIS

    ACALL    T_PILIH

START :

    MOV    IE,#90H

INTRO  :

    CJNE    R6,#57,LANJUT

    SJMP    INTRO

WHILE1 :

    CJNE    R6,#57,LANJUT

    MOV    IE,#0H

    ACALL    T_PILIH

    MOV    IE,#90H

STOP    :

    CJNE    R6,#57,LANJUT

    SJMP    STOP

LANJUT  :

    MOV    IE,#0H

    ACALL    T_DATA

    MOV    IE,#90H

    ACALL    DELAY

    SJMP    WHILE1    

INIT_SER :

    MOV    IE,#0H        ; |EA|-|ET2|ES|ET1|EX1|ET0|EX0|

    MOV    SCON,#50H    ; |SM0|SM1|SM2|REN|TB8|RB8|TI|RI|

    MOV    TH1,#0FDH    

    MOV    PCON,#80H    ; |SMOD|-|-|-|GF1|GF0|PD|IDL|

    MOV    TMOD,#20H    ; |||||||||

    MOV    TCON,#40H    ; |TF1|TR1|TF0|TRO|||||

Page 2: DocumentP2

    RET

SER_INT :

    ACALL    RX_BYTE

    MOV    R6,A

    RETI

RX_BYTE :

    JNB    RI,RX_BYTE

    MOV    A,SBUF

    CLR    RI

    RET

TX_BYTE :

    MOV    SBUF,A

TX_WAIT :

    JNB    TI,TX_WAIT

    CLR    TI

    RET

T_PILIH    :

    MOV    DPTR,#PILIH

    MOV    R7,#24

    ACALL    SER_TULIS

    RET

T_DATA    :

    MOV    DPTR,#D_KANAL

    MOV    R7,#17

    ACALL    SER_TULIS

    MOV    A,#' '

    ACALL    TX_BYTE

    MOV    A,#'['

    ACALL    TX_BYTE

    MOV    A,R6

    ACALL    BIN2ASCII

    MOV    A,#']'

    ACALL    TX_BYTE

    MOV    DPTR,#SPACE

    MOV    R7,#3

    ACALL    ALAMAT

    ACALL    SER_TULIS

    MOV    A,P1

    ACALL    BIN2ASCII

    ACALL    TX_BYTE

    MOV    A,B

    ACALL    TX_BYTE

    RET

Page 3: DocumentP2

ALAMAT :

    MOV    A,R6

    SUBB    A,#48

    MOV    P2,A

    RET

BIN2ASCII :

    MOV    B,#100

    DIV    AB

    ADD    A,#48

    ACALL    TX_BYTE

    MOV    A,B

    MOV    B,#10

    DIV    AB

    ADD    A,#48

    ACALL    TX_BYTE

    MOV    A,B

    ADD    A,#48

    ACALL    TX_BYTE

    MOV    A,#0

    RET

SER_TULIS :

    PUSH    ACC

    MOV    A,#0

NEXT_CHAR :

    PUSH    ACC

    MOVC    A,@A+DPTR

    ACALL    TX_BYTE

    POP    ACC

    INC    A

    DJNZ    R7,NEXT_CHAR

    POP    ACC

    RET

DELAY:

    MOV    R4,#70H

DELAY1:

    DJNZ    R3,$

    DJNZ    R4,DELAY1

    RET    

STRING    :

    DB 'Remote Data Acquisition',13

    DB 'NIAM TAMAMI',13

    DB '7108040016'

PILIH :

Page 4: DocumentP2

    DB 13,13,'Pilih Kanal Input ADC '

D_KANAL :

    DB 13,'Data Input Kanal '

SPACE    :

    DB ' = '        

END