Welcome

Pages

Saturday, April 23, 2011

PERANCANGAN CATU DAYA TERPROGRAM DENGAN TAMPILAN DIGITAL BERBASIS MIKROKONTOLER AT89C51 DENGAN REMOTE CONTROL


Alat ini adalah perancangan catu daya terprogram dengan tampilan digital berbasis mikrokontoler AT89C51 dengan remote kontrol. Alat catu daya terprogram dengan remote kontrol adalah salah satu alternatif alat yang terprogram dan dapat dikendalikan dengan remote kontrol dimana mikrokontroler digunakan sebagai tempat penerjemah dari perintah masukan dan seven segment sebagai penampil tegangan keluaran yang dihasilkan. Mikrokontroler akan memilih tegangan keluaran sesuai masukan yang terjadi dan sesuai dengan program yang ditanam pada flash perom. Jarak maksimal pengiriman kode sinyal yang dapat diterima oleh bagian penerima alat ini dengan menggunakan remote kontrol adalah 25 meter dan Presentase kesalahan tiap pengukuran diperoleh error yang paling besar pada pengukuran tegangan untuk presentase kesalahan keseluruhan untuk alat atau error alat pada pengukuran tegangan 0.5 Volt sampai 9 Volt adalah 1.06 %


Program Mikrokontroler
;=================================================
; Program
; DAC 8 BIT
; Mikrokontroler AT89C51
; Output 2 digit 7-segment
; Input Tombol
;=================================================
Output equ 30h

volt_0 equ 0
volt_0_5 equ 96
volt_1 equ 8
volt_1_5 equ 152
volt_2 equ 36
volt_2_5 equ 52
volt_3 equ 49
volt_3_5 equ 105
volt_4 equ 5
volt_4_5 equ 85
volt_5 equ 77
volt_5_5 equ 61
volt_6 equ 19
volt_6_5 equ 62
volt_7 equ 59
volt_7_5 equ 39
volt_8 equ 119
volt_8_5 equ 47
volt_9 equ 255

datadac equ P2

Puluhan_0 EQU 00000100B
Puluhan_1 EQU 00111110B
Puluhan_2 EQU 01001000B
Puluhan_3 EQU 00011000B
Puluhan_4 EQU 00110010B
Puluhan_5 EQU 00010001B
Puluhan_6 EQU 00000001B
Puluhan_7 EQU 00111100B
Puluhan_8 EQU 00000000B
Puluhan_9 EQU 00010000B

Satuan_0 EQU 10010000B
Satuan_1 EQU 11110110B
Satuan_2 EQU 10000011B
Satuan_3 EQU 11000010B
Satuan_4 EQU 11100100B
Satuan_5 EQU 11001000B
Satuan_6 EQU 10001000B
Satuan_7 EQU 11110010B
Satuan_8 EQU 10000000B
Satuan_9 EQU 11000000B

Latch bit p3.7
T_Up bit p3.6
T_Down bit p3.5

;=================================================
; program utama
;=================================================

org 0h
mov p0,#0ffh
mov p1,#0ffh

starT: mov output,#0
call DAC_0_0

mulai: jb t_up,scan_2
call Delay
mov a,output
inc a
mov output,a
cjne a,#19,scanning
selesai:call DAC_9_0
mov output,#18
jmp mulai

scan_2: jb t_down,mulai
call Delay
mov a,output
dec a
mov output,a
cjne a,#255,scanning
call DAC_0_0
mov output,#0
jmp mulai
;=================================================
; Tampilan
;=================================================
Tampil_0:
mov a,#puluhan_0
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_0_5:
mov a,#puluhan_0
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_1:
mov a,#puluhan_1
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_1_5:
mov a,#puluhan_1
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_2:
mov a,#puluhan_2
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_2_5:
mov a,#puluhan_2
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_3:
mov a,#puluhan_3
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_3_5:
mov a,#puluhan_3
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_4:
mov a,#puluhan_4
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_4_5:
mov a,#puluhan_4
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_5:
mov a,#puluhan_5
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_5_5:
mov a,#puluhan_5
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_6:
mov a,#puluhan_6
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_6_5:
mov a,#puluhan_6
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_7:
mov a,#puluhan_7
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_7_5:
mov a,#puluhan_7
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_8:
mov a,#puluhan_8
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Tampil_8_5:
mov a,#puluhan_8
mov p1,a
mov a,#satuan_5
mov p0,a
ret
Tampil_9:
mov a,#puluhan_9
mov p1,a
mov a,#satuan_0
mov p0,a
ret
Hapus_tampilan:
mov a,#0ffh
mov p1,a
mov a,#0ffh
mov p0,a
ret
;=================================================
; Waktu Tunda
;=================================================
Delay:
MOV R7,#0
LD1:
DJNZ R6,$
DJNZ R7,LD1
RET
;=================================================
; Selesai
;=================================================
end

No comments: