Rabu, 15 Januari 2014

Praktek 5 Seven Segment

1. Hubungkan P1 DT51 MinSysn dengan “DATA 7S” DT-51 trainer board.
2. Hubungkan Port C DT51 MinSysn dengan “I/P S KEY” DT-51 trainer board.
3. Hubungkan CONTROL DT-51 Min Sys dengan CONTROL DT-51 trainer board.
4. Hubungkan DT-51 MinSys dengan PC menggunakan kabel serial.
5. Hubungkan Dt-51 MInSys dengansumber tegangan.

Teori
Seven segment adalah diode LED sebanyak 7 buah yang disusun dan dikemas membentuk penampil angka, dan biasanya ditambahkan 1 buah LED untuk koma (DotPoint).Karena dibentuk dari kumpulan LED maka ada dua jenis seven segment, yaitu Common Anode (CA) dan Common Catode (CC).

Untuk penyalakan seven segment jenis CC maka masukan segment a s/d Dp harus diberi logika tinggi dan bagian CC dihubungkan dengan Ground. Sedangkan jika ingin menyalakan seven segment jenis CA maka masukan segment a s/d Dp harus diberi logika LOW dan CA harus dihubungkan ke +5 VCC.









ALAMAT PENTING MODUL DT-51 adalah sbb:

1.   PA (port A)                        = 2000h
2.   PB (port B)                        = 2001h
3.   PC (port C)                        = 2002h
4.   Reg CW (Control Word)              = 2003h
5.   DIGIT1                             = 80h
6.   DIGIT2                             = 40h


Dari gambar  rangkaian di atas saluran data tampilan angka menggunakan P1  yang dipakai bersama antara digit1 dan digit 2 sehingga jika ingin menampilkan angka bersama (tampil 2 digit sekaligus) dilakukan secara bergantian secara cepat sehingga tampil seolah-olah berbarengan. Catatan penting untuk tampilan secara bergatian dari digit1 ke digit2 harus diselingi dengan mematikan semua sesaat, karena jika tidak dimatikan sesaat maka tampilan angka akan tumpang tindih.

PROGRAM 1
--------------------------------
contoh scanning seven segment menampilkan angka 51
--------------------------------

$mod51 PORTC EQU 2002H
CW    EQU 2003H
CSEG
ORG   4000H
LJMP START
DELAY :  
MOV  R6, #0FH
LUP   :
MOV R7, #0FFH
DJNZ R7, $
DJNZ R6, LUP
RET
START : MOV SP  , #30H
MOV DPTR, #CW
MOV  A  , #80H
MOVX @DPTR, A
LOOP:
;menampilkan angka 5 di seven segment 1
MOV DPTR, #PORTC
MOV A   , #80H
MOVX @DPTR, A
MOV P1  , #6DH
LCALL DELAY
MOV P1  ,#00H
;menampilkan angka 7 di seven segment 2
MOV  A, #40H
MOVX @DPTR, A
MOV  P1, #07H
LCALL DELAY
MOV P1,#00H
SJMP LOOP
END

Praktek 4 Sistem Input Output LED Berpassword

Skema Rangkaian

P1 sbg input PA sebagai output



ALAMAT PORT tambahan pada system DT-51 adalah sbb:

1.   PA (port A)                            = 2000h
2.   PB (port B)                            = 2001h
3.   PC (port C)                           = 2002h
4.   Reg CW (Control Word)       = 2003h
PA adalah PORT tambahan (eksternal) diluar mikrokontroler, yang disediakan dari IC PPI 8255. Mikrokontroler dapat menggunakan PA ini dengan cara MEMPROGRAMNYA TERLEBIH DAHULU lewat register internal PPI 8255 yaitu register CW(control word).
Contoh Memprogram semua Port PPI 8255 (PA, PB, PC)sebagai output, maka reg CW harus diberi data 80h lihat manual PPI 8255).

Code:



Program 1 LED Berpassword

Membaca data password dari P1, jika PWD benar, LED DI PA nyala ==============================================================
$mod51
PWD EQU  22H
CW  EQU 2003h
CSEG
ORG  4000H
LJMP START
ORG  4100H
START:
MOV  SP, #30H
INIT: MOV DPTR, #CW    ; proses isi cw dg data 80H
MOV A, #80H
MOVX @DPTR, A
MOV A, P1
BACA_PWD:
CJNE A,#PWD, MATI
NYALA:
MOV DPTR, #2000H ; jika=1 nyalakan semua LED
MOV A, #0FFH
MOVX @DPTR, A
SJMP BACA_PWD
MATI:
MOV DPTR, #2000H ; jika=0 matikan semua LED
MOV A, #00H
MOVX @DPTR, A
SJMP BACA_PWD
END

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/

