Haberler:

Eposta uyarılarını yanıtlamayınız ( ! ) https://bit.ly/2J7yi0d

Ana Menü

pic + 12bit ADC

Başlatan nihatari, 20 Mart 2006, 17:00:18

nihatari

Arkadaşlar bununla ilgili bir örnek uygulam istiyorum. Yardımcı olursanız sevinirim.

madpic


nihatari

teşekkür ederim arkadaşım.
Picbasic de uygulamalarını arıyorum.Bununla ilgili bir döküman varsa sevinirim.

ftsahin

deger var word
analog var word[4]
'portd.0    MPC3202.1     CS_Low, işlemi başlatır
'portd.1    MPC3202.7     Clock
'portd.2    MPC3202.5     D_in kanal seçme, Birden fazla kanal için, tek kanalda boş kalacak
'portd.3    MPC3202.6     Bilgi okuma
loop:
  'for j=1 to 3     Kanal seçme, 4 kanal için
    portd.0=1'  CS_High........Önce Yüksek yapılır
    portd.0=0'  CS_low.........Low yapılarak İşlemi başlatır
    for i=1 to 21 
      portd.1=0
      portd.2=1
      if i=4 then portd.2=j.1
      if i=5 then portd.2=j.0
      if i<20 then
        deger=deger << 1
        deger=deger+portd.3
      endif 
      analog[j]=deger
      portd.1=1
      pauseus saat
    next i
   ' deger=0
  'next j



Sonuç "deger" değişkenine atılıyor.
Bendeki çalışan versiyonu MPC3204 için yazmıştım. 4 kanal ve hepsi kullanılıyordu. 3202'de değişiklik olabilir üzerinde biraz çalışmak gerekebilir. KOlay gelsin.

nihatari

Tşk ederim arkadaşım. Bunu tek kanal olarak yaptığımız zaman ne gibi bir değişiklik yapmak gerekiyor programda.Birde programda i değişkenini neden 21 e kadar saydırıyoruz izah edebilirmisin.

ftsahin

j döngüsünü iptal etmek tek kanala indirmek için yeterli. Zaten programın şu hali tek kanal çalışacak durumda.
Daha önce de söylediğim gibi bu programı MPC 3204 için yazmıştım ve üzerinde fazla değişiklik yapmadım. Bu yüzden i değişkeni o şekilde kaldı.
Sen yaptığın projede hangi ADC entegresi kullanıyorsun? Bu, yazılan kodu tamamen değiştirebilir. Aslında yapılacak iş, önce ADC'nin datasheet'ini iyice inceleyip programı ona göre yazmak. Eğer yapacağın proje hakkında hiçbirşey bilmiyorsan yardım etme şansımız da az olacaktır. Kolay gelsin.