18f2520 analog veri okuma hatası

Başlatan kerem, 26 Kasım 2022, 18:23:08

kerem

mrb arkadaşlar
şimdi ben fanın hal sensöründen gelen analog datayı pc817 ile pice analog giriş olarak okutmak istiyorum.
vref+ vref- uçlarını devre üzerinden harici olarak bağladım. vref ile alaka yazılımda herhangi bir kod yazmadım.

10 bitlik bir data alıyorum. benim analog girşe  0-5v arası degişken voltaj geliyor. örnek bir kurdum bu devrede analog çalışmasına baktım. mesela okunan değer 500 ise bir led yak dedim. örnek devrede ledi yakıyor problem yok. ama gercek devrede aynı işlevi görmüyor kaç defa denedim bir sonuç alamadım.

gerçek devrede yine voltaj geliyor girişe sanki analog giriş gerçek devrede tam işini yapamıyor.
konuyla alakalı bilgisi olan varsa yardımlarını bekliyorum teşekkürler...

kerem

READ_AN8

   MOVLW B'0110'
   MOVLB 0   ; bank 0
   MOVWF ADCON1
   MOVLW B'00000011'
   MOVWF ADCON2

   MOVLW B'100001'
   MOVWF ADCON0

; Right Justified
   BSF ADCON2,ADFM


   MOVLW 7
   MOVWF SYS_TMP1

SYS_ADC0_8

   DECFSZ SYS_TMP1,F   ; f - 1 -> f
   BRA SYS_ADC0_8

; start convert
   BSF ADCON0,GO

SYS_ADC1_8

   BTFSC ADCON0,GO
   BRA SYS_ADC1_8

   MOVF ADRESL,W
   MOVWF ADC8
   MOVF ADRESH,W
   MOVWF ADC8_1

; Shut-off
   CLRF ADCON0   ; 0 -> f
   MOVLW 15
   MOVWF ADCON1

   RETURN



an8 ile alakalı kodum bu

ete

Şema koymuş olsaydın daha kolay anlayabilirdik sorunun nerede olduğunu.
Ancak tahminde bulunabiliyorum. PC817 üzerinden analog bilgiyi aktarmanın çok zor olduğunu düşünüyorum. Var - yok sinyali iletebilir ama bir analog sinyali yeterince hassas bir şekilde iletebileceğini sanmıyorum. Sorun muhtemelen buradadır.

Ete


kerem


aRci

Merhaba; devrede hal sensörü göremedim simulasyon ekran görüntüsü paylaşın bence. opto kuplörü bu şekilde kullanmadım tam bilemiyorum bu şekilde çalışacağını da sanmıyorum hal sensör çıkışı 5v den büyük ise gerilim bölücü ile direk pic e bağla


kerem

devreyi attım premix fandan gelen sinyaller sol tarafta orda pc 817 kullanılmış belkide ete hocamın dediği gibi sadece var yok sinyali alıyordur. ben analog diye okumuşumdur. analog üzerine çalışıyorum belkide dijitaldır..

aRci

Hal sensör çıkışın devir başına 2 darbe gönderiyor aslında resimde almanca yazıyor translate ederek öğrendim. Neyse her 2 darbede 1 tur atıyor yani buradan fan hızını hesaplaya bilirsiniz.

aRci

gelen sinyal analog değil digital sinyal hatta opto kullanmana da gerek yok pull-up direnç ile doğrudan pic e bağlasanız da sıkıntı çıkmayacaktır.

kerem

ben burada fan hızını hesaplamak istemiyorum. sadece eğer fan dönmüyorsa sistem dursun diye bir sinyal almak istiyorum.. yani burda fan duruyor mu çalışıyor mu bilgisini almak istiyorum. bu bilgi analog mu dijital mi. devreden anlaşılıyor mu

kerem

yani optuyu pici kurumak için kullandım doğrusu. ama ben sinyali ölçtüm. 0 ile 5 v arası oluyor. fan çok hızlı olunca 5 v yavaş olunca 0 volt vermektedir. zaten pic 2,5v üzerinde voltajı dijital olarak kabul ediyor. o halde durduğunda 0 volt verdiğine göre dijital olarak girilebilir.

aRci

fan hızlandığı için gelen sinyal pwm sinyaline benzer bir hal alıyor. bunun sebeple hız artınca çıkışta voltaj daha hızlı gelip gidiyor sinyalin aktifde kalma süresi düşüyor ve bu gerilimin azaldığı gibi görüyorsunuz ancak pic e bu giriş sinyalini saydırarak sabit zaman aralığındaki darbe sayısının artığını göereceksiniz. en basit deneme yi ise picbasic de count komutu ile 1 saniyelik sinyal girişini test edebilirsiniz

kerem

anladım hocam teşekkür ederim. şimdi ben bu devreyi digital sinyal olarak alıyorum ve devreye bağlıyorum. fan çalışmayınca zaten sinyal gelmeycek ve 0v olacak çalışıncada sinyal gelecek 5v olacak. bu şekilde ben devreyi çalıştırıyorum

aRci

sizin cıkış dediğiniz burası değilmi hata olmasın buradaki opto dışarıya sinyal olarak eksi polaritede sinyal veriyor


Powered by EzPortal