16F877 de ADC sorunu

kudretuzuner

Paylaşımcı üye
Katılım
28 Tem 2009
Mesajlar
912
Puanları
131
Merhaba
Arkadaşlar Altaş yayınlarından PIC 16F877A adlı kitaptaki ADC ile ilgili bir çalışmayı hazırladım ama sorunu çözemedim.Yazılım hata veriyordu değişiklerle programı çalışır hale getirdim ama pot ile ADC okuyamıyorum.Nerede hata yapıyorum?
Teşekkürler.
 

Ekli dosyalar

  • PWM_DENEME.rar
    32.9 KB · Görüntüleme: 1
adcon0 ve adcon1 registerlarını set ettinizmi?
birde şemada pota bağlı yukarı çekilmiş 10k var. bu durumda potunuz en üst seviyedeyken bile 2.5v üstü okuyamazsınız. 10k yı çıkarıp direk bağlarsanız o ucu range daha geniş olur.
 
Hocam burdaki yazılımın amacı ne, tam anlamadım açıkçası.. Anladığım kadarıyla 5V luk referansta 10 bit ölçüp 2 MSB bitini sallıyor.. Kalan 8 LSB biti de PORTB ye atıyor ilk yazılım.. Yani adc aslında 10 bit ölçüm yaptığı halde 5V referansta 1,25 V a kadar doğru ölçüyor, 2,5V a kadar 1,25V eksiğini, 3,75V a kadar 2,5V eksiğini, 5V a kadar da 3.75V eksiğini gösteriyor PORTB de..


Hocam alttaki satırda kanal no RA1(AN1) olarak kullanılmış.. Kalın yazılı komutlarda.. KANALNO registeri seçeceğiniz kanalın 2 katı olmalı.. Mesela 3 nolu kanal için 6 girilmeli o registere..

10 bit okuduğu halde 8 bit LSB bitini portb ye atıyor..

Gelen bilgiler aslında 2 registerde veriliyor.. ADRESH ve ADRESL.. Bu programa göre adcon0, 2MSB bitini ADRESH'ta kalan düşük değerlikli 8 biti de ADRESL de veriyor ve programda SONUCBYTE daima sıfır olduğu için sadece ADRESL satırını PORTB ye atıyor.. Altı çizili komutlar işleniyor yani..
 
Son düzenleme:
c dilinde yzılmış olsa idi size yardımcı olurdum ama bu dili bilmiyorum
 
Merhaba
Evet yazılımı ben de tam olarak analiz edemediğim için sordum.Yapacağım işlerin yazılımlarını ekseriyetle kendim yazarım.ADC konusuna yeni başladım sistemi tam olarak çözemedim(neyin ne olduğunu ve nasıl çalıştığını)özellikle ADRESL ve ADRESH saklayıcılarını anladım da oluşan bilgilerin nasıl registerlere atıldığını tam kavrayamadım.Teoriye biraz daha kafa yorayım bakalım.
 
Abi pdfsinde detaylıca anlatılmış.. Çok büyütülecek bişey yok aslında adc de.. Sanırım bazı pdflerde 3-5 bilgi eksik oluyor o yüzden soru işareti kalmıştır aklınızda.. Yine asmde adc ile ilgili sormak istediğiniz bişey olursa özelden yazabilirsiniz.. Çoğu şeyi anlatabilirim..
 

Yorumlamana hayranım.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için onları kabul etmelisiniz. Daha fazla bilgi edin…