Program Assembler untuk ngetest LCD 2×16

Program ini di gunakan untuk mengetest apakah lcd bekerja dengan bener atau gak.
dalam program ini lcd di hubungkan dengan port 2 mikrokontroller dan untuk mengkompiler program ini di gunakan asm51.exe dan di writer ke mikrokontroller nya dengan menggunakan serial programming interface menggunakan asp_ic.exe

Program untuk mengetest lcd
code :


;Program ini untuk mencoba mengontrol LCD 2x16
;Nama Program : lcd.asm


p1		equ	090H		; port 1
data_lcd 	equ	0A0h	; DB0 - DB7 LCD dihubungkan dengan Port 2
p3		equ	0B0h		;keypad dihubungkan dengan Port 3

rs		equ	090h		;sinyal RS dengan P1.0
rw		equ	091h		;sinyal RW dengan P1.1
en		equ	092h		;sinyal E  dengan P1.2
psw		equ	0D0h		;psw = program status word
tmod		equ	089h		;timer mode register
th0		equ	08Ah		;timer 0 High Byte
tl0		equ	08Bh		;timer 0 Low Byte
th1		equ	08Ch		;timer 1 High Byte
tl1		equ	08Dh		;timer 1 Low Byte
tcon		equ	088H		;timer control register
acc		equ	0E0h		;

	org 0h

start:
	lcall delay_1_s
	lcall init_lcd
message:
	lcall clear_lcd
	mov dptr,#pesan1	;
	lcall kirimpesan_lcd
	lcall tulis_dibaris_bawah
	mov dptr,#pesan2	;
	lcall kirimpesan_lcd


	jmp selesai
kirimpesan_lcd:
;==============

loopkirimpesan_lcd:
	mov a,#00h
	movc a,@a+dptr
	cjne a,#0fh,kirim_lcd
	ret
kirim_lcd:
	lcall kirim_karakter
	inc dptr
	ajmp loopkirimpesan_lcd
kirim_karakter:
	lcall write_text

init_lcd:
;=======

	clr rw
	clr rs
	setb en
	mov data_lcd,#38h
	clr en
	call wait_lcd

	clr rw
	clr rs
	setb en
	mov data_lcd,#08h
	;cle en		
	clr en		
	call wait_lcd

	clr rs
	setb en
	mov data_lcd,#0eh
	clr en
	call wait_lcd

	clr rs
	setb en
	mov data_lcd,#06h
	clr en
	call wait_lcd
	ret

tulis_dibaris_bawah:
	clr rw
	clr rs
	setb en
	mov data_lcd,#0c0h
	clr en
	lcall wait_lcd
	ret

clear_lcd:
	setb en
	clr rs
	mov data_lcd,#01h
	clr en
	lcall wait_lcd
	ret

wait_lcd:
;========
	clr rs
	setb rw
	setb en
	mov data_lcd,#0ffh
	mov a,data_lcd
	jb acc.7,wait_lcd
	clr en
	clr rw
	ret

write_text:
;==========
	clr rw
	setb rs
	setb en
	mov data_lcd,a
	clr en
	lcall wait_lcd
	ret

pesan1:
	db 'SAHIR',0fh
pesan2:
	db 'Teknik Elektro',0fh

delay_50_ms:
	mov	tmod,#01h
	mov	th0,#034h
	mov	tl0,#08ch
;	setb	tr0
	setb	tcon.4		; tcon.4 = tr0
count_50_ms:
;	jbc	tf0,finish_50_ms
	jbc	tcon.5,finish_50_ms	; tcon.5 = tf0
	sjmp	count_50_ms
finish_50_ms:
	ret
;============
delay_200_us:
	mov	tmod,#01h
	mov	th0,#0ffh
	mov	tl0,#02fh
;	setb	tr0
	setb	tcon.4		; tcon.4 = tr0
count_200_us:
;	jbc	tf0,finish_200_us
	jbc	tcon.5,finish_200_us	; tcon.5 = tf0
	sjmp	count_200_us
finish_200_us:
	ret
;============
delay_1_s:
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	call delay_50_ms
	ret
selesai:

end	;end program