Praktek 2 Basic Input Output P1 sebagai Input

Langkah praktikumnya yaitu:
1. Hubungkan PORT DT51 MinSysn dengan PORT INPUTDT-51 trainer 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

P1 sbg input PA sebagai output.

1.   PA (port A) = 2000h
2.   PB (port B) = 2001h
3.   PC (port C) = 2002h
4.   Reg CR       = 2003h

PA adalah PORT tambahan (eksternal) diluar mikrokontroler, yang disediakan dari IC PPI 8255. Mikrokontroler dapat menggunakan PA ini dengan cara MEMPROGRAMNYA TERLEBIH DAHULU lewat register internal PPI 8255 yaitu register CW (control word).

Contoh Memprogram semua Port PPI 8255 (PA, PB, PC) sebagai output, maka reg CW harus diberi data 80h (lihat manual PPI 8255).

Code:







Program I Membaca data dari P1

% Membaca data bit p1.4, jika bernilai 1 maka LED
% di PA akan nyala,Jika tidak maka semua LED akan mati
$mod51
CSEG
ORG  4000H
LJMP START
START   :ORG  4100H
MOV  SP, #30H
INIT    : MOV  DPTR, #2003H       ; proses isi cw dg data 80H
MOV A, #80H
MOVX @DPTR, A
LABEL1  :JB P1.4, DISPLAY       ; baca bit p1.4
DISPLAY2: MOV  DPTR, #2000H   ; jika=0 matikan semua LED
MOV A, #00H
MOVX @DPTR, A
SJMP LABEL1
DISPLAY : MOV  DPTR, #2000H    ; jika=1 nyalakan semua LED
MOV A, #0FFH
MOVX @DPTR, A
SJMP LABEL1
END

Program 2
$mod51
CSEG
ORG 4000H
LJMP START
START    :ORG  4100H
MOV SP, #30H
INIT     : MOV DPTR, #2003H
MOV A, #80H
MOVX @DPTR, A
LABEL1   : MOV  C, P1.5
JC DISPLAY
MOV C, P1.0
JNC DISPLAY3
DISPLAY2 : MOV DPTR, #2000H
MOV A, #00H
MOVX @DPTR, A
SJMP LABEL1
DISPLAY  : MOV  DPTR, #2000H
MOV A, #20H
MOVX @DPTR, A
SJMP LABEL1
DISPLAY3 : MOV DPTR, #2000H
MOV A, #01H
MOVX @DPTR, A
SJMP LABEL1
END

Program 3
$mod51
CSEG
ORG  4000H
LJMP START
START:ORG  4100H
MOV  SP, #30H
INIT:    MOV  DPTR, #2003H MOV    A, #80H
MOVX @DPTR, A
LABEL1:   MOV  R1, P1
DISPLAY:    MOV  DPTR, #2000H MOV    A, R1
MOVX @DPTR, A SJMP LABEL1
END

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

Praktek 1 Basic Input Output P1 sebagai Output

Langkah untuk praktikum 1 yaitu :
1.  Hubungkan PORT 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.





Program I Transfer data Output per-bit

$mod51
CSEG
ORG    4000H 
LJMP   START

START: ORG     4100H
MOV     SP, #30H
SETB    P1.0
CLR      P1.1
SETB    P1.2
CLR      P1.3
SETB    P1.4
SETB    P1.5
SETB    P1.6
SETB    P1.7
SJMP $
END

Program 2 Transfer data Output per-bit Cara Lain$mod51
CSEG
ORG 4000H 
LJMP START

START: ORG 4100H
MOV  SP, #30H 
SETB C
MOV P1.0,C
MOV P1.1,C 
MOV P1.2,C 
MOV P1.3,C 
CLR C
MOV P1.4,C 
MOV P1.5,C 
MOV P1.6,C 
MOV P1.7,C 
SJMP $
END

Program 3 Transfer data Output per-byte
$mod51
CSEG
ORG 4000H 
LJMP START

START: ORG 4100H
MOV SP, #30H 
MOV P1, #0A3H 
SJMP $
END


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