Anda di halaman 1dari 6

PPG DALAM JABATAN TAHAP 2 UNESA 2018

NAMA : DEDY SUBAGYO


NOMOR PESERTA : 18051684010054
KELAS DARING :X
PRODI PPG : [840] TEKNIK ELEKTRONIKA
MODUL : PROFESSIONAL

TUGAS MODUL 6 KB 1 MENERAPKAN SINTAKS PROGRAM MIKROPROSESOR

1. Rancang dan buatlah program mikroprosesor untuk menampilkan nama anda sendiri
berjalan ke kiri dan ke kanan pada layar debug!
.model small
.data
nama db "Dedy Subagyo",10,13,'$'
.code
main proc
mov AX,@data
mov DS,AX
mov BL,67
mov AL,0
label1:
mov AH,2H
mov BH,0 ;goto-XY
mov DL,BL
mov DH,AL
INT 10H
mov AH,9H
mov DX,offset nama ;print
INT 21H
mov AH, 6H
mov AL, 0
mov BH, 7 ;clear screen
mov CX, 0
mov DL, 79
mov DH, 79
int 10H
SUB BL,1
cmp BL,80 ;
cmp AL,0
loop label1
mov AH,4CH
INT 21H
end main
source code diatas menggunakan software emu8086
2. Rancang dan buatlah program tampilan LED pada Port 378H berbagai variasi yang dapat
dipilih melalui keyboard !
.model small
.stack 100h
.data
msg db 13,10,'Tekan r untuk kekanan',13,10,'Tekan l untuk kekiri',13,10, 'Press 0 to
Off',13,10, 'Press Esc to exit','$'
.code
main proc
mov ax,@data
mov ds,ax
mov ah,09h
lea dx,msg
int 21h
set: mov al, 0ffh
mov dx, 378h
out dx,al
call delay
call delay
call delay
mov al,00h
out dx,al
call delay
call delay
call delay
mov al,10000000b
lop1:
push ax
push dx
mov ah,06h
mov dl,0ffh
int 21h
cmp al,27
je exit
cmp al,'0'
je off
cmp al,'r'
je loop2
pop dx
pop ax
ror al,1
ror al,1
out dx,al
call delay
call delay
jmp lop1
loop2:
mov dx,378h
mov al,01h
strt: out dx,al
call delay
call delay
rol al,1
rol al,1
push ax
push dx
mov ah,06h
mov dl,0ffh
int 21h
cmp al,27
je exit
cmp al,'0'
je off
cmp al,'l'
je set
pop dx
pop ax
jmp strt
off: mov al, 0h
mov dx, 378h
out dx, al
exit: mov ax, 4c00h
int 21h
main endp
delay proc
push ax
push dx
mov bx,00h
mov ah,2ch
int 21h
mov bh,dl
getsec: mov ah,2ch
int 21h
cmp bh,dl
jne back
jmp getsec
back: pop dx
pop ax
ret
delay endp
end main
Source Code diatas menggunakan Emu8086, jika menekan huruf R dikeyborad maka led
akan berjalan kekanan, sedangkan jika menekan huru L dikeyboard maka led akan
berjalan kekiri, tekan “esc” akan keluar, tekan 0 akan berhenti

3. Rancang dan buatlah program tampilan SEVEN SEGMEN pada Port 378H berbagai
variasi yang dapat dipilih melalui keyboard !
.model small
.stack 100
.data
ctrl equ 0d378h
str1 db 0c0h, 0f9h,0a4h, 0b0h, 99h, 92h, 83h, 0f8h, 80h, 98h, 0c0h, 0f9h
.code
Start: Mov dx, @data
Mov ds,dx
Mov al,80h
Mov dx,ctrl
Out dx,al
Again: Mov bx,offset str1
Call display
Call delay
Mov ah,06h
Mov dl,0ffh
Int 21h
cmp al,’q’
jnz Again
int 3
Display: proc
Mov si,0bh
Up1: call Delay
Mov cl,08h
Mov ah,[bx+si]
Up: Mov dx,ctrl
rol ah,1
Mov al,ah
Out dx,al
Call clock
Dec cl
Jnz Up
Dec si
cmp si,-1
Jne up1
Ret
display Endp
clock proc
Mov dx, ctrl
Mov al, 01h
out dx, al
Mov al, 0
out dx, al
Mov dx, ctrl
ret
clock Endp
delay proc
push cx
push bx
Mov cx, 0ffffh
d2: Mov bx, 8fffh
d1: Dec bx
Jnz d1
loop d2
pop bx
pop cx
ret delay Endp
End start
4. Rancang dan buatlah program kendali motor DC pada Port 378H berbagai variasi yang
dapat dipilih melalui keyboard !
CODE_SEG SEGMENT
ASSUME CS:CODE_SEG,DS:CODE_SEG,SS:CODE_SEG
ORG 100H
start: jmp mulai
port1 equ 378h
mulai:
mov al,80h
mov dx,port1
out dx,al
mov al,255
mov dx,port1
out dx,al
call delay
putar:
jmp putar
delay proc near
push cx
mov cx,0ffffh
loop $
pop cx
ret
delay endp
ORG 20F0H
DB 0EAH
DW 0100H
DW 0FDF0H
CODE_SEG ENDS
END START ; akhir program

5. Rancang dan buatlah program kendali motor STEPPER pada Port 378H berbagai variasi
yang dapat dipilih melalui keyboard !
DATA SEGMENT
PORT1 EQU 378H
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV AL,80H
MOV DX,PORT1
OUT DX,AL
MOV DX,PORT1
MOV AL,88H
OUT DX,AL ;output on port378
UP: CALL DELAY
ROL AL,01H
OUT DX,AL
JMP UP
DELAY: MOV CX,0FFFFH
UP2 : MOV BX,0FFH
UP1 : DEC BX
JNZ UP1
DEC CX
JNZ UP2
RET
MOV AH,4CH
INT 21H
CODE ENDS
END START

6. Rancang dan buatlah program kendali motor SERVO pada Port 378H berbagai variasi
yang dapat dipilih melalui keyboard !

CODE_SEG SEGMENT
ASSUME CS:CODE_SEG,DS:CODE_SEG,SS:CODE_SEG
ORG 100H
start: jmp mulai
port1 equ 378h
mulai:
mov al,80h
mov dx,port1
out dx,al
mov al,255
mov dx,port1
out dx,al
call delay
putar:
jmp putar
delay proc near
push cx
mov cx,0ffffh
loop $
pop cx
ret
delay endp
ORG 20F0H
DB 0EAH
DW 0100H
DW 0FDF0H
CODE_SEG ENDS
END START ; akhir program

Anda mungkin juga menyukai