Guru.Technosains.Com |
|||||||
Home | Kuliah Elektro | Elektronik Project | Tutorial | Download | Donasi | ||
more search type here |
|||||||
ANALOG TO DIGITAL CONVERTER VIA PARALLEL PORT Oleh: I Made Wiryana Sinyal analog contohnya tegangan dari sensor suhu merupakan data yang cukup penting bagi beberapa aplikasi (misal post pencatat suhu dll). Untuk tujuan ini telah tersedia berbagai peralatan untuk mengkonversi dari data analog ke digital yang dikenal dengan Analog to Digital Converter (ADC). Tetapi di sini penulis mencoba menampilkan rangkaian ADC yang sederhana yang memanfaatkan peralatan I/O yang sudah ada di komputer yaitu port printer. Contoh program dengan bahasa BASIC diberikan di bagian bawah tulisan. Sebagai chip ADC, rangkaian ini memanfaatkan TLC549 buatan Texas Instrument dengan resolusi 8 bit. IC1 merupakan rangkaian regulator akan memberikan keluarang tegangan stabil 5 Volt dari masukan 8-30 V. Digunakan selain sebagi catudaya stabil juga sebagai tegangan referensi untuk proses ADC. Masukan analog diberikan kepada pin 2 dari IC2 (A-IN), dan harus berkisar antar 0-5 Volt. Negative edge (berubah dari H-L) di pin 5 (CS) akan memulai chip bekerja miminimal 1,7 mikrodetik. TCL549 akan mulai menkonversi sesuai pulsa klok di pin I/O-CLK (pin 7), akan dimulai dari MSB dan selanjutnya ke LSB. Setelah pulsa ke 8, maka output digital dari pin 6(D-OUT) selesai keluar semuanya. Dengan kata lain keluaran adalah serial. Setelah pulsa ke 8 ini (satu siklus konversi), maka konversi berikutnya dapat dimulai lagi dengan membuat pin 5 LOW lagi. Waktu siklus ini diatur melalui program BAIC dengan konstanta DELAY pada baris 30. Tundaan ini dilakukan pada baris 90. Pada baris 240 merupakan trik untuk mengambil nilai rata-rata. Arus yang dibutuhkan untuk beroperasi sekitar 5 mA. 10 Base = 888: REM Base LPT1 (LPT2 = 632) 20 Delay = 1: REM delay konversi 30 Average = 10: REM loop untuk rata-rata 40 CLS 50 Value = 0 60 FOR t =1 TO Average 70 OUT (Base), 0: REM CS, I/O CLK low 80 OUT (Base), 1: REM CS high, konversi start 90 FOR q=1 TO Delay 100 NEXT q : REM tunggu konversi 120 OUT (Base), 0: REM CS+CLK low 130 OUT (Base), 2: REM CLK High 140 OUT (Base), 0: REM Clk low 150 FOR i = 1 TO 7: REM tulis bit 7 - 0 160 x = INP (Base + 1) AND 128: REM baca bit masuk 170 IF X = 128 THEN a = 0 180 IF X = 0 THEN a=1 190 Value = Value + a * 2 ^ ( 7 - i): REM masukan nilai 200 OUT (Base), 2: REM CLK high 210 OUT (Base), 0: REM CLK Low 220 NEXT i 230 NEXT t 240 Value = Value * 5 / (255 * Average): REM nilai rata rata konversi 250 LOCATE 10,10: : REM untuk kisaran 0-5 V 260 PRINT USING "#.### Volt"; Value 270 GOTO 50 |
|||||||
Copyright (C) guru.technosains.com
For problems or questions regarding this web contact [admin]