Anda di halaman 1dari 8

DT-I/O DAC-08 (Digital to Analog Converter)

DAC-08 adalah Digital to Analog Converter berbasis AD7302 berukuran kecil yang
membutuhkan catu daya tunggal. Aplikasinya antara lain untuk instrumen bertenaga
baterai serta sebagai sumber tegangan dan arus yang dapat diprogram.

Fitur dan spesifikasi teknis :

1. Memiliki dua DAC 8-bit.


2. Tegangan kerja (VDD) dari +2,7 VDC hingga +5,5 VDC.
3. Tegangan referensi (Vref) = VDD/2.
4. Fungsi Power-Down.
5. Beroperasi secara Rail-to-Rail dengan settling time sekitar 1,2 s.
6. Memiliki dua mode:
- Automatic Update (untuk memperbaharui/update masing-masing output DAC
secara real-time)
- Simultaneous Update (untuk memperbaharui/update kedua output DAC secara
bersamaan)
7. Selisih hasil pengukuran dan penghitungan maksimum 3 LSB (sekitar 59 mV
dengan menggunakan VDD = +5 VDC).
8. Antarmuka paralel kecepatan tinggi.
9. Dapat dihubungkan melalui pin I/O ataupun Intel System Bus.
10. Dilengkapi rutin-rutin siap pakai untuk DT-51 Low Cost Series dan DT-51
Minimum System ver 3.0.

Alokasi Pin J1 Alokasi Pin J2


D7 D6 CSpin CLRpin
D5 D4 PDpin WR
D3 D2 LDACpin A/B
D1 D0 NC NC
VCC GND VCC GND

DAC DATA DAC CONTROL


NC = No Connection
(tidak terhubung)
Hubungan DAC-08 dengan DT-51 Low Cost Series secara I/O
DT-51 Low Cost Series DAC-08
Port1 DAC DATA
Pin Nama Pin Nama
1 GND 1 GND
2 VCC 2 VCC
3 P1.0 3 D0
4 P1.1 4 D1
5 P1.2 5 D2
6 P1.3 6 D3
7 P1.4 7 D4
8 P1.5 8 D5
9 P1.6 9 D6
10 P1.7 10 D7

Port3 DAC CONTROL


Pin Nama Pin Nama
1 GND 1 GND
2 VCC 2 VCC
5 P3.2 5 A/B
6 P3.3 6 LDACpin
7 P3.4 7 WR
8 P3.5 8 PDpin
9 P3.6 9 CLRpin
(pin ini tidak tersedia (pada DT-51 LC Nano
pada DT-51 LC Nano System) System, jumper CLR dapat
dihubungkan ke posisi 2-3)
10 P3.7 10 CSpin

Hubungan DAC-08 dengan DT-51 Minimum System ver 3.0 secara I/O
DT-51 Minimum System ver 3.0 DAC-08
PortC&Port1 DAC DATA (J1)
Pin Nama Pin Nama
9 P1.0 3 D0
10 P1.1 4 D1
11 P1.2 5 D2
12 P1.3 6 D3
13 P1.4 7 D4
14 P1.5 8 D5
15 P1.6 9 D6
16 P1.7 10 D7

Control DAC CONTROL (J2)


Pin Nama Pin Nama
1 VCC 2 VCC
2 GND 1 GND
3 I0 5 A/B
4 I1 6 LDACpin
5 T0 7 ATAU 9 WR ATAU CLRpin
(gunakan salah satu)
6 T1 8 ATAU 10 PDpin ATAU CSpin
(gunakan salah satu)
Hubungan DAC-08 dengan DT-51 Minimum System ver 3.0 secara System Bus
DT-51 Minimum System ver 3.0 DAC-08
Data&CS DAC DATA (J1)
Pin Nama Pin Nama
9 AD0 3 D0
10 AD1 4 D1
11 AD2 5 D2
12 AD3 6 D3
13 AD4 7 D4
14 AD5 8 D5
15 AD6 9 D6
16 AD7 10 D7

Data&CS DAC CONTROL (J2)


