Rabu, 15 Januari 2014

Praktek 3 Akses Data Secara Look Up Table

Langkah langkahnya adalah sebagai berikut:
1. Hubungkan PORT 1 (P1) DT51 MinSysn dengan PORT OUTPUT  DT-51 tariner board.
2. Hubungkan CONTROL DT-51 Min Sys dengan CONTROL DT-51 trainer board.
3. Hubungkan DT-51 MinSys dengan PC menggunakan kabel serial.
4. Hubungkan Dt-51 MInSys dengansumber tegangan.



Teori
Akses data ke alamat memori dapat dilakukan secara berurutan (indeks) dengan melibatkan register DPTR,A dan register pencacah data misal R0.



Contoh   :
MULAI  :
MOV DPTR,#DATALED ;isi reg DPTR dengan alamat awal data
MOV R0,#00H                 ;siapkan R0 sbdg pencacah data
NEXT   :
CLR A                             ;kosongkan isi reg A
MOVC A,@A+DPTR     ;copy data dari alamat data yg ditunjuk DPTR ke A
-------
INC DPTR                      ;naikkan alamat
INC R0                           ;naikkan pencacah data
CJNE R0,#08h,NEXT     ;apakah cacah data sudah 8, jika belum ke next data

Program I RUNNING LED MANUAL

$mod51
CSEG
ORG 4000H
LJMP START
ORG  4100H
START:
MOV P1,#00000001B
ACALL TUNDA
MOV P1,#00000010B
ACALL TUNDA
MOV P1,#00000100B
ACALL TUNDA
MOV P1,#00001000B
ACALL TUNDA
MOV P1,#00010000B
ACALL TUNDA
MOV P1,#00100000B
ACALL TUNDA
MOV P1,#01000000B
ACALL TUNDA
MOV P1,#10000000B
ACALL TUNDA
LJMP START
TUNDA:
MOV R7,#01H
LUP1 : MOV R6,#0FFH
LUP2 : MOV R5,#0FFH
DJNZ R5 , $
DJNZ R6 , LUP2
DJNZ  R7, LUP1
RET
END

Program 2 RUNNING LED DENGAN LOOP UP TABLE

PROGRAM AKSES DATA (LOOK UP TABLE)
AKSES DATA BERURUTAN YANG DI SIMPAN DI TABEL DATA
DI AKSESES DGN BANTUAN REG DPTR, REG A dan RO
==============================================

$MOD51
CSEG
ORG 4000h
LJMP MULAI
ORG 4100h
MULAI: MOV DPTR,#DATALED
MOV R0  ,#00H
NEXT :
CLR A
MOVC A,@A+DPTR
CPL A
MOV P1,A
INC DPTR
ACALL TUNDA
INC R0
CJNE R0,#08h,NEXT
SJMP MULAI
=======PROSEDUR TUNDA===
TUNDA:
MOV R7,#01h
LUP1: MOV R6,#0FFh
LUP2: MOV R5,#0FFH
DJNZ R5, $
DJNZ R6,LUP2
DJNZ R7,LUP1
RET
=======PROSEDUR TUNDA==END
DATALED:
DB 00000001b
DB 00000010b
DB 00000100b
DB 00001000b
DB 00010000b
DB 00100000b
DB 01000000b
DB 10000000b
END

Sumber : http://guru.technosains.com/

Tidak ada komentar:

Posting Komentar