16F877 Analog-digital çevirici?

Başlatan Alper, 01 Aralık 2003, 20:48:22

Alper

8 bit 0-256 binary sonucunu 0-5 volt sonuca sağlıklı olarak nasıl çevirebileceğimi şu ana

kadar bulabilmiş değilim.Yardımcı olabileceklere teşekkür ederim.

fsan

selam
arkadasim (ne yapmak istedigini tam anlamadim ama) belki bu link isine yarar


http://www.mikroelektronika.co.yu/english/product/books/picbasicbook/06.htm#6.7%20Input%20shift%20register

"6.7 Input shift

register
"  74HC597 ve picbasic SHIFTIN komutu ile giristeki signali okutup sonra PWM komutu ile 0-5V arasi cikis yap.

PWM

örnek:
--------------
Alıntı yapılan: "mmengi"
@ DEVICE pic16F84A, WDT_OFF    ' Watchdog Timer
@ DEVICE pic16F84A, PWRT_OFF  ' Power-On

Timer

define osc 4
TRISA=255
TRISB=0

DEGER   VAR BYTE

BASLA:
   IF PORTA.0=0 AND DEGER<255 THEN

DEGER=DEGER+1
   IF PORTA.1=0 AND DEGER>0 THEN DEGER=DEGER-1
   PWM PORTB.0,DEGER,10
   GOTO BASLA
   


END

Erol YILMAZ

volt = value * (5 / 255)

Bu ifade senin okudugun degeri (value), gerilim seviyesi olarak volt degiskenine atar,

Alper

Mesela voltmetre yapmak istiyorum.Volt=Değer*(5/255)     (8 bit çözünürlükte)
Burada küsüratlı değerleri nasıl

görüntülüyeceğim?Yani küsürat nerede saklanacak?

fsan

Alıntı Yap' PicBasic Pro program to measure voltage (0-5VDC)
' and display

on LCD with 2 decimal places
'
' This program uses the */ operator to scale the
' ADC result from 0-1023 to 0-500.  The */ performs
' a divide by 256 automatically,

allowing math which
' would normally exceed the limit of a word variable.
PicBasic Pro program to

measure voltage (0-5VDC) and display on LCD with 2 decimal places

Alper

:lol: Harika!!artık bir voltmetrem var ,hatta volt=volt*2 diyerek ve girişe bölücü direnç koyatak 0-10 voltada ulaştım.Ama

(-)eksi voltajları nasıl okuyacağım?

cnt

Alper, aman dostum picle 5 volttan yuksek voltajlarda calisacaksan, her ne kadar gerilim bolucu direnc kullansanda olcme

portu ile sase arasina bi tane 5.1V zener bagla.

z

Zener diyod baglama fikri guzel değil.

Gecmis deneyimlerimde bende asiri voltaja karsi koruma yapmak

icin
ADC girisi ile gnd arasina zener baglamistim.

ADC girisi 4.5 v civarina ulasinca ADC nin lineerliginde bozulma olmuş ve uzun bir sure ADC den

suphelenmistim.

Zener diyodlar kendi voltajlarindan cok daha once iletime gecmeye baslarlar. Yani bicak gibi keskin bir giris yapmazlar. Buda ADC nin hatali olcum yaptigi izlenimini

verir. Bu aklinizda bulunsun.

Bunun icin en uygunu ADC girisinden 5V'a 1n4148 gibi bir diyod baglamaktir.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

00050319

arkadaslar,12 bit seri yada parallel  ADC isimleri verebilirmisiniz?(piyasada bulabilecegimiz)
Ahmak odur ki arzu ve isteklerinin peşinden koşar, Allah'tan da bekler.(Hadis-i Şerif)

ise

max1202-3   seri
max180 paralel

00050319

10 bit ADC cevrim sonucunda
ADCIN PORTA.0,Sonuc
Sonuc=(Sonuc */

500)>>2 nasıl oluyorda sonuc*500/1024'e esit oluyor?
Ahmak odur ki arzu ve isteklerinin peşinden koşar, Allah'tan da bekler.(Hadis-i Şerif)

Erol YILMAZ

@bunalmis

Bu degerli tecrube icin teşekkürler...