Pin Nama Pin Nama
16 CS7 10 CSpin

Address DAC CONTROL (J2)


Pin Nama Pin Nama
1 A0 5 A/B

Control DAC CONTROL (J2)


Pin Nama Pin Nama
1 VCC 2 VCC
2 GND 1 GND
4 I1 6 LDACpin
5 T0 9 CLRpin
6 T1 8 PDpin
7 WR 7 WR

Pengaturan Jumper:

Jumper Posisi Keterangan


1-2 LDAC terhubung ke Ground, hanya dapat menggunakan
Automatic Update Mode
LDAC (J4)
2-3 LDAC terhubung ke pin LDACpin, semua mode dapat
digunakan
1-2 CLR terhubung ke pin CLRpin, dapat menggunakan rutin
CLEAR
CLR (J5)
2-3 CLR terhubung ke VDD via resistor, tidak dapat
menggunakan rutin CLEAR
1-2 CS (Chip Select) terhubung ke Ground, modul DAC selalu
terpilih
CS (J7)
2-3 CS terhubung ke pin CSpin, modul DAC dapat dipilih oleh
program
1-2 PD terhubung ke pin PDpin, dapat menggunakan rutin POWER
DOWN dan POWER UP
PD (J8)
2-3 PD terhubung ke VDD via resistor, tidak dapat
menggunakan rutin POWER DOWN dan POWER UP

Rutin-rutin pada DAcIO.INC dan DAcSB.INC:

Resource yang terpakai dalam rutin-rutin sbb :


1. Internal data memory alamat 23H
2. Internal bit memory alamat 22H.0 (I/O & System Bus) & 22H.1 (System Bus)
3. P1 dan P3.2 P3.7 (I/O)
AD0 AD7, CS7, A0, dan P3.3 - P3.6 (System Bus)
4. External data memory alamat E000H dan E001H (System Bus)
1. Nama : IE2_INIT
Input : IE2_MODE (0=Automatic Update, 1=Simultaneous Update)
Output : -
Fungsi : Untuk melakukan inisialisasi terhadap sistem
Keterangan : Rutin ini dijalankan sebelum menggunakan rutin-rutin DAC yang
lain

2. Nama : IE2_AUTO
Input : IE2_DATA (00H - FFH), IE2_SEL (0=A, 1=B)
Output : -
Fungsi : Untuk melakukan update terhadap output yang dipilih
menggunakan mode Automatic Update
Keterangan : Rutin ini dijalankan untuk memperbaharui/update salah satu
output DAC secara langsung

3. Nama : IE2_SIMULTAN
Input : IE2_DATA (00H - FFH), IE2_SEL (0=A, 1=B)
Output : -
Fungsi : Untuk mengisi register output DAC yang dipilih dengan nilai
yang baru
Keterangan : Setelah rutin ini dijalankan, output DAC belum berubah karena
update output DAC hanya dapat dilakukan dengan

4. Nama : IE2_UPDATE
Input : -
Output : -
Fungsi : Untuk melakukan update terhadap kedua output DAC secara
bersamaan menggunakan Simultaneous Update
Keterangan : Rutin ini hanya digunakan dalam mode Simultaneous Update dan
dijalankan setelah register output DAC diperbaharui/update
dengan rutin IE2_SIMULTAN

5. Nama : IE2_CLEAR
Input : -
Output : -
Fungsi : Untuk membersihkan kedua register output DAC dan output DAC
menjadi 0
Keterangan : -

6. Nama : IE2_PDOWN
Input : -
Output : -
Fungsi : Untuk mengaktifkan fungsi Power-Down
Keterangan : Setelah rutin ini dipanggil, maka DAC berada pada mode Power-
Down dimana semua output DAC menjadi 0 V, namun register
output masih menyimpan nilai sebelum Power-Down diaktifkan

7. Nama : IE2_PUP
Input : -
Output : -
Fungsi : Untuk mematikan fungsi Power-Down
Keterangan : Setelah rutin ini dipanggil, DAC akan keluar dari mode Power-
Down dimana semua output DAC kembali ke nilainya masing-masing

