A/D convertor kullanımı

Başlatan . Kağan, 16 Aralık 2013, 20:27:15

. Kağan

  GIT: IF ADCON0.2=1 THEN GIT  


Yukarıdaki ifade niçin var? Neyi anlatıyor?


ADCIN 0, HAM                                     '0 nolu kanaldan  Analog değeri oku ve RAW değişkenine aktar.
GIT: IF ADCON0.2=1 THEN GIT             'Çevirme işlemi tamamlanınca Adcon0.2=0 olacak.       <="BU NE DEMEK"


Yukarıdaki iki komut satırı birbiriyle nasıl bi ilişki içinde?

  GIT: IF ADCON0.2=1 THEN GIT  
satırı olmadan 0 nolu kanaldan  Analog değeri okunamaz mı?
???


Teşekkürler.

Hattuşa

ustam benim bildiğim kadarıyle ADC okuma işlemi yani ADC cevrim süresi vardır, bu sürenin dolması için belirli bir gecikme verilmesi gerekir, bu gecikmeninne kadar olacağı işlemcinin ADC çevrim kaabiliyeti ve özellikle çalışılan kristalle alakalı bir durum. bu süreyi en verimli kullanmak için GIT: IF ADCON0.2=1 THEN GIT yani adc çevrimi bitene kadar burada oyalan demek istiyor, yalnız sanki kodda bir hata var gibi yani ;
GIT: IF ADCON0.2=0 THEN GIT olması gerekiyor gibi,
bense şu şekilde kullanıyorum
while adcon0.2 ==0 :wend

bu yazılanla aynı mantıkta çalışıyor

sonuç olarak bu satır olmadan da ADC okuması yapılabilir, yalnız adc okumasının sağlıklı olması için çevrim bitene kadar beklemek gerekir.

. Kağan

PICBasic Dersleri PIC Basic Pro ile PIC Programlama 5 - ETE

Kaynaktan çalışıyorum. Örnek böyle. ???

ete

ADCON0 registeri 2 nolu biti, ADC okuma işleminin o andaki durumunu bildirir. ADC okuma işlemi başlatılır başlatılmaz 2 nolu bit=1 olur. İşlem devam ettiği müddetçe bu bit 1 de kalır ve okuma işlemi sona erdiğinde bit sıfır olur.
Aslında BAsic bu işi otomatik yapmaktadır. Bu nedenle ;
Bekle:
IF ADCON.2=1 THEN Bekle
şeklinde bir komut kullanılması gerekmiyor. Başlangıçta bende bilmiyordum ama sonradan bir yerlerde okudumki Basic okuma işlemi sonunu kendisi takip ediyormuş. Bu nedenle kullanıcı bunu takip etmesi gerekmiyor. Ama yaparsanızda hayır demiyor.
Karar size kalmış. Ben artık o şekilde komut kullanmıyorum.

Ete

. Kağan

Teşekkür ederim kafamdaki karışıklık ortadan kalktı.  :)

Powered by EzPortal