
PERANCANGAN PERANGKAT LUNAK
<~~~SOFTWARE DENGAN TURBO ASSEMBLER 2.0~~~>
;===========================================================================;
; PROGRAM UTAMA ;
; NAMA FILE : TAOPI.ASM ;
; DIBUAT OLEH : SOFYAN EFENDI ;
; NIM : 9730046 ;
; PROGRAM STUDI TEKNIK ELEKTRONIKA ;
; JURUSAN TEKNIK ELEKTRO ;
; POLITEKNIK NEGERI BANDUNG 2001 ;
;===========================================================================;
. MODEL SMALL
. CODE
ORG 100H
L0 : CLI
MOV CX,0H; ISI CX UNTUK PENGGUNAAN DELAY (1 DETIK)
MOV AL,82H ; PORT A & C = OUTPUT, PORT B = INPUT
MOV DX,303H ; INISIALISASI PPI 8255 PADA REGISTER CONTROL WORD
OUT DX,AL
MOV AL,0FFH ; INISIALISASI SELURUH PERANGKAT OUTPUT (DIHIDUPKAN SESAAT)
MOV DX,300H
OUT DX,AL
INIT1 : LOOP INIT1
INIT2 : LOOP INIT2
INIT3 : LOOP INIT3
INIT4 : LOOP INIT4
INIT5 : LOOP INIT5
;===========================================================================;
;PENGAKTIFAN ADC UNTUK Vin0(SUHU);
AKTIFADC1 : MOV DX,302H
MOV AL,03H
OUT DX,AL
MOV CX,500H
DLY1 : LOOP DLY1
MOV AL,02H
OUT DX,AL
MOV CX,500H
DLY2 : LOOP DLY2
MOV AL,03H
OUT DX,AL
MOV CX,500H
DLY3 : LOOP DLY3
MOV AL,01H
OUT DX,AL
MOV CX,500H
DLY4 : LOOP DLY4
;===========================================================================;
;PEMBACAAN DATA Vin0 (SUHU) LEWAT PORT B;
MOV DX,301H
IN AL,DX
CMP AL,9EH; COMPARE DENGAN SUHU 40 DERAJAT CELCIUS
JBE ON1; JIKA LEBIH KECIL ATAU SAMA DENGAN 40 DERAJAT CELCIUS
CMP AL,0A1H; COMPARE DENGAN SUHU 50 DERAJAT CELCIUS
JAE ON2; JIKA LEBIH BESAR ATAU SAMA DENGAN 50 DERAJAT CELCIUS
JMP ON3; JIKA DIANTARA 40 DAN 50 DERAJAT CELCIUS
;===========================================================================;
ON1: MOV BL,04H
JMP AKTIFADC2
;===========================================================================;
ON2: MOV BL,11H
JMP AKTIFADC2
;===========================================================================;
ON3: MOV BL,09H
JMP AKTIFADC2
;===========================================================================;
;PENGAKTIFAN ADC UNTUK Vin1(KEPEKATAN ASAP);
AKTIFADC2 : MOV DX,302H
MOV AL,07H
OUT DX,AL
MOV CX,500H
DLY5 : LOOP DLY5
MOV AL,06H
OUT DX,AL
MOV CX,500H
DLY6 : LOOP DLY6
MOV AL,07H
OUT DX,AL
MOV CX,500H
DLY7 : LOOP
DLY7 MOV AL,05H
OUT DX,AL
MOV CX,500H
DLY8 : LOOP DLY8
;===========================================================================;
; PEMBACAAN DATA Vin1(KEPEKATAN ASAP) LEWAT PORT B;
MOV DX,301H
IN AL,DX
CMP AL,62H; COMPARE DENGAN KEPEKATAN ASAP 0.0224 gr/lt
JBE ON4;
CMP AL,69H; COMPARE DENGAN KEPEKATAN ASAP 0,0315 gr/lt
JAE ON5
JMP ON6
;===========================================================================;
ON4 : MOV BH,20H
JMP X1
;===========================================================================;
ON5 : MOV BH,81H
JMP X1
;===========================================================================;
ON6 : MOV BH,41H
JMP X1
;===========================================================================;
X1 : OR BL,BH
CMP BL,91H
JE X2
MOV AL,BL
MOV DX,300H
OUT DX,AL
JMP AKTIFADC1
X2 : MOV AL,93H
MOV DX,300H
OUT DX,AL
JMP AKTIFADC1
;===========================================================================;
END L0
; SETELAH INI, MASUK KE PROGRAM DEBUG LALU LAKUKAN LANGKAH-LANGKAH- ;
; SEBAGAIMANA YANG TELAH DIJELASKAN OLEH PENULIS PADA BAB PEMOGRAMAN- ;
; PADA MIKROPROSESOR 8088;
.:: OPI-Homepage ::.