Labels

Rabu, 08 Januari 2014

PRAKTEK-3 AKSES DATA SECARA LOOK UP TABLE


Langkah:
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

Skema Rangkaian



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 
DJNZR5,$ DJNZR6,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




0 komentar:

Posting Komentar