Cara menghitung output DAC

Rumus output DAC: Vout = 2 x _N_ x Vref


256
dimana Vout: tegangan output
N : nilai register output DAC
Vref: tegangan referensi (= VDD/2)

Selisih hasil penghitungan dan pengukuran dapat mencapai 3 LSB (sekitar 59 mV


dengan menggunakan VDD = +5 VDC)
Prosedur testing dan contoh program

Ada 6 contoh dan testing program sbb:

1. DAIOAUTO.ASM
Mode : Automatic Update
Koneksi : Secara I/O
Fungsi : Program ini akan memperbaharui/update output DAC yang dipilih
sesuai dengan nilai yang dikirimkan melalui LCADDA.EXE
Langkah :
- Hubungkan DAC-08 dengan DT-51 Low Cost Series (DAC Control
yang perlu dihubungkan hanya A/B dan WR)
- Pindah jumper LDAC dan CS ke posisi 1-2
- Pindah jumper PD dan CLR ke posisi 2-3
- Beri tegangan supply +9 VDC pada DT-51 Low Cost Series
- Programlah DAIOAUTO.HEX ke dalam DT-51 Low Cost Series
- Jalankan LCADDA.EXE, pilih COM port yang digunakan, dan
pilih mode DAC Automatic Update
- Pilih Output DAC yang ingin diperbaharui/update
- Isi nilai (0 - 255) yang diinginkan dan tekan Fill A atau
Fill B untuk mengeluarkan tegangan yang diinginkan ke
output DAC
- Ukur dan bandingkan dengan hasil penghitungan manual (bila
diperlukan)

2. DAIOSIM.ASM
Mode : Simultaneous Update
Koneksi : Secara I/O
Fungsi : Program ini akan memperbaharui/update kedua output DAC sesuai
dengan nilai yang dikirimkan melalui LCADDA.EXE
Langkah :
- Hubungkan DAC-08 dengan DT-51 Low Cost Series (DAC Control
yang perlu dihubungkan hanya A/B, LDAC, dan WR)
- Pindah jumper CS ke posisi 1-2
- Pindah jumper LDAC, PD, dan CLR ke posisi 2-3
- Beri tegangan supply +9 VDC pada DT-51 Low Cost Series
- Programlah DAIOSIM.HEX ke dalam DT-51 Low Cost Series
- Jalankan LCADDA.EXE, pilih COM port yang digunakan, dan
pilih mode DAC Simultaneous Update
- Isi nilai (0 - 255) yang diinginkan pada kedua output dan
kirimkan satu per satu dengan menekan Fill A dan Fill B
- Setelah keduanya diisi dan dikirimkan, tekan Update
- Ukur dan bandingkan dengan hasil penghitungan manual (bila
diperlukan)

3. DAIO.ASM
Mode : Automatic Update atau Simultaneous Update
(gabungan DAIOAUTO.ASM dan DAIOSIM.ASM)
Koneksi : Secara I/O
Fungsi : Program ini akan memperbaharui/update output DAC yang dipilih
sesuai dengan nilai yang dikirimkan melalui LCADDA.EXE
Langkah :
- Hubungkan DAC-08 dengan DT-51 Low Cost Series (Semua DAC
Control dihubungkan)
- Pindah jumper LDAC dan CS ke posisi 2-3
- Pindah jumper PD dan CLR ke posisi 1-2
- Beri tegangan supply +9 VDC pada DT-51 Low Cost Series
- Programlah DAIO.HEX ke dalam DT-51 Low Cost Series
- Jalankan LCADDA.EXE, pilih COM port yang digunakan, dan
pilih mode DAC Automatic Update atau Simulataneous Update
- Langkah memperbaharui/update output sama dengan cara pada
DAIOAUTO.ASM atau DAIOSIM.ASM
- Ukur dan bandingkan dengan hasil penghitungan manual (bila
diperlukan)
4. DASBAUTO.ASM
Mode : Automatic Update
Koneksi : Secara System Bus
Fungsi : Program ini akan memperbaharui/update output DAC yang dipilih
sesuai dengan nilai yang dikirimkan melalui LCADDA.EXE
Langkah :
- Hubungkan DAC-08 dengan DT-51 Minimum System ver 3.0 (DAC
Control yang perlu dihubungkan hanya A/B, WR, dan CS)
- Pindah jumper LDAC ke posisi 1-2
- Pindah jumper PD, CLR, dan CS ke posisi 2-3
- Beri tegangan supply +9 VAC pada DT-51 Minimum System ver
3.0
- Download-lah DASBAUTO.HEX ke dalam DT-51 Minimum System ver
3.0
- Jalankan LCADDA.EXE, pilih COM port yang digunakan, dan
pilih mode DAC Automatic Update
- Pilih Output DAC yang ingin diperbaharui/update
- Isi nilai (0 - 255) yang diinginkan dan tekan Fill A atau
Fill B untuk mengeluarkan tegangan yang diinginkan ke
output DAC
- Ukur dan bandingkan dengan hasil penghitungan manual (bila
diperlukan)