53 thoughts on “Program Assembler untuk ngetest LCD 2×16

  1. mohon bantuannya.
    Saya ada masalah di tugas akhir saya.
    Membuat sistem keamanan harddisk dengan menyisipkan program master boot record. kira – kira bisa tidak saya melihat beberapa contoh code atau potongan code untuk membongkar paket MBR baik di windows maupun di linux?.
    Kira – kira tools yang sesuai untuk ini apa ya?
    Terima kasih sebelumnya

  2. mohon bantuannya…..
    saya ada masalah untuk membuat program yang didalamnya merupakan gabungan antara bahasa assembler dengan pascal….
    bisa tidak saya melihat contoh programnya….terutama untuk program2 yang source code-nya panjang
    terima kasih sebelumnya….

  3. tolong !!!!!!!!!!!!!!!!!!!!!!
    contoh program untuk menampilkan angka dari sensor ke LCD ?

  4. Halo,semua yang ada disini,….tolong donk bantuin gue ,gimana cara nya membuat program gabungan
    misal
    ============ |
    Program Gabungan|
    ============ |
    AAA |
    BB |
    C |
    ============ |

    Tolong yah bantuin gue,kirim ke email saya saja!

  5. ;keypad pke p1
    ;lcd pke p0
    DB0 EQU P0.0
    DB1 EQU P0.1
    DB2 EQU P0.2
    DB3 EQU P0.3
    DB4 EQU P0.4
    DB5 EQU P0.5
    DB6 EQU P0.6
    DB7 EQU P0.7
    EN EQU P2.7
    RS EQU P2.3
    RW EQU P2.5

    ORG 00H
    JMP UTAMA
    ORG 13H
    JMP KEYPAD
    UTAMA:
    MOV A,#1
    MOV R1,#0E1H
    MOV @R1,A
    MOV A,#2
    MOV R1,#0E2H
    MOV @R1,A
    MOV A,#3
    MOV R1,#0E3H
    MOV @R1,A
    MOV A,#4
    MOV R1,#0E4H
    MOV @R1,A
    MOV A,#5
    MOV R1,#0E5H
    MOV @R1,A
    MOV A,#6
    MOV R1,#0E6H
    MOV @R1,A
    MOV A,#7
    MOV R1,#0E7H
    MOV @R1,A
    MOV A,#8
    MOV R1,#0E8H
    MOV @R1,A
    MOV A,#9
    MOV R1,#0E9H
    MOV @R1,A
    MOV A,#0
    MOV R1,#0E0H
    MOV @R1,A
    CLR A
    MOV R1,#00H
    MOV IE,#84H
    MOV P1,#10101001B
    CALL INIT_LCD
    CALL CLEAR_LCD
    TEST:
    CJNE R1,#00H,CHECK
    JMP TEST
    CHECK:
    MOV R0,#0F0H
    CJNE @R0,#00H,CHECK1
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK1:
    MOV R0,#0F1H
    CJNE @R0,#00H,CHECK2
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK2:
    MOV R0,#0F2H
    CJNE @R0,#00H,CHECK3
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK3:
    MOV R0,#0F3H
    CJNE @R0,#00H,CHECK4
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK4:
    MOV R0,#0F4H
    CJNE @R0,#00H,CHECK5
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK5:
    MOV R0,#0F5H
    CJNE @R0,#00H,CHECK6
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK6:
    MOV R0,#0F6H
    CJNE @R0,#00H,CHECK7
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK7:
    MOV R0,#0F7H
    CJNE @R0,#00H,CHECK8
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK8:
    MOV R0,#0F8H
    CJNE @R0,#00H,CHECK9
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK9:
    MOV R0,#0F9H
    CJNE @R0,#00H,CHECK10
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK10:
    MOV R0,#0FAH
    CJNE @R0,#00H,CHECK11
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK11:
    MOV R0,#0FBH
    CJNE @R0,#00H,CHECK12
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST
    CHECK12:
    MOV R0,#0FCH
    CJNE @R0,#00H,FULL
    MOV A,@R1
    MOV @R0,A
    MOV R1,#00H
    JMP TEST

    FULL:
    MOV A,#’D’
    CALL WRITE_TEXT
    MOV A,#’A’
    CALL WRITE_TEXT
    MOV A,#’T’
    CALL WRITE_TEXT
    MOV A,#’A’
    CALL WRITE_TEXT
    MOV A,#’_’
    CALL WRITE_TEXT
    MOV A,#’F’
    CALL WRITE_TEXT
    MOV A,#’U’
    CALL WRITE_TEXT
    MOV A,#’L’
    CALL WRITE_TEXT
    MOV A,#’L’
    CALL WRITE_TEXT
    MOV R1,#00H
    JMP TEST

    SELESAI:
    MOV A,#’S’
    CALL WRITE_TEXT
    MOV A,#’E’
    CALL WRITE_TEXT
    MOV A,#’L’
    CALL WRITE_TEXT
    MOV A,#’E’
    CALL WRITE_TEXT
    MOV A,#’S’
    CALL WRITE_TEXT
    MOV A,#’A’
    CALL WRITE_TEXT
    MOV A,#’I’
    CALL WRITE_TEXT
    MOV R1,#00H
    JMP TEST

    KEYPAD:
    ;CALL CLEAR_LCD
    MOV P1,#0FFH
    CLR P1.6
    KEY1:
    JB P1.5,KEY2
    CALL DELAY
    MOV A,#’1′
    CALL WRITE_TEXT
    MOV R1,#0E1H
    RETI
    KEY2:
    JB P1.7,KEY3
    CALL DELAY
    MOV A,#’2′
    CALL WRITE_TEXT
    MOV R1,#0E2H
    RETI
    KEY3:
    JB P1.3,ROW2
    CALL DELAY
    MOV A,#’3′
    CALL WRITE_TEXT
    MOV R3,#0E3H
    RETI
    ROW2:
    SETB P1.6
    CLR P1.1
    KEY4:
    JB P1.5,KEY5
    CALL DELAY
    MOV A,#’.0′
    CALL WRITE_TEXT
    MOV R1,#0E4H
    RETI
    KEY5:
    JB P1.7,KEY6
    CALL DELAY
    MOV A,#’5′
    CALL WRITE_TEXT
    MOV R1,#0E5H
    RETI
    KEY6:
    JB P1.3,ROW3
    CALL DELAY
    MOV A,#’6′
    CALL WRITE_TEXT
    MOV R1,#0E6H
    RETI
    ROW3:
    SETB P1.1
    CLR P1.2
    KEY7:
    JB P1.5,KEY8
    CALL DELAY
    MOV A,#’7′
    CALL WRITE_TEXT
    MOV R1,#0E7H
    RETI
    KEY8:
    JB P1.7,KEY9
    CALL DELAY
    MOV A,#’8′
    CALL WRITE_TEXT
    MOV R1,#0E8H
    RETI
    KEY9:
    JB P1.3,ROW4
    CALL DELAY
    MOV A,#’9′
    CALL WRITE_TEXT
    MOV R1,#0F9H
    RETI
    ROW4:
    SETB P1.2
    CLR P1.4
    KEY0:
    JB P1.7,PAGAR
    CALL DELAY
    MOV A,#’0′
    CALL WRITE_TEXT
    MOV R1,#0F0H
    RETI
    PAGAR:
    JB P0.3,BACK
    CALL DELAY
    CALL SELESAI
    RETI
    BACK: JMP KEYPAD
    DELAY:
    MOV R2,#150
    MOV R3,#200
    DELAY1:

    DJNZ R3,DELAY1
    DJNZ R2,DELAY1
    RET
    INIT_LCD:
    CLR RS
    CLR EN
    CLR RW
    MOV P0,#3AH
    SETB EN
    CLR EN
    LCALL WAIT_LCD
    CLR RS
    MOV P0,#0FH
    SETB EN
    CLR EN
    LCALL WAIT_LCD
    CLR RS
    MOV P0,#06H
    SETB EN
    CLR EN
    LCALL WAIT_LCD
    CLR RS
    MOV P0,#14H
    SETB EN
    CLR EN
    LCALL WAIT_LCD
    RET
    WAIT_LCD:
    CLR EN
    CLR RS
    SETB RW
    MOV P0,#0FFH
    SETB EN
    MOV A,P0
    JB ACC.7,WAIT_LCD
    CLR EN
    CLR RW
    RET
    CLEAR_LCD:
    CLR RS
    MOV P0,#01H
    SETB EN
    CLR EN
    LCALL WAIT_LCD
    RET
    WRITE_TEXT:
    SETB RS
    MOV P0,A
    SETB EN
    CLR EN
    LCALL WAIT_LCD
    RET

    ini adalah script untuk input keypad ke LCD dan hasil inputannya disimpan ke memory internal ucontroller, dengan inputan no HP.jmlah digit=12 jka lebih muncul kata data_full di LCD tapi hal ini belum berhasil.tolong bantuannya kirim email saya.tolong banget ya

  6. mohon bantuanya untuk memberitahukan kepada saya mengenai contoh program assebly untuk mereset komputer, atau apa saja yang ketika di run dapat mempengaruhi kinerja komputer. kalau bisa jangan yang menggunakan interface.
    saya butuh contoh kode yang sederhana dan berdampak langsung pada komputer yang saya pakai pada saat menjalan kan kode tersebut.
    [email protected]

  7. Mohon bantuannya….
    saya ada masalah dalam tugas akhir saya, saya sedang membuat program sistem keamanan rumah….sistem keamanan ini menggunakan infra merah…jika infra merah mendeteksi benda yang melewatinya, mikrokontroler memberikan data atau sinyal melalui gelombang frekuensi (RF) ke rangkaian mikro yang lain yang terdapat LCD…dan juga rangkaian mikro yang pertama memberikan data ke komputer berupa kode biner melalui serial port….
    saya mohon bantuannya….
    apa yang harus saya buat terlebih dahulu…..komponen apa aja yang diperlukan untuk membuat pemancar gelombang frekuensi (RF) terus source kodenya bagaimana….saya harap teman-teman bisa bantu saya…untuk jawabannya bisa melalui email saya di : [email protected]

  8. saya mempunyai project untuk pemrograman ic serial, CL, LE, Data, dengan fasilitas tampilan LCD kalau ada yg bisa dengan berbagai macam fiture akan saya ganti ongkosnya trims

  9. Mohon bantuannya…
    Tugas akhir saya memprogram input keypad ke LCD yang berupa karakter dari keypad 4×3 dan LCD 16×2, apa ada yang punya program nya…
    Terimakasih atas bantuannya………..

    untuk jawabannya boleh melalui e-mail saya di [email protected]

  10. halo, saya sangat tertarik dengan Assembler, bisa gak minta literatur untuk pembelajaran mulai awal sampai jadi maut nguasain program ini?. tolong yaaaa…….
    klo ada yang terketuk hatinya untuk membantu kirim jawabannya lewat e-mail saya ya.
    di……….
    [email protected]

  11. Saya mohon bantuannya gimana? cara menampilkan hasil adc0808 ke LCD menggunakan uK AT89s52/ATmega8 Terima kasih

  12. gimana programnya supaya mirko itu bisa di interfacekan dengan visual basic,melalui sebuah kabel serial?

  13. saya mohon bantuannya untuk tugas seminar saya.
    saya ingin membuat pintu otomatis yang bisa digerakkan dengan keyboard
    (seperti pinti parkir).saya ingin tahu seperti apa source codenya menggunakan assembler..
    atas bantuannya saya mengucapkan banyak terima kasih.

  14. saya orang awam yang gx ngrti apa2 tntang asembler,
    tapi pengen banget bljr asmbler,
    saya minta tolong referensi mngenai asmbler mlai dari awal(tool2 yg dbutuhkan smpai program2 sderhananya)
    atas bantuannya saya ucapkan terima kasih.
    tlong kirimkan ke email saya.

  15. Mas tolong kasih semua source code pada pemograman mikrokontroler AT89S52 dan jenis kabel data apa yang mendukung untuk melakukan interface antara mikon ke HP selain jenis yang serial?

  16. aku minta tolong jelasin kegunaan program assembler dan apa kelebihanya, soalnya aku penasaran ne n bisa ga tuk hack password aplikasi ato lainya

  17. mas, mnt prog untuk tampilan dari adc 0804 ke seven segment atau lcd. makasih y mas..

  18. saya sedang membuat penampil pesan dengan menggunakan LCD 2×16
    tapi saya kesulitan dalam program assembler-nya. jika saya ingin menampilkan kalimat dengan program entry geser ke kiri pada baris kedua, bagaimana listing programnya? kemudian jika ingin menampilkan kalimat pada baris pertama dengan penampilan perkata kemudian ditampilkan secara keseluruhan kalimat dengan mode entry geser ke kiri, bagaimana listing programnya?

  19. saya lagi ngerjain Tugas Akhir. saya ingin membuat program vending machine dengan menggunakan RFID berbasis mikrokontroler AT89S51. saya ingin tahu seperti apa program RFID-nya agar bisa di baca oleh mikrokontroler.
    trimakasih banyak atas bantuannya.

  20. saya sedang buat tugas akhir kuliah yang judul nya catu daya digital, yang nilai tegangan kelurannya di tampilkan oleh media 7 segment…
    dan dah lama blom siap-siap..krn terbentur di program/bhs assembley
    saya mohon bantuanny.,
    saya menggunakan aTmel kosong..
    gmn cara program nya agar bisa alat saya berjalan dan sukses…
    thank’s terlebih dahulu

  21. saya punya TA (tgs akhir)..yg judul ny”catu daya digital”..
    yang nilai keluarannya di tampilkan melalui sevent segment…
    jd saya hrs menggunakan ATmel tipe brapa agar bisa dan lbih efisien…
    dan bagaimana program nya…
    please…..!!!!!

  22. saya ada kesulitan dalam tugas akhir tentang source kode dengan bahasa assembler untuk menampilkan dari sensor ke lcd

  23. saya mau tanya bagaimana source kode dengan bahasa assembly untuk akuisisi data 3 level input yang ditampilkan ke pc dengan port serial dan adcnya 0809 mode kontrol.ada 3 input ketika saya pilih input 1 maka data input 1 yang akan dikonversi,jika input 2 maka data input 2 yang dikonversi sampai input 3.dan bagaimana source kode untuk konversi data biner menjadi data integer pada visual basic sehingga data yang muncul pada komputer berupa angka.dan bisa minta referensi tentang lcd.

  24. Pingback: TUGAS TEKNIK KOMPILASI « Veramegawati’s Blog

  25. saya mohon bantuan nya…

    saya punya tugas ni untuk menghitung akar-akar persamaan kuadrat,
    mohon dibalas cepat ya..
    thanks..
    salam

  26. hallo smua ada yang bisa bantu saya ga..?

    saya ada tgs mk orgkom ne..
    disuruh buat coding lewat tasm buat nampilin angka 26 sampai 1

    kalo nampilin huruf z sampe a udah bisa

    tolong siapa yang tau jawaban dari tugas saya kirim ke e-mail saya yya.. [email protected]

    terimakasih banyak yya =)

  27. lisning program dalam pembuat jam digital raksasa dengan out put alarm dengan menggunakan atemega 3835

  28. mohon bantuannya ya……..
    saya mau membuat program assembler dengan emulator 8086,memakai .asm nih….
    yang outputnya akan menghasilkan kotak yg bisa pindah2 tempat…
    mohon bantuannya ya….?????????
    kirim aja ke email aku………

  29. mohon bantuannya ya……..
    saya mau membuat program assembler dengan emulator 8086,memakai .asm nih….
    yang outputnya akan menghasilkan kotak yg bisa pindah2 tempat…
    mohon bantuannya ya….?????????
    kirim aja ke email aku……… [email protected]

  30. mohon bantuanya saya sedang membuat tugas akhir mengenai inisialisasi lcd karakter 16×2 pada single chip, tolong bantuanya kirimin aku program asm inisialisasi lcd untuk single chip AT89c51.terimakasih atas bantuannya………….

  31. $mod51
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    PATOAN EQU -5000 ;
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    W_0_1 EQU -500 ;500000
    W_0_2 EQU -160 ;166667
    W_0_3 EQU -833 ;833333
    W_0_4 EQU -50000
    W_0_5 EQU -33333
    W_0_6 EQU -23810
    W_0_7 EQU -17857
    W_0_8 EQU -13889
    W_0_9 EQU -11111
    W_1_0 EQU -9091
    W_1_1 EQU -7576
    W_1_2 EQU -6410
    W_1_3 EQU -5638
    W_1_4 EQU -4619
    W_1_5 EQU -4166
    W_1_6 EQU -3677
    W_1_7 EQU -3268
    W_1_8 EQU -2924
    W_1_9 EQU -2631
    W_2_0 EQU -2381
    w_2_1 EQU -2165
    W_2_2 EQU -1976
    W_2_3 EQU -1812
    W_2_4 EQU -1666
    W_2_5 EQU -1539
    W_2_6 EQU -1424
    W_2_7 EQU -1323
    W_2_8 EQU -1232
    W_2_9 EQU -1149
    W_3_0 EQU -1075
    W_3_1 EQU -1008
    W_3_2 EQU -947
    W_3_3 EQU -892
    W_3_4 EQU -840
    W_3_5 EQU -794
    W_3_6 EQU -750
    W_3_7 EQU -712
    W_3_8 EQU -701
    W_3_9 EQU -641
    W_4_0 EQU -610
    W_4_1 EQU -584
    w_4_2 EQU -554
    w_4_3 EQU -528
    w_4_4 EQU -505
    w_4_5 EQU -483
    w_4_6 EQU -463
    w_4_7 EQU -443
    w_4_8 EQU -425
    w_4_9 EQU -408
    w_5_0 EQU -389
    w_5_1 EQU -377
    w_5_2 EQU -363
    w_5_3 EQU -349
    w_5_4 EQU -337
    w_5_5 EQU -324
    w_5_6 EQU -314
    w_5_7 EQU -302
    w_5_8 EQU -292
    w_5_9 EQU -283
    w_6_0 EQU -273
    w_6_1 EQU -264
    w_6_2 EQU -256
    w_6_3 EQU -248
    w_6_4 EQU -241
    w_6_5 EQU -233
    w_6_6 EQU -226
    w_6_7 EQU -220
    w_6_8 EQU -213
    w_6_9 EQU -207
    w_7_0 EQU -201
    w_7_1 EQU -196
    w_7_2 EQU -190
    w_7_3 EQU -185
    w_7_4 EQU -180
    w_7_5 EQU -176
    w_7_6 EQU -170
    w_7_7 EQU -167
    w_7_8 EQU -162
    w_7_9 EQU -158
    w_8_0 EQU -155
    w_8_1 EQU -150
    w_8_2 EQU -147
    w_8_3 EQU -144
    w_8_4 EQU -140
    w_8_5 EQU -137
    w_8_6 EQU -133
    w_8_7 EQU -131
    w_8_8 EQU -128
    w_8_9 EQU -124
    w_9_0 EQU -122
    w_9_1 EQU -120
    w_9_2 EQU -117
    w_9_3 EQU -114
    w_9_4 EQU -112
    w_9_5 EQU -110
    w_9_6 EQU -107
    w_9_7 EQU -105
    w_9_8 EQU -103
    w_9_9 EQU -101
    w_10_0 EQU -100
    w_10_1 EQU -97
    w_10_2 EQU -95
    w_10_3 EQU -93
    w_10_4 EQU -92
    w_10_5 EQU -90
    w_10_6 EQU -88
    w_10_7 EQU -86
    w_10_8 EQU -85
    w_10_9 EQU -84
    w_11_0 EQU -81
    w_11_1 EQU -80
    w_11_2 EQU -78
    w_11_3 EQU -78
    w_11_4 EQU -76
    w_11_5 EQU -75
    w_11_6 EQU -73
    w_11_7 EQU -73
    w_11_8 EQU -71
    w_11_9 EQU -70
    w_12_0 EQU -69
    w_12_1 EQU -68
    w_12_2 EQU -66
    w_12_3 EQU -66
    w_12_4 EQU -64
    w_12_5 EQU -64
    w_12_6 EQU -62
    w_12_7 EQU -62
    w_12_8 EQU -61
    w_12_9 EQU -60
    w_13_0 EQU -59
    w_13_1 EQU -58
    w_13_2 EQU -57
    w_13_3 EQU -56
    w_13_4 EQU -55
    w_13_5 EQU -54
    w_13_6 EQU -53
    w_13_7 EQU -53
    w_13_8 EQU -52
    w_13_9 EQU -51
    w_14_0 EQU -50
    w_14_1 EQU -50
    w_14_2 EQU -49
    w_14_3 EQU -49
    w_14_4 EQU -48
    w_14_5 EQU -47
    w_14_6 EQU -47
    w_14_7 EQU -46
    w_14_8 EQU -46
    w_14_9 EQU -45
    w_15_0 EQU -44
    w_15_1 EQU -44
    w_15_2 EQU -43
    w_15_3 EQU -43
    w_15_4 EQU -42
    w_15_5 EQU -41
    w_15_6 EQU -41
    w_15_7 EQU -40
    w_15_8 EQU -40
    w_15_9 EQU -39
    w_16_0 EQU -39
    w_16_1 EQU -39
    w_16_2 EQU -38
    w_16_3 EQU -37
    w_16_4 EQU -37
    w_16_5 EQU -36
    w_16_6 EQU -36
    w_16_7 EQU -36
    w_16_8 EQU -35
    w_16_9 EQU -35
    w_17_0 EQU -35
    w_17_1 EQU -34
    w_17_2 EQU -33
    w_17_3 EQU -33
    w_17_4 EQU -33
    w_17_5 EQU -33
    w_17_6 EQU -35
    w_17_7 EQU -32
    w_17_8 EQU -32
    w_17_9 EQU -31
    w_18_0 EQU -31
    w_18_1 EQU -30
    w_18_2 EQU -30
    w_18_3 EQU -30
    w_18_4 EQU -29
    w_18_5 EQU -29
    w_18_6 EQU -29
    w_18_7 EQU -28
    w_18_8 EQU -28
    w_18_9 EQU -28
    w_19_0 EQU -28
    w_19_1 EQU -27
    w_19_2 EQU -27
    w_19_3 EQU -27
    w_19_4 EQU -26
    w_19_5 EQU -26
    w_19_6 EQU -26
    w_19_7 EQU -26
    w_19_8 EQU -25
    w_19_9 EQU -25
    w_20_0 EQU -5000

    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    LCD_RS BIT P3.6 ;
    LCD_CS BIT P3.7 ;
    SENSOR_1 BIT P3.2 ;
    SENSOR_2 BIT P3.3 ;
    tundaan EQU 60H ;
    tundaan1 EQU 61H ;
    URUTAN EQU 62H ;
    Org 0H ;
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    call Init_LCD ;
    Mov TMOD,#11H ;
    Mulai:
    Mov dptr,#TULISAN
    call Tulis_LCD_2_baris
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    START:
    MOV R7,#16
    CALL PSS_A1
    SPASI_XX:
    MOV A,#’ ‘
    CALL KIRIM_KARAKTER
    MOV R6,#0FFH
    DITUNGGUA:
    JB SENSOR_1,SPASI_XXX
    PUSH ACC
    CALL SCANNING
    POP ACC
    SPASI_XXX:
    DJNZ R6,DITUNGGUA
    DJNZ R7,SPASI_XX
    CALL PSS_A1
    MOV R7,#16
    MOV DPTR,#TULISANE

    STARTING:
    CLR A
    MOVC A,@A+DPTR
    CALL KIRIM_KARAKTER
    INC DPTR

    MOV R6,#0FFH
    MOV R5,#100
    DITUNGGUX:
    JB SENSOR_1,STARTINGE
    PUSH DPH
    PUSH DPL
    PUSH ACC
    CALL SCANNING
    POP DPH
    POP DPL
    POP ACC
    STARTINGE:
    DJNZ R6,DITUNGGUX
    DJNZ R5,DITUNGGUX

    DJNZ R7,STARTING
    MOV R7,#16
    CALL PSS_A1
    xSPASI_XX:
    MOV A,#’ ‘
    CALL KIRIM_KARAKTER
    MOV R6,#0FFH
    DITUNGGUXX:
    JB SENSOR_1,xSPASI_XXX
    PUSH ACC
    CALL SCANNING
    POP ACC
    xSPASI_XXX:
    DJNZ R6,DITUNGGUXX
    DJNZ R7,xSPASI_XX
    CALL PSS_A1
    MOV R7,#16
    MOV DPTR,#xTULISANE
    xSTARTING:
    CLR A
    MOVC A,@A+DPTR
    CALL KIRIM_KARAKTER
    INC DPTR
    MOV R6,#0FFH
    MOV R5,#100
    DITUNGGUXXXX:
    JB SENSOR_1,xSTARTINGE
    PUSH DPH
    PUSH DPL
    PUSH ACC
    CALL SCANNING
    POP DPH
    POP DPL
    POP ACC
    xSTARTINGE:
    DJNZ R6,DITUNGGUXXXX
    DJNZ R5,DITUNGGUXXXX
    DJNZ R7,xSTARTING
    LJMP start
    ;TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    ;LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
    SCANNING:
    SCAN_20_0:
    CALL ISI_20_0
    JB SENSOR_2,SCAN_19_9
    MOV DPTR,#DS_20_0
    JMP tulis_LCD_bawah
    SCAN_19_9:
    CALL ISI_19_9
    JB SENSOR_2,SCAN_19_8
    MOV DPTR,#DS_19_9
    JMP tulis_LCD_bawah
    SCAN_19_8:
    CALL ISI_19_8
    JB SENSOR_2,SCAN_19_7
    MOV DPTR,#DS_19_8
    JMP tulis_LCD_bawah
    SCAN_19_7:
    CALL ISI_19_7
    JB SENSOR_2,SCAN_19_6
    MOV DPTR,#DS_19_7
    JMP tulis_LCD_bawah
    SCAN_19_6:
    CALL ISI_19_6
    JB SENSOR_2,SCAN_19_5
    MOV DPTR,#DS_19_6
    JMP tulis_LCD_bawah
    SCAN_19_5:
    CALL ISI_19_5
    JB SENSOR_2,SCAN_19_4
    MOV DPTR,#DS_19_5
    JMP tulis_LCD_bawah
    SCAN_19_4:
    CALL ISI_19_4
    JB SENSOR_2,SCAN_19_3
    MOV DPTR,#DS_19_4
    JMP tulis_LCD_bawah
    SCAN_19_3:
    CALL ISI_19_3
    JB SENSOR_2,SCAN_19_2
    MOV DPTR,#DS_19_3
    JMP tulis_LCD_bawah
    SCAN_19_2:
    CALL ISI_19_2
    JB SENSOR_2,SCAN_19_1
    MOV DPTR,#DS_19_2
    JMP tulis_LCD_bawah
    SCAN_19_1:
    CALL ISI_19_1
    JB SENSOR_2,SCAN_19_0
    MOV DPTR,#DS_19_1
    JMP tulis_LCD_bawah
    SCAN_19_0:
    CALL ISI_19_0
    JB SENSOR_2,SCAN_18_9
    MOV DPTR,#DS_19_0
    JMP tulis_LCD_bawah
    SCAN_18_9:
    CALL ISI_18_9
    JB SENSOR_2,SCAN_18_8
    MOV DPTR,#DS_18_9
    JMP tulis_LCD_bawah
    SCAN_18_8:
    CALL ISI_18_8
    JB SENSOR_2,SCAN_18_7
    MOV DPTR,#DS_18_8
    JMP tulis_LCD_bawah
    SCAN_18_7:
    CALL ISI_18_7
    JB SENSOR_2,SCAN_18_6
    MOV DPTR,#DS_18_7
    JMP tulis_LCD_bawah
    SCAN_18_6:
    CALL ISI_18_6
    JB SENSOR_2,SCAN_18_5
    MOV DPTR,#DS_18_6
    JMP tulis_LCD_bawah
    SCAN_18_5:
    CALL ISI_18_5
    JB SENSOR_2,SCAN_18_4
    MOV DPTR,#DS_18_5
    JMP tulis_LCD_bawah
    SCAN_18_4:
    CALL ISI_18_4
    JB SENSOR_2,SCAN_18_3
    MOV DPTR,#DS_18_4
    JMP tulis_LCD_bawah
    SCAN_18_3:
    CALL ISI_18_3
    JB SENSOR_2,SCAN_18_2
    MOV DPTR,#DS_18_3
    JMP tulis_LCD_bawah
    SCAN_18_2:
    CALL ISI_18_2
    JB SENSOR_2,SCAN_18_1
    MOV DPTR,#DS_18_2
    JMP tulis_LCD_bawah
    SCAN_18_1:
    CALL ISI_18_1
    JB SENSOR_2,SCAN_18_0
    MOV DPTR,#DS_18_1
    JMP tulis_LCD_bawah
    SCAN_18_0:
    CALL ISI_18_0
    JB SENSOR_2,SCAN_17_9
    MOV DPTR,#DS_18_0
    JMP tulis_LCD_bawah
    SCAN_17_9:
    CALL ISI_17_9
    JB SENSOR_2,SCAN_17_8
    MOV DPTR,#DS_17_9
    JMP tulis_LCD_bawah
    SCAN_17_8:
    CALL ISI_17_8
    JB SENSOR_2,SCAN_17_7
    MOV DPTR,#DS_17_8
    JMP tulis_LCD_bawah
    SCAN_17_7:
    CALL ISI_17_7
    JB SENSOR_2,SCAN_17_6
    MOV DPTR,#DS_17_7
    JMP tulis_LCD_bawah
    SCAN_17_6:
    CALL ISI_17_6
    JB SENSOR_2,SCAN_17_5
    MOV DPTR,#DS_17_6
    JMP tulis_LCD_bawah
    SCAN_17_5:
    CALL ISI_17_5
    JB SENSOR_2,SCAN_17_4
    MOV DPTR,#DS_17_5
    JMP tulis_LCD_bawah
    SCAN_17_4:
    CALL ISI_17_4
    JB SENSOR_2,SCAN_17_3
    MOV DPTR,#DS_17_4
    JMP tulis_LCD_bawah
    SCAN_17_3:
    CALL ISI_17_3
    JB SENSOR_2,SCAN_17_2
    MOV DPTR,#DS_17_3
    JMP tulis_LCD_bawah
    SCAN_17_2:
    CALL ISI_17_2
    JB SENSOR_2,SCAN_17_1
    MOV DPTR,#DS_17_2
    JMP tulis_LCD_bawah
    SCAN_17_1:
    CALL ISI_17_1
    JB SENSOR_2,SCAN_17_0
    MOV DPTR,#DS_17_1
    JMP tulis_LCD_bawah
    SCAN_17_0:
    CALL ISI_17_0
    JB SENSOR_2,SCAN_16_9
    MOV DPTR,#DS_17_0
    JMP tulis_LCD_bawah
    SCAN_16_9:
    CALL ISI_16_9
    JB SENSOR_2,SCAN_16_8
    MOV DPTR,#DS_16_9
    JMP tulis_LCD_bawah
    SCAN_16_8:
    CALL ISI_16_8
    JB SENSOR_2,SCAN_16_7
    MOV DPTR,#DS_16_8
    JMP tulis_LCD_bawah
    SCAN_16_7:
    CALL ISI_16_7
    JB SENSOR_2,SCAN_16_6
    MOV DPTR,#DS_16_7
    JMP tulis_LCD_bawah
    SCAN_16_6:
    CALL ISI_16_6
    JB SENSOR_2,SCAN_16_5
    MOV DPTR,#DS_16_6
    JMP tulis_LCD_bawah
    SCAN_16_5:
    CALL ISI_16_5
    JB SENSOR_2,SCAN_16_4
    MOV DPTR,#DS_16_5
    JMP tulis_LCD_bawah
    SCAN_16_4:
    CALL ISI_16_4
    JB SENSOR_2,SCAN_16_3
    MOV DPTR,#DS_16_4
    JMP tulis_LCD_bawah
    SCAN_16_3:
    CALL ISI_16_3
    JB SENSOR_2,SCAN_16_2
    MOV DPTR,#DS_16_3
    JMP tulis_LCD_bawah
    SCAN_16_2:
    CALL ISI_16_2
    JB SENSOR_2,SCAN_16_1
    MOV DPTR,#DS_16_2
    JMP tulis_LCD_bawah
    SCAN_16_1:
    CALL ISI_16_1
    JB SENSOR_2,SCAN_16_0
    MOV DPTR,#DS_16_1
    JMP tulis_LCD_bawah
    SCAN_16_0:
    CALL ISI_16_0
    JB SENSOR_2,SCAN_15_9
    MOV DPTR,#DS_16_0
    JMP tulis_LCD_bawah
    SCAN_15_9:
    CALL ISI_15_9
    JB SENSOR_2,SCAN_15_8
    MOV DPTR,#DS_15_9
    JMP tulis_LCD_bawah
    SCAN_15_8:
    CALL ISI_15_8
    JB SENSOR_2,SCAN_15_7
    MOV DPTR,#DS_15_8
    JMP tulis_LCD_bawah
    SCAN_15_7:
    CALL ISI_15_7
    JB SENSOR_2,SCAN_15_6
    MOV DPTR,#DS_15_7
    JMP tulis_LCD_bawah
    SCAN_15_6:
    CALL ISI_15_6
    JB SENSOR_2,SCAN_15_5
    MOV DPTR,#DS_15_6
    JMP tulis_LCD_bawah
    SCAN_15_5:
    CALL ISI_15_5
    JB SENSOR_2,SCAN_15_4
    MOV DPTR,#DS_15_5
    JMP tulis_LCD_bawah
    SCAN_15_4:
    CALL ISI_15_4
    JB SENSOR_2,SCAN_15_3
    MOV DPTR,#DS_15_4
    JMP tulis_LCD_bawah
    SCAN_15_3:
    CALL ISI_15_3
    JB SENSOR_2,SCAN_15_2
    MOV DPTR,#DS_15_3
    JMP tulis_LCD_bawah
    SCAN_15_2:
    CALL ISI_15_2
    JB SENSOR_2,SCAN_15_1
    MOV DPTR,#DS_15_2
    JMP tulis_LCD_bawah
    SCAN_15_1:
    CALL ISI_15_1
    JB SENSOR_2,SCAN_15_0
    MOV DPTR,#DS_15_1
    JMP tulis_LCD_bawah
    SCAN_15_0:
    CALL ISI_15_0
    JB SENSOR_2,SCAN_14_9
    MOV DPTR,#DS_15_0
    JMP tulis_LCD_bawah
    SCAN_14_9:
    CALL ISI_14_9
    JB SENSOR_2,SCAN_14_8
    MOV DPTR,#DS_14_9
    JMP tulis_LCD_bawah
    SCAN_14_8:
    CALL ISI_14_8
    JB SENSOR_2,SCAN_14_7
    MOV DPTR,#DS_14_8
    JMP tulis_LCD_bawah
    SCAN_14_7:
    CALL ISI_14_7
    JB SENSOR_2,SCAN_14_6
    MOV DPTR,#DS_14_7
    JMP tulis_LCD_bawah
    SCAN_14_6:
    CALL ISI_14_6
    JB SENSOR_2,SCAN_14_5
    MOV DPTR,#DS_14_6
    JMP tulis_LCD_bawah
    SCAN_14_5:
    CALL ISI_14_5
    JB SENSOR_2,SCAN_14_4
    MOV DPTR,#DS_14_5
    JMP tulis_LCD_bawah
    SCAN_14_4:
    CALL ISI_14_4
    JB SENSOR_2,SCAN_14_3
    MOV DPTR,#DS_14_4
    JMP tulis_LCD_bawah
    SCAN_14_3:
    CALL ISI_14_3
    JB SENSOR_2,SCAN_14_2
    MOV DPTR,#DS_14_3
    JMP tulis_LCD_bawah
    SCAN_14_2:
    CALL ISI_14_2
    JB SENSOR_2,SCAN_14_1
    MOV DPTR,#DS_14_2
    JMP tulis_LCD_bawah
    SCAN_14_1:
    CALL ISI_14_1
    JB SENSOR_2,SCAN_14_0
    MOV DPTR,#DS_14_1
    JMP tulis_LCD_bawah
    SCAN_14_0:
    CALL ISI_14_0
    JB SENSOR_2,SCAN_13_9
    MOV DPTR,#DS_14_0
    JMP tulis_LCD_bawah
    SCAN_13_9:
    CALL ISI_13_9
    JB SENSOR_2,SCAN_13_8
    MOV DPTR,#DS_13_9
    JMP tulis_LCD_bawah
    SCAN_13_8:
    CALL ISI_13_8
    JB SENSOR_2,SCAN_13_7
    MOV DPTR,#DS_13_8
    JMP tulis_LCD_bawah
    SCAN_13_7:
    CALL ISI_13_7
    JB SENSOR_2,SCAN_13_6
    MOV DPTR,#DS_13_7
    JMP tulis_LCD_bawah
    SCAN_13_6:
    CALL ISI_13_6
    JB SENSOR_2,SCAN_13_5
    MOV DPTR,#DS_13_6
    JMP tulis_LCD_bawah
    SCAN_13_5:
    CALL ISI_13_5
    JB SENSOR_2,SCAN_13_4
    MOV DPTR,#DS_13_5
    JMP tulis_LCD_bawah
    SCAN_13_4:
    CALL ISI_13_4
    JB SENSOR_2,SCAN_13_3
    MOV DPTR,#DS_13_4
    JMP tulis_LCD_bawah
    SCAN_13_3:
    CALL ISI_13_3
    JB SENSOR_2,SCAN_13_2
    MOV DPTR,#DS_13_3
    JMP tulis_LCD_bawah
    SCAN_13_2:
    CALL ISI_13_2
    JB SENSOR_2,SCAN_13_1
    MOV DPTR,#DS_13_2
    JMP tulis_LCD_bawah
    SCAN_13_1:
    CALL ISI_13_1
    JB SENSOR_2,SCAN_13_0
    MOV DPTR,#DS_13_1
    JMP tulis_LCD_bawah
    SCAN_13_0:
    CALL ISI_13_0
    JB SENSOR_2,SCAN_12_9
    MOV DPTR,#DS_13_0
    JMP tulis_LCD_bawah
    SCAN_12_9:
    CALL ISI_12_9
    JB SENSOR_2,SCAN_12_8
    MOV DPTR,#DS_12_9
    JMP tulis_LCD_bawah
    SCAN_12_8:
    CALL ISI_12_8
    JB SENSOR_2,SCAN_12_7
    MOV DPTR,#DS_12_8
    JMP tulis_LCD_bawah
    SCAN_12_7:
    CALL ISI_12_7
    JB SENSOR_2,SCAN_12_6
    MOV DPTR,#DS_12_7
    JMP tulis_LCD_bawah
    SCAN_12_6:
    CALL ISI_12_6
    JB SENSOR_2,SCAN_12_5
    MOV DPTR,#DS_12_6
    JMP tulis_LCD_bawah
    SCAN_12_5:
    CALL ISI_12_5
    JB SENSOR_2,SCAN_12_4
    MOV DPTR,#DS_12_5
    JMP tulis_LCD_bawah
    SCAN_12_4:
    CALL ISI_12_4
    JB SENSOR_2,SCAN_12_3
    MOV DPTR,#DS_12_4
    JMP tulis_LCD_bawah
    SCAN_12_3:
    CALL ISI_12_3
    JB SENSOR_2,SCAN_12_2
    MOV DPTR,#DS_12_3
    JMP tulis_LCD_bawah
    SCAN_12_2:
    CALL ISI_12_2
    JB SENSOR_2,SCAN_12_1
    MOV DPTR,#DS_12_2
    JMP tulis_LCD_bawah
    SCAN_12_1:
    CALL ISI_12_1
    JB SENSOR_2,SCAN_12_0
    MOV DPTR,#DS_12_1
    JMP tulis_LCD_bawah
    SCAN_12_0:
    CALL ISI_12_0
    JB SENSOR_2,SCAN_11_9
    MOV DPTR,#DS_12_0
    JMP tulis_LCD_bawah
    SCAN_11_9:
    CALL ISI_11_9
    JB SENSOR_2,SCAN_11_8
    MOV DPTR,#DS_11_9
    JMP tulis_LCD_bawah
    SCAN_11_8:
    CALL ISI_11_8
    JB SENSOR_2,SCAN_11_7
    MOV DPTR,#DS_11_8
    JMP tulis_LCD_bawah
    SCAN_11_7:
    CALL ISI_11_7
    JB SENSOR_2,SCAN_11_6
    MOV DPTR,#DS_11_7
    JMP tulis_LCD_bawah
    SCAN_11_6:
    CALL ISI_11_6
    JB SENSOR_2,SCAN_11_5
    MOV DPTR,#DS_11_6
    JMP tulis_LCD_bawah
    SCAN_11_5:
    CALL ISI_11_5
    JB SENSOR_2,SCAN_11_4
    MOV DPTR,#DS_11_5
    JMP tulis_LCD_bawah
    SCAN_11_4:
    CALL ISI_11_4
    JB SENSOR_2,SCAN_11_3
    MOV DPTR,#DS_11_4
    JMP tulis_LCD_bawah
    SCAN_11_3:
    CALL ISI_11_3
    JB SENSOR_2,SCAN_11_2
    MOV DPTR,#DS_11_3
    JMP tulis_LCD_bawah
    SCAN_11_2:
    CALL ISI_11_2
    JB SENSOR_2,SCAN_11_1
    MOV DPTR,#DS_11_2
    JMP tulis_LCD_bawah
    SCAN_11_1:
    CALL ISI_11_1
    JB SENSOR_2,SCAN_11_0
    MOV DPTR,#DS_11_1
    JMP tulis_LCD_bawah
    SCAN_11_0:
    CALL ISI_11_0
    JB SENSOR_2,SCAN_10_9
    MOV DPTR,#DS_11_0
    JMP tulis_LCD_bawah
    SCAN_10_9:
    CALL ISI_10_9
    JB SENSOR_2,SCAN_10_8
    MOV DPTR,#DS_10_9
    JMP tulis_LCD_bawah
    SCAN_10_8:
    CALL ISI_10_8
    JB SENSOR_2,SCAN_10_7
    MOV DPTR,#DS_10_8
    JMP tulis_LCD_bawah
    SCAN_10_7:
    CALL ISI_10_7
    JB SENSOR_2,SCAN_10_6
    MOV DPTR,#DS_10_7
    JMP tulis_LCD_bawah
    SCAN_10_6:
    CALL ISI_10_6
    JB SENSOR_2,SCAN_10_5
    MOV DPTR,#DS_10_6
    JMP tulis_LCD_bawah
    SCAN_10_5:
    CALL ISI_10_5
    JB SENSOR_2,SCAN_10_4
    MOV DPTR,#DS_10_5
    JMP tulis_LCD_bawah
    SCAN_10_4:
    CALL ISI_10_4
    JB SENSOR_2,SCAN_10_3
    MOV DPTR,#DS_10_4
    JMP tulis_LCD_bawah
    SCAN_10_3:
    CALL ISI_10_3
    JB SENSOR_2,SCAN_10_2
    MOV DPTR,#DS_10_3
    JMP tulis_LCD_bawah
    SCAN_10_2:
    CALL ISI_10_2
    JB SENSOR_2,SCAN_10_1
    MOV DPTR,#DS_10_2
    JMP tulis_LCD_bawah
    SCAN_10_1:
    CALL ISI_10_1
    JB SENSOR_2,SCAN_10_0
    MOV DPTR,#DS_10_1
    JMP tulis_LCD_bawah
    SCAN_10_0:
    CALL ISI_10_0
    JB SENSOR_2,SCAN_9_9
    MOV DPTR,#DS_10_0
    JMP tulis_LCD_bawah
    SCAN_9_9:
    CALL ISI_9_9
    JB SENSOR_2,SCAN_9_8
    MOV DPTR,#DS_9_9
    JMP tulis_LCD_bawah
    SCAN_9_8:
    CALL ISI_9_8
    JB SENSOR_2,SCAN_9_7
    MOV DPTR,#DS_9_8
    JMP tulis_LCD_bawah
    SCAN_9_7:
    CALL ISI_9_7
    JB SENSOR_2,SCAN_9_6
    MOV DPTR,#DS_9_7
    JMP tulis_LCD_bawah
    SCAN_9_6:
    CALL ISI_9_6
    JB SENSOR_2,SCAN_9_5
    MOV DPTR,#DS_9_6
    JMP tulis_LCD_bawah
    SCAN_9_5:
    CALL ISI_9_5
    JB SENSOR_2,SCAN_9_4
    MOV DPTR,#DS_9_5
    JMP tulis_LCD_bawah
    SCAN_9_4:
    CALL ISI_9_4
    JB SENSOR_2,SCAN_9_3
    MOV DPTR,#DS_9_4
    JMP tulis_LCD_bawah
    SCAN_9_3:
    CALL ISI_9_3
    JB SENSOR_2,SCAN_9_2
    MOV DPTR,#DS_9_3
    JMP tulis_LCD_bawah
    SCAN_9_2:
    CALL ISI_9_2
    JB SENSOR_2,SCAN_9_1
    MOV DPTR,#DS_9_2
    JMP tulis_LCD_bawah
    SCAN_9_1:
    CALL ISI_9_1
    JB SENSOR_2,SCAN_9_0
    MOV DPTR,#DS_9_1
    JMP tulis_LCD_bawah
    SCAN_9_0:
    CALL ISI_9_0
    JB SENSOR_2,SCAN_8_9
    MOV DPTR,#DS_9_0
    JMP tulis_LCD_bawah
    SCAN_8_9:
    CALL ISI_8_9
    JB SENSOR_2,SCAN_8_8
    MOV DPTR,#DS_8_9
    JMP tulis_LCD_bawah
    SCAN_8_8:
    CALL ISI_8_8
    JB SENSOR_2,SCAN_8_7
    MOV DPTR,#DS_8_8
    JMP tulis_LCD_bawah
    SCAN_8_7:
    CALL ISI_8_7
    JB SENSOR_2,SCAN_8_6
    MOV DPTR,#DS_8_7
    JMP tulis_LCD_bawah
    SCAN_8_6:
    CALL ISI_8_6
    JB SENSOR_2,SCAN_8_5
    MOV DPTR,#DS_8_6
    JMP tulis_LCD_bawah
    SCAN_8_5:
    CALL ISI_8_5
    JB SENSOR_2,SCAN_8_4
    MOV DPTR,#DS_8_5
    JMP tulis_LCD_bawah
    SCAN_8_4:
    CALL ISI_8_4
    JB SENSOR_2,SCAN_8_3
    MOV DPTR,#DS_8_4
    JMP tulis_LCD_bawah
    SCAN_8_3:
    CALL ISI_8_3
    JB SENSOR_2,SCAN_8_2
    MOV DPTR,#DS_8_3
    JMP tulis_LCD_bawah
    SCAN_8_2:
    CALL ISI_8_2
    JB SENSOR_2,SCAN_8_1
    MOV DPTR,#DS_8_2
    JMP tulis_LCD_bawah
    SCAN_8_1:
    CALL ISI_8_1
    JB SENSOR_2,SCAN_8_0
    MOV DPTR,#DS_8_1
    JMP tulis_LCD_bawah
    SCAN_8_0:
    CALL ISI_8_0
    JB SENSOR_2,SCAN_7_9
    MOV DPTR,#DS_8_0
    JMP tulis_LCD_bawah
    SCAN_7_9:
    CALL ISI_7_9
    JB SENSOR_2,SCAN_7_8
    MOV DPTR,#DS_7_9
    JMP tulis_LCD_bawah
    SCAN_7_8:
    CALL ISI_7_8
    JB SENSOR_2,SCAN_7_7
    MOV DPTR,#DS_7_8
    JMP tulis_LCD_bawah
    SCAN_7_7:
    CALL ISI_7_7
    JB SENSOR_2,SCAN_7_6
    MOV DPTR,#DS_7_7
    JMP tulis_LCD_bawah
    SCAN_7_6:
    CALL ISI_7_6
    JB SENSOR_2,SCAN_7_5
    MOV DPTR,#DS_7_6
    JMP tulis_LCD_bawah
    SCAN_7_5:
    CALL ISI_7_5
    JB SENSOR_2,SCAN_7_4
    MOV DPTR,#DS_7_5
    JMP tulis_LCD_bawah
    SCAN_7_4:
    CALL ISI_7_4
    JB SENSOR_2,SCAN_7_3
    MOV DPTR,#DS_7_4
    JMP tulis_LCD_bawah
    SCAN_7_3:
    CALL ISI_7_3
    JB SENSOR_2,SCAN_7_2
    MOV DPTR,#DS_7_3
    JMP tulis_LCD_bawah
    SCAN_7_2:
    CALL ISI_7_2
    JB SENSOR_2,SCAN_7_1
    MOV DPTR,#DS_7_2
    JMP tulis_LCD_bawah
    SCAN_7_1:
    CALL ISI_7_1
    JB SENSOR_2,SCAN_7_0
    MOV DPTR,#DS_7_1
    JMP tulis_LCD_bawah
    SCAN_7_0:
    CALL ISI_7_0
    JB SENSOR_2,SCAN_6_9
    MOV DPTR,#DS_7_0
    JMP tulis_LCD_bawah
    SCAN_6_9:
    CALL ISI_6_9
    JB SENSOR_2,SCAN_6_8
    MOV DPTR,#DS_6_9
    JMP tulis_LCD_bawah
    SCAN_6_8:
    CALL ISI_6_8
    JB SENSOR_2,SCAN_6_7
    MOV DPTR,#DS_6_8
    JMP tulis_LCD_bawah
    SCAN_6_7:
    CALL ISI_6_7
    JB SENSOR_2,SCAN_6_6
    MOV DPTR,#DS_6_7
    JMP tulis_LCD_bawah
    SCAN_6_6:
    CALL ISI_6_6
    JB SENSOR_2,SCAN_6_5
    MOV DPTR,#DS_6_6
    JMP tulis_LCD_bawah
    SCAN_6_5:
    CALL ISI_6_5
    JB SENSOR_2,SCAN_6_4
    MOV DPTR,#DS_6_5
    JMP tulis_LCD_bawah
    SCAN_6_4:
    CALL ISI_6_4
    JB SENSOR_2,SCAN_6_3
    MOV DPTR,#DS_6_4
    JMP tulis_LCD_bawah
    SCAN_6_3:
    CALL ISI_6_3
    JB SENSOR_2,SCAN_6_2
    MOV DPTR,#DS_6_3
    JMP tulis_LCD_bawah
    SCAN_6_2:
    CALL ISI_6_2
    JB SENSOR_2,SCAN_6_1
    MOV DPTR,#DS_6_2
    JMP tulis_LCD_bawah
    SCAN_6_1:
    CALL ISI_6_1
    JB SENSOR_2,SCAN_6_0
    MOV DPTR,#DS_6_1
    JMP tulis_LCD_bawah
    SCAN_6_0:
    CALL ISI_6_0
    JB SENSOR_2,SCAN_5_9
    MOV DPTR,#DS_6_0
    JMP tulis_LCD_bawah
    SCAN_5_9:
    CALL ISI_5_9
    JB SENSOR_2,SCAN_5_8
    MOV DPTR,#DS_5_9
    JMP tulis_LCD_bawah
    SCAN_5_8:
    CALL ISI_5_8
    JB SENSOR_2,SCAN_5_7
    MOV DPTR,#DS_5_8
    JMP tulis_LCD_bawah
    SCAN_5_7:
    CALL ISI_5_7
    JB SENSOR_2,SCAN_5_6
    MOV DPTR,#DS_5_7
    JMP tulis_LCD_bawah
    SCAN_5_6:
    CALL ISI_5_6
    JB SENSOR_2,SCAN_5_5
    MOV DPTR,#DS_5_6
    JMP tulis_LCD_bawah
    SCAN_5_5:
    CALL ISI_5_5
    JB SENSOR_2,SCAN_5_4
    MOV DPTR,#DS_5_5
    JMP tulis_LCD_bawah
    SCAN_5_4:
    CALL ISI_5_4
    JB SENSOR_2,SCAN_5_3
    MOV DPTR,#DS_5_4
    JMP tulis_LCD_bawah
    SCAN_5_3:
    CALL ISI_5_3
    JB SENSOR_2,SCAN_5_2
    MOV DPTR,#DS_5_3
    JMP tulis_LCD_bawah
    SCAN_5_2:
    CALL ISI_5_2
    JB SENSOR_2,SCAN_5_1
    MOV DPTR,#DS_5_2
    JMP tulis_LCD_bawah
    SCAN_5_1:
    CALL ISI_5_1
    JB SENSOR_2,SCAN_5_0
    MOV DPTR,#DS_5_1
    JMP tulis_LCD_bawah
    SCAN_5_0:
    CALL ISI_5_0
    JB SENSOR_2,SCAN_4_9
    MOV DPTR,#DS_5_0
    JMP tulis_LCD_bawah
    SCAN_4_9:
    CALL ISI_4_9
    JB SENSOR_2,SCAN_4_8
    MOV DPTR,#DS_4_9
    JMP tulis_LCD_bawah
    SCAN_4_8:
    CALL ISI_4_8
    JB SENSOR_2,SCAN_4_7
    MOV DPTR,#DS_4_8
    JMP tulis_LCD_bawah
    SCAN_4_7:
    CALL ISI_4_7
    JB SENSOR_2,SCAN_4_6
    MOV DPTR,#DS_4_7
    JMP tulis_LCD_bawah
    SCAN_4_6:
    CALL ISI_4_6
    JB SENSOR_2,SCAN_4_5
    MOV DPTR,#DS_4_6
    JMP tulis_LCD_bawah
    SCAN_4_5:
    CALL ISI_4_5
    JB SENSOR_2,SCAN_4_4
    MOV DPTR,#DS_4_5
    JMP tulis_LCD_bawah
    SCAN_4_4:
    CALL ISI_4_4
    JB SENSOR_2,SCAN_4_3
    MOV DPTR,#DS_4_4
    JMP tulis_LCD_bawah
    SCAN_4_3:
    CALL ISI_4_3
    JB SENSOR_2,SCAN_4_2
    MOV DPTR,#DS_4_3
    JMP tulis_LCD_bawah
    SCAN_4_2:
    CALL ISI_4_2
    JB SENSOR_2,SCAN_4_1
    MOV DPTR,#DS_4_2
    JMP tulis_LCD_bawah
    SCAN_4_1:
    CALL ISI_4_1
    JB SENSOR_2,SCAN_4_0
    MOV DPTR,#DS_4_1
    JMP tulis_LCD_bawah
    SCAN_4_0:
    CALL ISI_4_0
    JB SENSOR_2,SCAN_3_9
    MOV DPTR,#DS_4_0
    JMP tulis_LCD_bawah
    SCAN_3_9:
    CALL ISI_3_9
    JB SENSOR_2,SCAN_3_8
    MOV DPTR,#DS_3_9
    JMP tulis_LCD_bawah
    SCAN_3_8:
    CALL ISI_3_8
    JB SENSOR_2,SCAN_3_7
    MOV DPTR,#DS_3_8
    JMP tulis_LCD_bawah
    SCAN_3_7:
    CALL ISI_3_7
    JB SENSOR_2,SCAN_3_6
    MOV DPTR,#DS_3_7
    JMP tulis_LCD_bawah
    SCAN_3_6:
    CALL ISI_3_6
    JB SENSOR_2,SCAN_3_5
    MOV DPTR,#DS_3_6
    JMP tulis_LCD_bawah
    SCAN_3_5:
    CALL ISI_3_5
    JB SENSOR_2,SCAN_3_4
    MOV DPTR,#DS_3_5
    JMP tulis_LCD_bawah
    SCAN_3_4:
    CALL ISI_3_4
    JB SENSOR_2,SCAN_3_3
    MOV DPTR,#DS_3_4
    JMP tulis_LCD_bawah
    SCAN_3_3:
    CALL ISI_3_3
    JB SENSOR_2,SCAN_3_2
    MOV DPTR,#DS_3_3
    JMP tulis_LCD_bawah
    SCAN_3_2:
    CALL ISI_3_2
    JB SENSOR_2,SCAN_3_1
    MOV DPTR,#DS_3_2
    JMP tulis_LCD_bawah
    SCAN_3_1:
    CALL ISI_3_1
    JB SENSOR_2,SCAN_3_0
    MOV DPTR,#DS_3_1
    JMP tulis_LCD_bawah
    SCAN_3_0:
    CALL ISI_3_0
    JB SENSOR_2,SCAN_2_9
    MOV DPTR,#DS_3_0
    JMP tulis_LCD_bawah
    SCAN_2_9:
    CALL ISI_2_9
    JB SENSOR_2,SCAN_2_8
    MOV DPTR,#DS_2_9
    JMP tulis_LCD_bawah
    SCAN_2_8:
    CALL ISI_2_8
    JB SENSOR_2,SCAN_2_7
    MOV DPTR,#DS_2_8
    JMP tulis_LCD_bawah
    SCAN_2_7:
    CALL ISI_2_7
    JB SENSOR_2,SCAN_2_6
    MOV DPTR,#DS_2_7
    JMP tulis_LCD_bawah
    SCAN_2_6:
    CALL ISI_2_6
    JB SENSOR_2,SCAN_2_5
    MOV DPTR,#DS_2_6
    JMP tulis_LCD_bawah
    SCAN_2_5:
    CALL ISI_2_5
    JB SENSOR_2,SCAN_2_4
    MOV DPTR,#DS_2_5
    JMP tulis_LCD_bawah
    SCAN_2_4:
    CALL ISI_2_4
    JB SENSOR_2,SCAN_2_3
    MOV DPTR,#DS_2_4
    JMP tulis_LCD_bawah
    SCAN_2_3:
    CALL ISI_2_3
    JB SENSOR_2,SCAN_2_2
    MOV DPTR,#DS_2_3
    JMP tulis_LCD_bawah
    SCAN_2_2:
    CALL ISI_2_2
    JB SENSOR_2,SCAN_2_1
    MOV DPTR,#DS_2_2
    JMP tulis_LCD_bawah
    SCAN_2_1:
    CALL ISI_2_1
    JB SENSOR_2,SCAN_2_0
    MOV DPTR,#DS_2_1
    JMP tulis_LCD_bawah
    SCAN_2_0:
    CALL ISI_2_0
    JB SENSOR_2,SCAN_1_9
    MOV DPTR,#DS_2_0
    JMP tulis_LCD_bawah
    SCAN_1_9:
    CALL ISI_1_9
    JB SENSOR_2,SCAN_1_8
    MOV DPTR,#DS_1_9
    JMP tulis_LCD_bawah
    SCAN_1_8:
    CALL ISI_1_8
    JB SENSOR_2,SCAN_1_7
    MOV DPTR,#DS_1_8
    JMP tulis_LCD_bawah
    SCAN_1_7:
    CALL ISI_1_7
    JB SENSOR_2,SCAN_1_6
    MOV DPTR,#DS_1_7
    JMP tulis_LCD_bawah
    SCAN_1_6:
    CALL ISI_1_6
    JB SENSOR_2,SCAN_1_5
    MOV DPTR,#DS_1_6
    JMP tulis_LCD_bawah
    SCAN_1_5:
    CALL ISI_1_5
    JB SENSOR_2,SCAN_1_4
    MOV DPTR,#DS_1_5
    JMP tulis_LCD_bawah
    SCAN_1_4:
    CALL ISI_1_4
    JB SENSOR_2,SCAN_1_3
    MOV DPTR,#DS_1_4
    JMP tulis_LCD_bawah
    SCAN_1_3:
    CALL ISI_1_3
    JB SENSOR_2,SCAN_1_2
    MOV DPTR,#DS_1_3
    JMP tulis_LCD_bawah
    SCAN_1_2:
    CALL ISI_1_2
    JB SENSOR_2,SCAN_1_1
    MOV DPTR,#DS_1_2
    JMP tulis_LCD_bawah
    SCAN_1_1:
    CALL ISI_1_1
    JB SENSOR_2,SCAN_1_0
    MOV DPTR,#DS_1_1
    JMP tulis_LCD_bawah
    SCAN_1_0:
    CALL ISI_1_0
    JB SENSOR_2,SCAN_0_9
    MOV DPTR,#DS_1_0
    JMP tulis_LCD_bawah
    SCAN_0_9:
    CALL ISI_0_9
    JB SENSOR_2,SCAN_0_8
    MOV DPTR,#DS_0_9
    JMP tulis_LCD_bawah
    SCAN_0_8:
    CALL ISI_0_8
    JB SENSOR_2,SCAN_0_7
    MOV DPTR,#DS_0_8
    JMP tulis_LCD_bawah
    SCAN_0_7:
    CALL ISI_0_7
    JB SENSOR_2,SCAN_0_6
    MOV DPTR,#DS_0_7
    JMP tulis_LCD_bawah
    SCAN_0_6:
    CALL ISI_0_6
    JB SENSOR_2,SCAN_0_5
    MOV DPTR,#DS_0_6
    JMP tulis_LCD_bawah
    SCAN_0_5:
    CALL ISI_0_5
    JB SENSOR_2,SCAN_0_4
    MOV DPTR,#DS_0_5
    JMP tulis_LCD_bawah
    SCAN_0_4:
    CALL ISI_0_4
    JB SENSOR_2,SCAN_0_3
    MOV DPTR,#DS_0_4
    JMP tulis_LCD_bawah
    SCAN_0_3:
    CALL ISI_0_3
    JB SENSOR_2,SCAN_0_2
    MOV DPTR,#DS_0_3
    JMP tulis_LCD_bawah
    SCAN_0_2:
    CALL ISI_0_2
    JB SENSOR_2,SCAN_0_1
    MOV DPTR,#DS_0_2
    JMP tulis_LCD_bawah
    SCAN_0_1:
    CALL ISI_0_1
    JB SENSOR_2,SCAN_0_0
    MOV DPTR,#DS_0_1
    JMP tulis_LCD_bawah
    SCAN_0_0:
    MOV DPTR,#DS_0_0
    JMP tulis_LCD_bawah
    ;TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    ;LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
    ISI_20_0:
    MOV TH0,#High patoan
    MOV TL0,#Low patoan
    JMP DITUNGGU
    ISI_19_9:
    MOV TH0,#High W_19_9
    MOV TL0,#Low W_19_9
    JMP DITUNGGU
    ISI_19_8:
    MOV TH0,#High W_19_8
    MOV TL0,#Low W_19_8
    JMP DITUNGGU
    ISI_19_7:
    MOV TH0,#High W_19_7
    MOV TL0,#Low W_19_7
    JMP DITUNGGU
    ISI_19_6:
    MOV TH0,#High W_19_6
    MOV TL0,#Low W_19_6
    JMP DITUNGGU
    ISI_19_5:
    MOV TH0,#High W_19_5
    MOV TL0,#Low W_19_5
    JMP DITUNGGU
    ISI_19_4:
    MOV TH0,#High W_19_4
    MOV TL0,#Low W_19_4
    JMP DITUNGGU
    ISI_19_3:
    MOV TH0,#High W_19_3
    MOV TL0,#Low W_19_3
    JMP DITUNGGU
    ISI_19_2:
    MOV TH0,#High W_19_2
    MOV TL0,#Low W_19_2
    JMP DITUNGGU
    ISI_19_1:
    MOV TH0,#High W_19_1
    MOV TL0,#Low W_19_1
    JMP DITUNGGU
    ISI_19_0:
    MOV TH0,#High W_19_0
    MOV TL0,#Low W_19_0
    JMP DITUNGGU
    ISI_18_9:
    MOV TH0,#High W_18_9
    MOV TL0,#Low W_18_9
    JMP DITUNGGU
    ISI_18_8:
    MOV TH0,#High W_18_8
    MOV TL0,#Low W_18_8
    JMP DITUNGGU
    ISI_18_7:
    MOV TH0,#High W_18_7
    MOV TL0,#Low W_18_7
    JMP DITUNGGU
    ISI_18_6:
    MOV TH0,#High W_18_6
    MOV TL0,#Low W_18_6
    JMP DITUNGGU
    ISI_18_5:
    MOV TH0,#High W_18_5
    MOV TL0,#Low W_18_5
    JMP DITUNGGU
    ISI_18_4:
    MOV TH0,#High W_18_4
    MOV TL0,#Low W_18_4
    JMP DITUNGGU
    ISI_18_3:
    MOV TH0,#High W_18_3
    MOV TL0,#Low W_18_3
    JMP DITUNGGU
    ISI_18_2:
    MOV TH0,#High W_18_2
    MOV TL0,#Low W_18_2
    JMP DITUNGGU
    ISI_18_1:
    MOV TH0,#High W_18_1
    MOV TL0,#Low W_18_1
    JMP DITUNGGU
    ISI_18_0:
    MOV TH0,#High W_18_0
    MOV TL0,#Low W_18_0
    JMP DITUNGGU
    ISI_17_9:
    MOV TH0,#High W_17_9
    MOV TL0,#Low W_17_9
    JMP DITUNGGU
    ISI_17_8:
    MOV TH0,#High W_17_8
    MOV TL0,#Low W_17_8
    JMP DITUNGGU
    ISI_17_7:
    MOV TH0,#High W_17_7
    MOV TL0,#Low W_17_7
    JMP DITUNGGU
    ISI_17_6:
    MOV TH0,#High W_17_6
    MOV TL0,#Low W_17_6
    JMP DITUNGGU
    ISI_17_5:
    MOV TH0,#High W_17_5
    MOV TL0,#Low W_17_5
    JMP DITUNGGU
    ISI_17_4:
    MOV TH0,#High W_17_4
    MOV TL0,#Low W_17_4
    JMP DITUNGGU
    ISI_17_3:
    MOV TH0,#High W_17_3
    MOV TL0,#Low W_17_3
    JMP DITUNGGU
    ISI_17_2:
    MOV TH0,#High W_17_2
    MOV TL0,#Low W_17_2
    JMP DITUNGGU
    ISI_17_1:
    MOV TH0,#High W_17_1
    MOV TL0,#Low W_17_1
    JMP DITUNGGU
    ISI_17_0:
    MOV TH0,#High W_17_0
    MOV TL0,#Low W_17_0
    JMP DITUNGGU
    ISI_16_9:
    MOV TH0,#High W_16_9
    MOV TL0,#Low W_16_9
    JMP DITUNGGU
    ISI_16_8:
    MOV TH0,#High W_16_8
    MOV TL0,#Low W_16_8
    JMP DITUNGGU
    ISI_16_7:
    MOV TH0,#High W_16_7
    MOV TL0,#Low W_16_7
    JMP DITUNGGU
    ISI_16_6:
    MOV TH0,#High W_16_6
    MOV TL0,#Low W_16_6
    JMP DITUNGGU
    ISI_16_5:
    MOV TH0,#High W_16_5
    MOV TL0,#Low W_16_5
    JMP DITUNGGU
    ISI_16_4:
    MOV TH0,#High W_16_4
    MOV TL0,#Low W_16_4
    JMP DITUNGGU
    ISI_16_3:
    MOV TH0,#High W_16_3
    MOV TL0,#Low W_16_3
    JMP DITUNGGU
    ISI_16_2:
    MOV TH0,#High W_16_2
    MOV TL0,#Low W_16_2
    JMP DITUNGGU
    ISI_16_1:
    MOV TH0,#High W_16_1
    MOV TL0,#Low W_16_1
    JMP DITUNGGU
    ISI_16_0:
    MOV TH0,#High W_16_0
    MOV TL0,#Low W_16_0
    JMP DITUNGGU
    ISI_15_9:
    MOV TH0,#High W_15_9
    MOV TL0,#Low W_15_9
    JMP DITUNGGU
    ISI_15_8:
    MOV TH0,#High W_15_8
    MOV TL0,#Low W_15_8
    JMP DITUNGGU
    ISI_15_7:
    MOV TH0,#High W_15_7
    MOV TL0,#Low W_15_7
    JMP DITUNGGU
    ISI_15_6:
    MOV TH0,#High W_15_6
    MOV TL0,#Low W_15_6
    JMP DITUNGGU
    ISI_15_5:
    MOV TH0,#High W_15_5
    MOV TL0,#Low W_15_5
    JMP DITUNGGU
    ISI_15_4:
    MOV TH0,#High W_15_4
    MOV TL0,#Low W_15_4
    JMP DITUNGGU
    ISI_15_3:
    MOV TH0,#High W_15_3
    MOV TL0,#Low W_15_3
    JMP DITUNGGU
    ISI_15_2:
    MOV TH0,#High W_15_2
    MOV TL0,#Low W_15_2
    JMP DITUNGGU
    ISI_15_1:
    MOV TH0,#High W_15_1
    MOV TL0,#Low W_15_1
    JMP DITUNGGU
    ISI_15_0:
    MOV TH0,#High W_15_0
    MOV TL0,#Low W_15_0
    JMP DITUNGGU
    ISI_14_9:
    MOV TH0,#High W_14_9
    MOV TL0,#Low W_14_9
    JMP DITUNGGU
    ISI_14_8:
    MOV TH0,#High W_14_8
    MOV TL0,#Low W_14_8
    JMP DITUNGGU
    ISI_14_7:
    MOV TH0,#High W_14_7
    MOV TL0,#Low W_14_7
    JMP DITUNGGU
    ISI_14_6:
    MOV TH0,#High W_14_6
    MOV TL0,#Low W_14_6
    JMP DITUNGGU
    ISI_14_5:
    MOV TH0,#High W_14_5
    MOV TL0,#Low W_14_5
    JMP DITUNGGU
    ISI_14_4:
    MOV TH0,#High W_14_4
    MOV TL0,#Low W_14_4
    JMP DITUNGGU
    ISI_14_3:
    MOV TH0,#High W_14_3
    MOV TL0,#Low W_14_3
    JMP DITUNGGU
    ISI_14_2:
    MOV TH0,#High W_14_2
    MOV TL0,#Low W_14_2
    JMP DITUNGGU
    ISI_14_1:
    MOV TH0,#High W_14_1
    MOV TL0,#Low W_14_1
    JMP DITUNGGU
    ISI_14_0:
    MOV TH0,#High W_14_0
    MOV TL0,#Low W_14_0
    JMP DITUNGGU
    ISI_13_9:
    MOV TH0,#High W_13_9
    MOV TL0,#Low W_13_9
    JMP DITUNGGU
    ISI_13_8:
    MOV TH0,#High W_13_8
    MOV TL0,#Low W_13_8
    JMP DITUNGGU
    ISI_13_7:
    MOV TH0,#High W_13_7
    MOV TL0,#Low W_13_7
    JMP DITUNGGU
    ISI_13_6:
    MOV TH0,#High W_13_6
    MOV TL0,#Low W_13_6
    JMP DITUNGGU
    ISI_13_5:
    MOV TH0,#High W_13_5
    MOV TL0,#Low W_13_5
    JMP DITUNGGU
    ISI_13_4:
    MOV TH0,#High W_13_4
    MOV TL0,#Low W_13_4
    JMP DITUNGGU
    ISI_13_3:
    MOV TH0,#High W_13_3
    MOV TL0,#Low W_13_3
    JMP DITUNGGU
    ISI_13_2:
    MOV TH0,#High W_13_2
    MOV TL0,#Low W_13_2
    JMP DITUNGGU
    ISI_13_1:
    MOV TH0,#High W_13_1
    MOV TL0,#Low W_13_1
    JMP DITUNGGU
    ISI_13_0:
    MOV TH0,#High W_13_0
    MOV TL0,#Low W_13_0
    JMP DITUNGGU
    ISI_12_9:
    MOV TH0,#High W_12_9
    MOV TL0,#Low W_12_9
    JMP DITUNGGU
    ISI_12_8:
    MOV TH0,#High W_12_8
    MOV TL0,#Low W_12_8
    JMP DITUNGGU
    ISI_12_7:
    MOV TH0,#High W_12_7
    MOV TL0,#Low W_12_7
    JMP DITUNGGU
    ISI_12_6:
    MOV TH0,#High W_12_6
    MOV TL0,#Low W_12_6
    JMP DITUNGGU
    ISI_12_5:
    MOV TH0,#High W_12_5
    MOV TL0,#Low W_12_5
    JMP DITUNGGU
    ISI_12_4:
    MOV TH0,#High W_12_4
    MOV TL0,#Low W_12_4
    JMP DITUNGGU
    ISI_12_3:
    MOV TH0,#High W_12_3
    MOV TL0,#Low W_12_3
    JMP DITUNGGU
    ISI_12_2:
    MOV TH0,#High W_12_2
    MOV TL0,#Low W_12_2
    JMP DITUNGGU
    ISI_12_1:
    MOV TH0,#High W_12_1
    MOV TL0,#Low W_12_1
    JMP DITUNGGU
    ISI_12_0:
    MOV TH0,#High w_12_0
    MOV TL0,#Low w_12_0
    JMP DITUNGGU
    ISI_11_9:
    MOV TH0,#High W_11_9
    MOV TL0,#Low W_11_9
    JMP DITUNGGU
    ISI_11_8:
    MOV TH0,#High W_11_8
    MOV TL0,#Low W_11_8
    JMP DITUNGGU
    ISI_11_7:
    MOV TH0,#High W_11_7
    MOV TL0,#Low W_11_7
    JMP DITUNGGU
    ISI_11_6:
    MOV TH0,#High W_11_6
    MOV TL0,#Low W_11_6
    JMP DITUNGGU
    ISI_11_5:
    MOV TH0,#High W_11_5
    MOV TL0,#Low W_11_5
    JMP DITUNGGU
    ISI_11_4:
    MOV TH0,#High W_11_4
    MOV TL0,#Low W_11_4
    JMP DITUNGGU
    ISI_11_3:
    MOV TH0,#High W_11_3
    MOV TL0,#Low W_11_3
    JMP DITUNGGU
    ISI_11_2:
    MOV TH0,#High W_11_2
    MOV TL0,#Low W_11_2
    JMP DITUNGGU
    ISI_11_1:
    MOV TH0,#High W_11_1
    MOV TL0,#Low W_11_1
    JMP DITUNGGU
    ISI_11_0:
    MOV TH0,#High W_11_0
    MOV TL0,#Low W_11_0
    JMP DITUNGGU
    ISI_10_9:
    MOV TH0,#High W_10_9
    MOV TL0,#Low W_10_9
    JMP DITUNGGU
    ISI_10_8:
    MOV TH0,#High W_10_8
    MOV TL0,#Low W_10_8
    JMP DITUNGGU
    ISI_10_7:
    MOV TH0,#High W_10_7
    MOV TL0,#Low W_10_7
    JMP DITUNGGU
    ISI_10_6:
    MOV TH0,#High W_10_6
    MOV TL0,#Low W_10_6
    JMP DITUNGGU
    ISI_10_5:
    MOV TH0,#High W_10_5
    MOV TL0,#Low W_10_5
    JMP DITUNGGU
    ISI_10_4:
    MOV TH0,#High W_10_4
    MOV TL0,#Low W_10_4
    JMP DITUNGGU
    ISI_10_3:
    MOV TH0,#High W_10_3
    MOV TL0,#Low W_10_3
    JMP DITUNGGU
    ISI_10_2:
    MOV TH0,#High W_10_2
    MOV TL0,#Low W_10_2
    JMP DITUNGGU
    ISI_10_1:
    MOV TH0,#High W_10_1
    MOV TL0,#Low W_10_1
    JMP DITUNGGU
    ISI_10_0:
    MOV TH0,#High W_10_0
    MOV TL0,#Low W_10_0
    JMP DITUNGGU
    ISI_9_9:
    MOV TH0,#High W_9_9
    MOV TL0,#Low W_9_9
    JMP DITUNGGU
    ISI_9_8:
    MOV TH0,#High W_9_8
    MOV TL0,#Low W_9_8
    JMP DITUNGGU
    ISI_9_7:
    MOV TH0,#High W_9_7
    MOV TL0,#Low W_9_7
    JMP DITUNGGU
    ISI_9_6:
    MOV TH0,#High W_9_6
    MOV TL0,#Low W_9_6
    JMP DITUNGGU
    ISI_9_5:
    MOV TH0,#High W_9_5
    MOV TL0,#Low W_9_5
    JMP DITUNGGU
    ISI_9_4:
    MOV TH0,#High W_9_4
    MOV TL0,#Low W_9_4
    JMP DITUNGGU
    ISI_9_3:
    MOV TH0,#High W_9_3
    MOV TL0,#Low W_9_3
    JMP DITUNGGU
    ISI_9_2:
    MOV TH0,#High W_9_2
    MOV TL0,#Low W_9_2
    JMP DITUNGGU
    ISI_9_1:
    MOV TH0,#High W_9_1
    MOV TL0,#Low W_9_1
    JMP DITUNGGU
    ISI_9_0:
    MOV TH0,#High W_9_0
    MOV TL0,#Low W_9_0
    JMP DITUNGGU
    ISI_8_9:
    MOV TH0,#High W_8_9
    MOV TL0,#Low W_8_9
    JMP DITUNGGU
    ISI_8_8:
    MOV TH0,#High W_8_8
    MOV TL0,#Low W_8_8
    JMP DITUNGGU
    ISI_8_7:
    MOV TH0,#High W_8_7
    MOV TL0,#Low W_8_7
    JMP DITUNGGU
    ISI_8_6:
    MOV TH0,#High W_8_6
    MOV TL0,#Low W_8_6
    JMP DITUNGGU
    ISI_8_5:
    MOV TH0,#High W_8_5
    MOV TL0,#Low W_8_5
    JMP DITUNGGU
    ISI_8_4:
    MOV TH0,#High W_8_4
    MOV TL0,#Low W_8_4
    JMP DITUNGGU
    ISI_8_3:
    MOV TH0,#High W_8_3
    MOV TL0,#Low W_8_3
    JMP DITUNGGU
    ISI_8_2:
    MOV TH0,#High W_8_2
    MOV TL0,#Low W_8_2
    JMP DITUNGGU
    ISI_8_1:
    MOV TH0,#High W_8_1
    MOV TL0,#Low W_8_1
    JMP DITUNGGU
    ISI_8_0:
    MOV TH0,#High W_8_0
    MOV TL0,#Low W_8_0
    JMP DITUNGGU
    ISI_7_9:
    MOV TH0,#High W_7_9
    MOV TL0,#Low W_7_9
    JMP DITUNGGU
    ISI_7_8:
    MOV TH0,#High W_7_8
    MOV TL0,#Low W_7_8
    JMP DITUNGGU
    ISI_7_7:
    MOV TH0,#High W_7_7
    MOV TL0,#Low W_7_7
    JMP DITUNGGU
    ISI_7_6:
    MOV TH0,#High W_7_6
    MOV TL0,#Low W_7_6
    JMP DITUNGGU
    ISI_7_5:
    MOV TH0,#High W_7_5
    MOV TL0,#Low W_7_5
    JMP DITUNGGU
    ISI_7_4:
    MOV TH0,#High W_7_4
    MOV TL0,#Low W_7_4
    JMP DITUNGGU
    ISI_7_3:
    MOV TH0,#High W_7_3
    MOV TL0,#Low W_7_3
    JMP DITUNGGU
    ISI_7_2:
    MOV TH0,#High W_7_2
    MOV TL0,#Low W_7_2
    JMP DITUNGGU
    ISI_7_1:
    MOV TH0,#High W_7_1
    MOV TL0,#Low W_7_1
    JMP DITUNGGU
    ISI_7_0:
    MOV TH0,#High W_7_0
    MOV TL0,#Low W_7_0
    JMP DITUNGGU
    ISI_6_9:
    MOV TH0,#High W_6_9
    MOV TL0,#Low W_6_9
    JMP DITUNGGU
    ISI_6_8:
    MOV TH0,#High W_6_8
    MOV TL0,#Low W_6_8
    JMP DITUNGGU
    ISI_6_7:
    MOV TH0,#High W_6_7
    MOV TL0,#Low W_6_7
    JMP DITUNGGU
    ISI_6_6:
    MOV TH0,#High W_6_6
    MOV TL0,#Low W_6_6
    JMP DITUNGGU
    ISI_6_5:
    MOV TH0,#High W_6_5
    MOV TL0,#Low W_6_5
    JMP DITUNGGU
    ISI_6_4:
    MOV TH0,#High W_6_4
    MOV TL0,#Low W_6_4
    JMP DITUNGGU
    ISI_6_3:
    MOV TH0,#High W_6_3
    MOV TL0,#Low W_6_3
    JMP DITUNGGU
    ISI_6_2:
    MOV TH0,#High W_6_2
    MOV TL0,#Low W_6_2
    JMP DITUNGGU
    ISI_6_1:
    MOV TH0,#High W_6_1
    MOV TL0,#Low W_6_1
    JMP DITUNGGU
    ISI_6_0:
    MOV TH0,#High W_6_0
    MOV TL0,#Low W_6_0
    JMP DITUNGGU
    ISI_5_9:
    MOV TH0,#High W_5_9
    MOV TL0,#Low W_5_9
    JMP DITUNGGU
    ISI_5_8:
    MOV TH0,#High W_5_8
    MOV TL0,#Low W_5_8
    JMP DITUNGGU
    ISI_5_7:
    MOV TH0,#High W_5_7
    MOV TL0,#Low W_5_7
    JMP DITUNGGU
    ISI_5_6:
    MOV TH0,#High W_5_6
    MOV TL0,#Low W_5_6
    JMP DITUNGGU
    ISI_5_5:
    MOV TH0,#High W_5_5
    MOV TL0,#Low W_5_5
    JMP DITUNGGU
    ISI_5_4:
    MOV TH0,#High W_5_4
    MOV TL0,#Low W_5_4
    JMP DITUNGGU
    ISI_5_3:
    MOV TH0,#High W_5_3
    MOV TL0,#Low W_5_3
    JMP DITUNGGU
    ISI_5_2:
    MOV TH0,#High W_5_2
    MOV TL0,#Low W_5_2
    JMP DITUNGGU
    ISI_5_1:
    MOV TH0,#High W_5_1
    MOV TL0,#Low W_5_1
    JMP DITUNGGU
    ISI_5_0:
    MOV TH0,#High W_5_0
    MOV TL0,#Low W_5_0
    JMP DITUNGGU
    ISI_4_9:
    MOV TH0,#High W_4_9
    MOV TL0,#Low W_4_9
    JMP DITUNGGU
    ISI_4_8:
    MOV TH0,#High W_4_8
    MOV TL0,#Low W_4_8
    JMP DITUNGGU
    ISI_4_7:
    MOV TH0,#High W_4_7
    MOV TL0,#Low W_4_7
    JMP DITUNGGU
    ISI_4_6:
    MOV TH0,#High W_4_6
    MOV TL0,#Low W_4_6
    JMP DITUNGGU
    ISI_4_5:
    MOV TH0,#High W_4_5
    MOV TL0,#Low W_4_5
    JMP DITUNGGU
    ISI_4_4:
    MOV TH0,#High W_4_4
    MOV TL0,#Low W_4_4
    JMP DITUNGGU
    ISI_4_3:
    MOV TH0,#High W_4_3
    MOV TL0,#Low W_4_3
    JMP DITUNGGU
    ISI_4_2:
    MOV TH0,#High W_4_2
    MOV TL0,#Low W_4_2
    JMP DITUNGGU
    ISI_4_1:
    MOV TH0,#High W_4_1
    MOV TL0,#Low W_4_1
    JMP DITUNGGU
    ISI_4_0:
    MOV TH0,#High W_4_0
    MOV TL0,#Low W_4_0
    JMP DITUNGGU
    ISI_3_9:
    MOV TH0,#High W_3_9
    MOV TL0,#Low W_3_9
    JMP DITUNGGU
    ISI_3_8:
    MOV TH0,#High W_3_8
    MOV TL0,#Low W_3_8
    JMP DITUNGGU
    ISI_3_7:
    MOV TH0,#High W_3_7
    MOV TL0,#Low W_3_7
    JMP DITUNGGU
    ISI_3_6:
    MOV TH0,#High W_3_6
    MOV TL0,#Low W_3_6
    JMP DITUNGGU
    ISI_3_5:
    MOV TH0,#High W_3_5
    MOV TL0,#Low W_3_5
    JMP DITUNGGU
    ISI_3_4:
    MOV TH0,#High W_3_4
    MOV TL0,#Low W_3_4
    JMP DITUNGGU
    ISI_3_3:
    MOV TH0,#High W_3_3
    MOV TL0,#Low W_3_3
    JMP DITUNGGU
    ISI_3_2:
    MOV TH0,#High W_3_2
    MOV TL0,#Low W_3_2
    JMP DITUNGGU
    ISI_3_1:
    MOV TH0,#High W_3_1
    MOV TL0,#Low W_3_1
    JMP DITUNGGU
    ISI_3_0:
    MOV TH0,#High W_3_0
    MOV TL0,#Low W_3_0
    JMP DITUNGGU
    ISI_2_9:
    MOV TH0,#High W_2_9
    MOV TL0,#Low W_2_9
    JMP DITUNGGU
    ISI_2_8:
    MOV TH0,#High W_2_8
    MOV TL0,#Low W_2_8
    JMP DITUNGGU
    ISI_2_7:
    MOV TH0,#High W_2_7
    MOV TL0,#Low W_2_7
    JMP DITUNGGU
    ISI_2_6:
    MOV TH0,#High W_2_6
    MOV TL0,#Low W_2_6
    JMP DITUNGGU
    ISI_2_5:
    MOV TH0,#High W_2_5
    MOV TL0,#Low W_2_5
    JMP DITUNGGU
    ISI_2_4:
    MOV TH0,#High W_2_4
    MOV TL0,#Low W_2_4
    JMP DITUNGGU
    ISI_2_3:
    MOV TH0,#High W_2_3
    MOV TL0,#Low W_2_3
    JMP DITUNGGU
    ISI_2_2:
    MOV TH0,#High W_2_2
    MOV TL0,#Low W_2_2
    JMP DITUNGGU
    ISI_2_1:
    MOV TH0,#High W_2_1
    MOV TL0,#Low W_2_1
    JMP DITUNGGU
    ISI_2_0:
    MOV TH0,#High w_2_0
    MOV TL0,#Low w_2_0
    JMP DITUNGGU
    ISI_1_9:
    MOV TH0,#High W_1_9
    MOV TL0,#Low W_1_9
    JMP DITUNGGU
    ISI_1_8:
    MOV TH0,#High W_1_8
    MOV TL0,#Low W_1_8
    JMP DITUNGGU
    ISI_1_7:
    MOV TH0,#High W_1_7
    MOV TL0,#Low W_1_7
    JMP DITUNGGU
    ISI_1_6:
    MOV TH0,#High W_1_6
    MOV TL0,#Low W_1_6
    JMP DITUNGGU
    ISI_1_5:
    MOV TH0,#High W_1_5
    MOV TL0,#Low W_1_5
    JMP DITUNGGU
    ISI_1_4:
    MOV TH0,#High W_1_4
    MOV TL0,#Low W_1_4
    JMP DITUNGGU
    ISI_1_3:
    MOV TH0,#High W_1_3
    MOV TL0,#Low W_1_3
    JMP DITUNGGU
    ISI_1_2:
    MOV TH0,#High W_1_2
    MOV TL0,#Low W_1_2
    JMP DITUNGGU
    ISI_1_1:
    MOV TH0,#High W_1_1
    MOV TL0,#Low W_1_1
    JMP DITUNGGU
    ISI_1_0:
    MOV TH0,#High W_1_0
    MOV TL0,#Low W_1_0
    JMP DITUNGGU
    ISI_0_9:
    MOV TH0,#High W_0_9
    MOV TL0,#Low W_0_9
    JMP DITUNGGU
    ISI_0_8:
    MOV TH0,#High W_0_8
    MOV TL0,#Low W_0_8
    JMP DITUNGGU
    ISI_0_7:
    MOV TH0,#High W_0_7
    MOV TL0,#Low W_0_7
    JMP DITUNGGU
    ISI_0_6:
    MOV TH0,#High W_0_6
    MOV TL0,#Low W_0_6
    JMP DITUNGGU
    ISI_0_5:
    MOV TH0,#High W_0_5
    MOV TL0,#Low W_0_5
    JMP DITUNGGU
    ISI_0_4:
    MOV TH0,#High W_0_4
    MOV TL0,#Low W_0_4
    JMP DITUNGGU
    ISI_0_3:
    MOV TH0,#High W_0_3
    MOV TL0,#Low W_0_3
    JMP DITUNGGU
    ISI_0_2:
    MOV TH0,#High W_0_2
    MOV TL0,#low W_0_2
    JMP DITUNGGU
    ISI_0_1:
    MOV TH0,#High W_0_1
    MOV TL0,#Low W_0_1
    JMP DITUNGGU
    ISI_0_0:
    RET
    ;TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
    ;LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
    DITUNGGU:
    SETB TR0
    JNB TF0,$
    CLR TF0
    CLR TR0
    RET
    ;TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    ;LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL
    Init_LCD:
    mov A,#03Fh ;
    call Kirim_Perintah ;
    call Kirim_Perintah ;
    mov A,#0Dh ;
    call Kirim_Perintah ;
    mov A,#06h ;
    call Kirim_Perintah ;
    mov A,#01h ;
    call Kirim_Perintah ;
    mov A,#0Ch ;
    Jmp Kirim_Perintah ;
    Clear_LCD:
    mov A,#01h ;
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    Kirim_Perintah:
    clr LCD_RS ;
    setb LCD_CS ;
    jmp Kiriman ;
    Kirim_Karakter:
    setb LCD_RS ;
    setb LCD_CS ;
    Kiriman:mov P2,A ;
    clr LCD_CS ;
    setb LCD_CS ;
    call LCDELAY ;
    mov P2,#0FFh ;
    ret ;
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    tulis_LCD_atas:
    Call PSS_A1 ;
    jmp tlcdb ;
    tulis_LCD_bawah:
    Call PSS_B1 ;
    tlcdb:
    mov URUTAN,#16 ;
    Tulis_Karakter:
    clr A ;
    movc A,@A+DPTR ;
    cjne A,#0fh,tulis_lagi ;
    ret ;
    tulis_lagi:
    call Kirim_Karakter ;
    inc DPTR ;
    djnz URUTAN,tulis_Karakter ;
    ret ;
    Tulis_LCD_2_baris: ;
    call tulis_LCD_atas ;
    call tulis_LCD_bawah ;
    ret ;
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    ;HHHHHH Subroutin Posisi Kursor HHHHHHHHH
    ;HHHHHHHHHHH Posisi atas HHHHHHHHHHHHHHHH
    PSS_A1: MOV A,#80H ;
    JMP Kirim_Perintah ;
    PSS_A2: MOV A,#81H ;
    JMP Kirim_Perintah ;
    PSS_A3: MOV A,#82H ;
    JMP Kirim_Perintah ;
    PSS_A4: MOV A,#83H ;
    JMP Kirim_Perintah ;
    PSS_A5: MOV A,#84H ;
    JMP Kirim_Perintah ;
    PSS_A6: MOV A,#85H ;
    JMP Kirim_Perintah ;
    PSS_A7: MOV A,#86H ;
    JMP Kirim_Perintah ;
    PSS_A8: MOV A,#87H ;
    JMP Kirim_Perintah ;
    PSS_A9: MOV A,#88H ;
    JMP Kirim_Perintah ;
    PSS_A10: MOV A,#89H ;
    JMP Kirim_Perintah ;
    PSS_A11: MOV A,#8AH ;
    JMP Kirim_Perintah ;
    PSS_A12: MOV A,#8BH ;
    JMP Kirim_Perintah ;
    PSS_A13: MOV A,#8CH ;
    JMP Kirim_Perintah ;
    PSS_A14: MOV A,#8DH ;
    JMP Kirim_Perintah ;
    PSS_A15: MOV A,#8EH ;
    JMP Kirim_Perintah ;
    PSS_A16: MOV A,#8FH ;
    JMP Kirim_Perintah ;
    ;HHHHHHHHHHHH Posisi Bawah HHHHHHHHHHHHH
    PSS_B1: MOV A,#0C0H ;
    JMP Kirim_Perintah ;
    PSS_B2: MOV A,#0C1H ;
    JMP Kirim_Perintah ;
    PSS_B3: MOV A,#0C2H ;
    JMP Kirim_Perintah ;
    PSS_B4: MOV A,#0C3H ;
    JMP Kirim_Perintah ;
    PSS_B5: MOV A,#0C4H ;
    JMP Kirim_Perintah ;
    PSS_B6: MOV A,#0C5H ;
    JMP Kirim_Perintah ;
    PSS_B7: MOV A,#0C6H ;
    JMP Kirim_Perintah ;
    PSS_B8: MOV A,#0C7H ;
    JMP Kirim_Perintah ;
    PSS_B9: MOV A,#0C8H ;
    JMP Kirim_Perintah ;
    PSS_B10: MOV A,#0C9H ;
    JMP Kirim_Perintah ;
    PSS_B11: MOV A,#0CAH ;
    JMP Kirim_Perintah ;
    PSS_B12: MOV A,#0CBH ;
    JMP Kirim_Perintah ;
    PSS_B13: MOV A,#0CCH ;
    JMP Kirim_Perintah ;
    PSS_B14: MOV A,#0CDH ;
    JMP Kirim_Perintah ;
    PSS_B15: MOV A,#0CEH ;
    JMP Kirim_Perintah ;
    PSS_B16: MOV A,#0CFH ;
    JMP Kirim_Perintah ;
    karakter: Mov A,#’:’ ;
    JMP Kirim_Karakter ;
    spasi: mov A,#20h ;
    JMP Kirim_Karakter ;
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    LCDELAY: mov Tundaan,#30 ;
    LCDELAY1: mov Tundaan1,#0FFH ;
    djnz Tundaan1,$ ;
    djnz Tundaan,LCdelay1;
    ret ;
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    ;HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
    TULISAN: DB ‘-UKUR KECEPATAN-‘
    TULISANE: DB ‘Sistem tlh SIAP ‘
    xTULISANE: DB ‘-JARAK v/s WAKTU’
    NGUKURE: DB ‘ ‘
    ANGKA: DB ‘1’
    DB ‘2’
    DB ‘3’
    DB ‘4’
    DB ‘5’
    DB ‘6’
    DB ‘7’
    DB ‘8’
    DB ‘9’
    DS_20_0: DB ‘cepat:20,0 M/det’
    DS_19_9: DB ‘cepat:19,9 M/det’
    DS_19_8: DB ‘cepat:19,8 M/det’
    DS_19_7: DB ‘cepat:19,7 M/det’
    DS_19_6: DB ‘cepat:19,6 M/det’
    DS_19_5: DB ‘cepat:19,5 M/det’
    DS_19_4: DB ‘cepat:19,4 M/det’
    DS_19_3: DB ‘cepat:19,3 M/det’
    DS_19_2: DB ‘cepat:19,2 M/det’
    DS_19_1: DB ‘cepat:19,1 M/det’
    DS_19_0: DB ‘cepat:19,0 M/det’
    DS_18_9: DB ‘cepat:18,9 M/det’
    DS_18_8: DB ‘cepat:18,8 M/det’
    DS_18_7: DB ‘cepat:18,7 M/det’
    DS_18_6: DB ‘cepat:18,6 M/det’
    DS_18_5: DB ‘cepat:18,5 M/det’
    DS_18_4: DB ‘cepat:18,4 M/det’
    DS_18_3: DB ‘cepat:18,3 M/det’
    DS_18_2: DB ‘cepat:18,2 M/det’
    DS_18_1: DB ‘cepat:18,1 M/det’
    DS_18_0: DB ‘cepat:18,0 M/det’
    DS_17_9: DB ‘cepat:17,9 M/det’
    DS_17_8: DB ‘cepat:17,8 M/det’
    DS_17_7: DB ‘cepat:17,7 M/det’
    DS_17_6: DB ‘cepat:17,6 M/det’
    DS_17_5: DB ‘cepat:17,5 M/det’
    DS_17_4: DB ‘cepat:17,4 M/det’
    DS_17_3: DB ‘cepat:17,3 M/det’
    DS_17_2: DB ‘cepat:17,2 M/det’
    DS_17_1: DB ‘cepat:17,1 M/det’
    DS_17_0: DB ‘cepat:17,0 M/det’
    DS_16_9: DB ‘cepat:16,9 M/det’
    DS_16_8: DB ‘cepat:16,8 M/det’
    DS_16_7: DB ‘cepat:16,7 M/det’
    DS_16_6: DB ‘cepat:16,6 M/det’
    DS_16_5: DB ‘cepat:16,5 M/det’
    DS_16_4: DB ‘cepat:16,4 M/det’
    DS_16_3: DB ‘cepat:16,3 M/det’
    DS_16_2: DB ‘cepat:16,2 M/det’
    DS_16_1: DB ‘cepat:16,1 M/det’
    DS_16_0: DB ‘cepat:16,0 M/det’
    DS_15_9: DB ‘cepat:15,9 M/det’
    DS_15_8: DB ‘cepat:15,8 M/det’
    DS_15_7: DB ‘cepat:15,7 M/det’
    DS_15_6: DB ‘cepat:15,6 M/det’
    DS_15_5: DB ‘cepat:15,5 M/det’
    DS_15_4: DB ‘cepat:15,4 M/det’
    DS_15_3: DB ‘cepat:15,3 M/det’
    DS_15_2: DB ‘cepat:15,2 M/det’
    DS_15_1: DB ‘cepat:15,1 M/det’
    DS_15_0: DB ‘cepat:15,0 M/det’
    DS_14_9: DB ‘cepat:14,9 M/det’
    DS_14_8: DB ‘cepat:14,8 M/det’
    DS_14_7: DB ‘cepat:14,7 M/det’
    DS_14_6: DB ‘cepat:14,6 M/det’
    DS_14_5: DB ‘cepat:14,5 M/det’
    DS_14_4: DB ‘cepat:14,4 M/det’
    DS_14_3: DB ‘cepat:14,3 M/det’
    DS_14_2: DB ‘cepat:14,2 M/det’
    DS_14_1: DB ‘cepat:14,1 M/det’
    DS_14_0: DB ‘cepat:14,0 M/det’
    DS_13_9: DB ‘cepat:13,9 M/det’
    DS_13_8: DB ‘cepat:13,8 M/det’
    DS_13_7: DB ‘cepat:13,7 M/det’
    DS_13_6: DB ‘cepat:13,6 M/det’
    DS_13_5: DB ‘cepat:13,5 M/det’
    DS_13_4: DB ‘cepat:13,4 M/det’
    DS_13_3: DB ‘cepat:13,3 M/det’
    DS_13_2: DB ‘cepat:13,2 M/det’
    DS_13_1: DB ‘cepat:13,1 M/det’
    DS_13_0: DB ‘cepat:13,0 M/det’
    DS_12_9: DB ‘cepat:12,9 M/det’
    DS_12_8: DB ‘cepat:12,8 M/det’
    DS_12_7: DB ‘cepat:12,7 M/det’
    DS_12_6: DB ‘cepat:12,6 M/det’
    DS_12_5: DB ‘cepat:12,5 M/det’
    DS_12_4: DB ‘cepat:12,4 M/det’
    DS_12_3: DB ‘cepat:12,3 M/det’
    DS_12_2: DB ‘cepat:12,2 M/det’
    DS_12_1: DB ‘cepat:12,1 M/det’
    DS_12_0: DB ‘cepat:12,0 M/det’
    DS_11_9: DB ‘cepat:11,9 M/det’
    DS_11_8: DB ‘cepat:11,8 M/det’
    DS_11_7: DB ‘cepat:11,7 M/det’
    DS_11_6: DB ‘cepat:11,6 M/det’
    DS_11_5: DB ‘cepat:11,5 M/det’
    DS_11_4: DB ‘cepat:11,4 M/det’
    DS_11_3: DB ‘cepat:11,3 M/det’
    DS_11_2: DB ‘cepat:11,2 M/det’
    DS_11_1: DB ‘cepat:11,1 M/det’
    DS_11_0: DB ‘cepat:11,0 M/det’
    DS_10_9: DB ‘cepat:10,9 M/det’
    DS_10_8: DB ‘cepat:10,8 M/det’
    DS_10_7: DB ‘cepat:10,7 M/det’
    DS_10_6: DB ‘cepat:10,6 M/det’
    DS_10_5: DB ‘cepat:10,5 M/det’
    DS_10_4: DB ‘cepat:10,4 M/det’
    DS_10_3: DB ‘cepat:10,3 M/det’
    DS_10_2: DB ‘cepat:10,2 M/det’
    DS_10_1: DB ‘cepat:10,1 M/det’
    DS_10_0: DB ‘cepat:10,0 M/det’
    DS_9_9: DB ‘cepat:9,90 M/det’
    DS_9_8: DB ‘cepat:9,80 M/det’
    DS_9_7: DB ‘cepat:9,70 M/det’
    DS_9_6: DB ‘cepat:9,60 M/det’
    DS_9_5: DB ‘cepat:9,50 M/det’
    DS_9_4: DB ‘cepat:9,40 M/det’
    DS_9_3: DB ‘cepat:9,30 M/det’
    DS_9_2: DB ‘cepat:9,20 M/det’
    DS_9_1: DB ‘cepat:9,10 M/det’
    DS_9_0: DB ‘cepat:9,00 M/det’
    DS_8_9: DB ‘cepat:8,90 M/det’
    DS_8_8: DB ‘cepat:8,80 M/det’
    DS_8_7: DB ‘cepat:8,70 M/det’
    DS_8_6: DB ‘cepat:8,60 M/det’
    DS_8_5: DB ‘cepat:8,50 M/det’
    DS_8_4: DB ‘cepat:8,40 M/det’
    DS_8_3: DB ‘cepat:8,30 M/det’
    DS_8_2: DB ‘cepat:8,20 M/det’
    DS_8_1: DB ‘cepat:8,10 M/det’
    DS_8_0: DB ‘cepat:8,00 M/det’
    DS_7_9: DB ‘cepat:7,90 M/det’
    DS_7_8: DB ‘cepat:7,80 M/det’
    DS_7_7: DB ‘cepat:7,70 M/det’
    DS_7_6: DB ‘cepat:7,60 M/det’
    DS_7_5: DB ‘cepat:7,50 M/det’
    DS_7_4: DB ‘cepat:7,40 M/det’
    DS_7_3: DB ‘cepat:7,30 M/det’
    DS_7_2: DB ‘cepat:7,20 M/det’
    DS_7_1: DB ‘cepat:7,10 M/det’
    DS_7_0: DB ‘cepat:7,00 M/det’
    DS_6_9: DB ‘cepat:6,90 M/det’
    DS_6_8: DB ‘cepat:6,80 M/det’
    DS_6_7: DB ‘cepat:6,70 M/det’
    DS_6_6: DB ‘cepat:6,60 M/det’
    DS_6_5: DB ‘cepat:6,50 M/det’
    DS_6_4: DB ‘cepat:6,40 M/det’
    DS_6_3: DB ‘cepat:6,30 M/det’
    DS_6_2: DB ‘cepat:6,20 M/det’
    DS_6_1: DB ‘cepat:6,10 M/det’
    DS_6_0: DB ‘cepat:6,00 M/det’
    DS_5_9: DB ‘cepat:5,90 M/det’
    DS_5_8: DB ‘cepat:5,80 M/det’
    DS_5_7: DB ‘cepat:5,70 M/det’
    DS_5_6: DB ‘cepat:5,60 M/det’
    DS_5_5: DB ‘cepat:5,50 M/det’
    DS_5_4: DB ‘cepat:5,40 M/det’
    DS_5_3: DB ‘cepat:5,30 M/det’
    DS_5_2: DB ‘cepat:5,20 M/det’
    DS_5_1: DB ‘cepat:5,10 M/det’
    DS_5_0: DB ‘cepat:5,00 M/det’
    DS_4_9: DB ‘cepat:4,90 M/det’
    DS_4_8: DB ‘cepat:4,80 M/det’
    DS_4_7: DB ‘cepat:4,70 M/det’
    DS_4_6: DB ‘cepat:4,60 M/det’
    DS_4_5: DB ‘cepat:4,50 M/det’
    DS_4_4: DB ‘cepat:4,40 M/det’
    DS_4_3: DB ‘cepat:4,30 M/det’
    DS_4_2: DB ‘cepat:4,20 M/det’
    DS_4_1: DB ‘cepat:4,10 M/det’
    DS_4_0: DB ‘cepat:4,00 M/det’
    DS_3_9: DB ‘cepat:3,90 M/det’
    DS_3_8: DB ‘cepat:3,80 M/det’
    DS_3_7: DB ‘cepat:3,70 M/det’
    DS_3_6: DB ‘cepat:3,60 M/det’
    DS_3_5: DB ‘cepat:3,50 M/det’
    DS_3_4: DB ‘cepat:3,40 M/det’
    DS_3_3: DB ‘cepat:3,30 M/det’
    DS_3_2: DB ‘cepat:3,20 M/det’
    DS_3_1: DB ‘cepat:3,10 M/det’
    DS_3_0: DB ‘cepat:3,00 M/det’
    DS_2_9: DB ‘cepat:2,90 M/det’
    DS_2_8: DB ‘cepat:2,80 M/det’
    DS_2_7: DB ‘cepat:2,70 M/det’
    DS_2_6: DB ‘cepat:2,60 M/det’
    DS_2_5: DB ‘cepat:2,50 M/det’
    DS_2_4: DB ‘cepat:2,40 M/det’
    DS_2_3: DB ‘cepat:2,30 M/det’
    DS_2_2: DB ‘cepat:2,20 M/det’
    DS_2_1: DB ‘cepat:2,10 M/det’
    DS_2_0: DB ‘cepat:2,00 M/det’
    DS_1_9: DB ‘cepat:1,90 M/det’
    DS_1_8: DB ‘cepat:1,80 M/det’
    DS_1_7: DB ‘cepat:1,70 M/det’
    DS_1_6: DB ‘cepat:1,60 M/det’
    DS_1_5: DB ‘cepat:1,50 M/det’
    DS_1_4: DB ‘cepat:1,40 M/det’
    DS_1_3: DB ‘cepat:1,30 M/det’
    DS_1_2: DB ‘cepat:1,20 M/det’
    DS_1_1: DB ‘cepat:1,10 M/det’
    DS_1_0: DB ‘cepat:1,00 M/det’
    DS_0_9: DB ‘cepat:0,90 M/det’
    DS_0_8: DB ‘cepat:0,80 M/det’
    DS_0_7: DB ‘cepat:0,70 M/det’
    DS_0_6: DB ‘cepat:0,60 M/det’
    DS_0_5: DB ‘cepat:0,50 M/det’
    DS_0_4: DB ‘cepat:0,40 M/det’
    DS_0_3: DB ‘cepat:0,30 M/det’
    DS_0_2: DB ‘cepat:0,20 M/det’
    DS_0_1: DB ‘cepat:0,10 M/det’
    DS_0_0: DB ‘Tidak Terdeteksi’
    END

    tolong cek duonk dimana errornya program ini,,,,,
    ngak mau di compile ke hexa masalahnya,,,,
    [email protected]

  32. ITU PROGRAM LCD NYA GAG BISA DI COMPARE MASIH BELUM FIX
    MASIH BANYAK SYMBOL YANG SAMA CONTOHNYA 090H

  33. siapa aja yg bs tolong saya………!!?
    saya pnya TA. jdulnya pedeteksi dan pemadam kebakaran berbasis mikrokontoler at89s52 dengan suhu ruangan ditamplkan pd LCD 16×2……..
    saya mnta tlong yg bs bwt programnya….
    nnti da komisinya…..!!!

  34. hi,,

    boleh bisa minta contoh program assembler?
    klo bisa minta kirimin ke email saya ya.. thanks

  35. mohon saya diberikan listing program untuk hasil input ADC 0804 dikeluarkan melalui DAC 0808 yg outputnya berupa tegangan

  36. tolong frend2 bantu aq untuk program lcd 16×2..untuk menampilkn tulisan ketika ada inputan low 5 x dari mkro at89s51…..tlong ya……makasih buat semuanya

  37. mas tolong bantu saya untuk ambil data 2 sensor(sensor gas&suhu) menngunakan adc 0808 dan,AT8051 dengan tampilan 7 segmen 4 digit bantuin saya untuk program nya mas.

    yang di bawah ini contoh yang saya buat tapi lum bisa .

    org 0h
    ratusan equ 30h
    puluhan equ 31h
    satuan equ 32h
    ;
    org 0h
    start: call ADC
    call Bin2Dec
    call Display2SevenSegmen
    sjmp start
    ;
    ;========================================
    ;Subrutin ini digunakan untuk mengambil data ADC
    ;========================================
    PROGRAM:
    adc_a bit p2.0
    adc_b bit p2.1
    adc_c bit p2.2
    adc_start bit p2.3
    adc_ale bit p2.4
    adc_OE bit P2.5
    adc_EOC bit P2.6
    ;
    ADC:
    ORG 0H
    CLR p2.3 ;adc_start
    CLR p2.4 ;adc_ale
    CLR p2.5 ;adc_OE
    SETB p2.6 ;adc_EOC
    INIT:
    SETB p2.0 ;adc_a
    SETB p2.1 ;adc_b
    CLR p2.2 ;adc_c
    CALL DELAY
    SETB p2.3 ;adc_start
    CALL DELAY
    SETB p2.4 ;adc_ale
    CALL DELAY
    CLR p2.3 ;adc_start
    CLR p2.4 ;adc_ale

    EOC: JNB P2.6,EOC
    SETB P2.5
    CALL DELAY
    MOV A,P0
    MOV P1,A
    SJMP INIT
    RET

    ;=================================================
    ;Subrutin ini untuk menampilkan data ke 7 Segmen
    ;dalam bentuk: ratusan, puluhan, and satuan
    ;data desimal diubah ke segmen dengan menggunakan
    ;Look up table Data7segmen
    ;=================================================
    Display2SevenSegmen:
    mov A, ratusan ;Copy data Ratusan ke A
    mov DPTR,#Data7segmen ;Copy Address #Data7segmen ke DPTR
    movc A,@A+DPTR ;Copy Isi A+DPTR ke A
    mov P1,A ;Copy A ke P0
    Setb P3.5 ;Decoder, A=1,
    clr P3.6 ;B=0
    Setb P3.7 ; dan C=1
    call delay ;Panggil waktu tunda
    ;
    mov A,puluhan
    mov DPTR,#Data7segmen
    movc A,@A+DPTR
    mov P1,A
    clr P3.5 ;
    Setb P3.6
    Setb P3.7
    call delay
    ;
    mov A,satuan
    mov DPTR,#Data7segmen
    movc A,@A+DPTR
    mov P1,A
    Setb P3.5 ;
    Setb P3.6
    Setb P3.7
    call delay
    ret
    ;
    delay: mov R0,#0
    delay1:mov R2,#0fh
    djnz R2,$
    djnz R0,delay1
    ret
    ;
    ;========================================
    ;Subrutin ini untuk merubah data biner ke desimal
    ;menjadi 3 digit = ratusan-puluhan-satuan
    ;=========================================
    Bin2Dec:
    mov b,#100d
    div ab
    mov ratusan,a
    mov a,b
    mov b,#10d
    div ab
    mov puluhan,a
    mov satuan,b
    ret
    ;
    Data7segmen:
    db 11000000b,11111001b,10100100b,10110000b,10011001b
    db 10010010b,10000010b,11111000b,10000000b,10010000b
    ;
    end

  38. salam kenal semuanya,

    ada yang bisa bantu saya tlg buatin program assembly dari bilangan desimal ke biner. tolong ya..

  39. SONY :Saya mohon bantuannya gimana? cara menampilkan hasil adc0808 ke LCD menggunakan uK AT89s52/ATmega8 Terima kasih

    lisa :salam kenal semuanya,ada yang bisa bantu saya tlg buatin program assembly dari bilangan desimal ke biner. tolong ya.. kirimkan ke emal saya [email protected]

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.