Senin, 23 Desember 2013

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



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
Praktikum Mikroprosesor, Arif Johar Taufiq., materi dapat didownload di http://guru.technosains.com hal 3
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

LATIHAN:
1. Buatlah program running LED dengan perintah RR (Rotation Right) dan RL (Ratation Left)       agar LED nyala balak-balik kanan-kiri dan kiri-kanan. Kombinasikan perintah RR, RL dan CJNE untuk mengecek posisi data ujung (80h dan 01h)

Petunjuk:
RR A  geser/rotasi 1 bit isi register A ke Kanan
RL A  geser/rotasi 1 bit isi register A ke Kiri
CJNE A,#80h,TIDAK  apakah isi Reg A=80h, jika tidak maka lompat ke TIDAK, jika YA kerjakan Instruksi dibawahnya


2. Buatlah program running LED bolak balik dengan pola nyala LED yang sudah disimpan di alamat data (DATALED) berarti ada 16 data pola nyala LED. Kerjakan dengan model look up table seperti program 2.


Sumber : guru.technosains.com

0 komentar:

Posting Komentar