5. DASBSIM.ASM
Mode : Simultaneous Update
Koneksi : Secara System Bus
Fungsi : Program ini akan memperbaharui/update kedua output DAC sesuai
dengan nilai yang dikirimkan melalui LCADDA.EXE
Langkah :
- Hubungkan DAC-08 dengan DT-51 Minimum System ver 3.0 (DAC
Control yang perlu dihubungkan hanya A/B, WR, LDAC, dan CS)
- Pindah jumper LDAC, CS, CLR, dan PD ke posisi 2-3
- Beri tegangan supply +9 VAC pada DT-51 Minimum System ver
3.0
- Download-lah DASBSIM.HEX ke dalam DT-51 Minimum System ver
3.0
- Jalankan LCADDA.EXE, pilih COM port yang digunakan, dan
pilih mode DAC Simultaneous Update
- Isi nilai (0 - 255) yang diinginkan pada kedua output dan
kirimkan satu per satu dengan menekan Fill A dan Fill B
- Setelah keduanya diisi dan dikirimkan, tekan Update
- Ukur dan bandingkan dengan hasil penghitungan manual (bila
diperlukan)

6. DASB.ASM
Mode : Automatic Update atau Simultaneous Update
(gabungan DASBAUTO.ASM dan DASBSIM.ASM)
Koneksi : Secara System Bus
Fungsi : Program ini akan memperbaharui/update output DAC yang dipilih
sesuai dengan nilai yang dikirimkan melalui LCADDA.EXE
Langkah :
- Hubungkan DAC-08 dengan DT-51 Minimum System ver 3.0 (Semua
DAC Control dihubungkan)
- Pindah jumper LDAC dan CS ke posisi 2-3
- Pindah jumper PD dan CLR ke posisi 1-2
- Beri tegangan supply +9 VAC pada DT-51 Minimum System ver
3.0
- Download-lah DASB.HEX ke dalam DT-51 Minimum System ver 3.0
- Jalankan LCADDA.EXE, pilih COM port yang digunakan, dan
pilih mode DAC Automatic Update atau Simulataneous Update
- Langkah memperbaharui/update output sama dengan cara pada
DASBAUTO.ASM atau DASBSIM.ASM
- Ukur dan bandingkan dengan hasil penghitungan manual (bila
diperlukan)
Kerangka Program

