Senin, 02 April 2012

Berikut ini listing prgram nya:
$mod51  ;we use ASM51 compiler
 
         
 
 
 
 
 
 org    0h
        nop
        ljmp    mulai
    ;
    tulis_instr:
        mov    P3,#0h    ;untuk memuliskan
        mov    p1,R1    ;intruksi ke LCD
        setb    P3.1    ;module
        clr    P3.1
        acall    delay 
        ret
    ;
    tulis_data:
        mov    P3,#01    ;untuk menuliskan
        mov    p1,R1    ;data ke LCD
        setb    P3.1    ;module
        clr    P3.1
        acall    delay
        ret
    ;
    delay:    mov    R0,#0
    delay1: mov    R5,#50h
        djnz    R5,$
        djnz    R0,delay1
        ret
    ;
    Ldelay: mov    R2,#030h
    Ld1:    acall    delay
        djnz    R2,Ld1
        ret
    ;
    tulis:    mov    R4,#3
        mov    DPTR,#Laros
    barisa:    mov    R3,#16
        mov    R1,#80h
        acall    tulis_instr
    tulis1: clr    A
        movc    A,@A+DPTR
        mov    R1,A
        Inc    DPTR
        acall    tulis_data
        djnz    R3,Tulis1
    ;
    barisb:    mov    R3,#16
        mov    R1,#0C0h
        acall    tulis_instr
    tulis2: clr    A
        movc    A,@A+DPTR
        mov    R1,A
        Inc    DPTR
        acall    tulis_data
        djnz    R3,Tulis2
        acall    Ldelay
        djnz    R4,barisa
        ret
    ;
    mulai:
        mov    R1,#03Fh
        acall    tulis_instr
        acall    tulis_instr
        mov    R1,#0Dh
        acall    tulis_instr
        mov    R1,#06h
        acall    tulis_instr
        mov    R1,#01h
        acall    tulis_instr
        mov    R1,#0Ch
        acall    tulis_instr
        acall    tulis
        sjmp    mulai
    ;
    Laros: DB   'program by '
        DB    '** tedi cahya**  '
        DB     '    "ARMY"    '
        DB    '     KUNINGAN   '
        DB      'SALAM KELUARGA '
        DB    '   TANPA BATAS '
    ;
        end

Tidak ada komentar:

Posting Komentar