Kerangka program untuk DAC-08 adalah sebagai berikut (jika menggunakan assembler
ASM51:
1. Untuk antarmuka secara I/O:

$mod51
ms3 equ 0 ;diberi nilai 1 jika menggunakan MinSys ver 3.0
;diberi nilai 0 jika menggunakan Low Cost
Series

selpin equ 1 ;diberi nilai 1 jika pin A/B dikendalikan oleh


program dan dihubungkan ke P3.2
;diberi nilai 0 jika pin A/B dihubungkan ke
salah satu logika dan tidak dihubungkan ke
P3.2 (hanya menggunakan 1 channel DAC, 0=A &
1=B)

ldacpin equ 1 ;diberi nilai 1 jika pin LDACpin dikendalikan


oleh program, dihubungkan ke P3.3, dan jumper
LDAC berada pada posisi 2-3
;diberi nilai 0 jika pin LDACpin tidak
dihubungkan ke P3.3 dan jumper LDAC berada
pada posisi 1-2 (hanya menggunakan mode
Automatic Update)

wrdapin equ 1 ;diberi nilai 1 jika pin WR dikendalikan oleh


program dan dihubungkan ke P3.4
;diberi nilai 0 jika pin WR dikendalikan oleh
sumber selain oleh program dan tidak
dihubungkan ke P3.4

clrpin equ 1 ;diberi nilai 1 jika pin CLRpin dikendalikan


oleh program, dihubungkan ke P3.6 (jika ms3
equ 0) atau ke P3.4 (jika ms3 equ 1), dan
jumper CLR berada pada posisi 1-2
;diberi nilai 0 jika pin Clrpin tidak
dihubungkan ke port dan jumper CLR berada
pada posisi 2-3 (menonaktifkan fungsi CLEAR
DAC)

csdapin equ 1 ;diberi nilai 1 jika pin CSpin dikendalikan


oleh program, dihubungkan ke P3.7 (jika ms3
equ 0) atau ke P3.5 (jika ms3 equ 1), dan
jumper CS berada pada posisi 2-3
;diberi nilai 0 jika pin CSpin tidak
dihubungkan ke port dan jumper CS berada pada
posisi 1-2

pdpin equ 1 ;diberi nilai 1 jika pin PDpin dikendalikan


oleh program, dihubungkan ke P3.5, dan jumper
berada pada posisi 1-2
;diberi nilai 0 jika pin PDpin tidak
dihubungkan ke port dan jumper PD berada pada
posisi 2-3 (menonaktifkan fungsi POWER DOWN
DAC)

$include(DAcIO.DEF) ;definisi port untuk antarmuka secara I/O

CSEG
ORG 0000H ;diberi nilai 4000H untuk antarmuka dengan
MinSys v3.0
AJMP START
. ;user program
. ;user program
. ;user program

$include(DAcIO.INC) ;rutin-rutin untuk antarmuka secara I/O

START: MOV SP, #30H


. ;user program
. ;user program
. ;user program
END

2. Untuk antarmuka secara System Bus

$mod51
ldacpin equ 1 ;diberi nilai 1 jika pin LDAC dikendalikan
oleh program, dihubungkan ke P3.3, dan jumper
LDAC berada pada posisi 2-3
;diberi nilai 0 jika pin LDACpin tidak
dihubungkan ke P3.3 dan jumper LDAC berada
pada posisi 1-2 (hanya menggunakan mode
Automatic Update)

clrpin equ 1 ;diberi nilai 1 jika pin CLRpin dikendalikan


oleh program, dihubungkan ke P3.4, dan
jumper CLR berada pada posisi 1-2
;diberi nilai 0 jika pin Clrpin tidak
dihubungkan ke port dan jumper CLR berada
pada posisi 2-3 (menonaktifkan fungsi CLEAR
DAC)

pdpin equ 1 ;diberi nilai 1 jika pin PDpin dikendalikan


oleh program, dihubungkan ke P3.5, dan jumper
berada pada posisi 1-2
;diberi nilai 0 jika pin PDpin tidak
dihubungkan ke port dan jumper PD berada pada
posisi 2-3 (menonaktifkan fungsi POWER DOWN
DAC)

$include(DAcSB.DEF) ;definisi port untuk antarmuka secara System


Bus

CSEG
ORG 4000H ;diberi nilai 4000H untuk antarmuka dengan
MinSys v3.0
AJMP START
. ;user program
. ;user program
. ;user program

$include(DAcSB.INC) ;rutin-rutin untuk antarmuka secara System Bus

START: MOV SP, #30H


. ;user program
. ;user program
. ;user program
END

ASM51 is copyright by MetaLink Corporation

Anda mungkin juga menyukai