ccs c adc komutları

Başlatan makine_terbiyecisi, 14 Şubat 2017, 23:09:37

makine_terbiyecisi

Merhaba arkadaşlar,
> #int_AD sadece adc okuması bittiğinde mi meydana geliyor? araştırdığım kadarıyla öyle, teyit etmek istedim.
> Adc datalarını sürekli kontrol etmem gerekiyor. yani benim için birinci öncelikteler.
> Adc datalarını bir kesme ile almak istersem nasıl bir kesme önerirsiniz. Aklımda timer kesmesi var ama bunu #int_AD ile yapmak mümkün olabilir mi?

kristal: 25MHz
device: pic18f4431
adc: 3 tane adc sinyal kontrol edeceğim.

ccs c de adc bölümünce resimdeki komutlar var. Ne anlama geldiklerini bulamadım.


İyi çalışmalar ...
# ÖĞRENELİM, ÖĞRETELİM #

tekosis

yapacağınız işlem için dediğiniz gibi üç kanal adc ile işleminizi yapabilirsiniz. adc çevriminizi başlatırsınız, programınızda başka işlerinizi yaparsınız, adc çevrimi bitince #int_AD kesmesi oluşur ve bununla ilgili işlerinizi de kesme içinde yada ana fonksiyonda halledersiniz. dediğiniz şey gayet mümkün.
İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.

makine_terbiyecisi

#2
Alıntı yapılan: tekosis - 14 Şubat 2017, 23:26:43
yapacağınız işlem için dediğiniz gibi üç kanal adc ile işleminizi yapabilirsiniz. adc çevriminizi başlatırsınız, programınızda başka işlerinizi yaparsınız, adc çevrimi bitince #int_AD kesmesi oluşur ve bununla ilgili işlerinizi de kesme içinde yada ana fonksiyonda halledersiniz. dediğiniz şey gayet mümkün.

adc çevrimi derken read_adc mi yoksa setup adc mi?
yapmak istediğim read ve setup adc kısmının ana programdan bağımsız belli periyotlarda kontrol edilmesidir.
# ÖĞRENELİM, ÖĞRETELİM #

tekosis

#3
şu an kod yazamayacağım ama yol göstermesi açısından şu şekilde deneme yapabilirsin.

* bir adc kesmesi oluştur, kesmenin hemen başında bir adet led yakma satırı ekle.

* devrene bir buton bağla bu butona her basışında devren bir kod satırı yada istediğin kadar ilerlesin, daha sonra istediğin yerde bir daha butona basmayı bekletebilirsin.

* main program içinde tris, kesme vs. ayarlarını yaptıktan sonra setup_adc() fonksiyonundan önce buton beklemesi koy, butona basınca setup_adc komutu çalışsın. kesmenin içindeki led yanarsa adc kesmesi bu şekilde oluşuyor demektir. yanmadı ise...

* yanmadı ise devam ediyoruz şimdide bir read_adc() fonksiyonunun önüne buton kontrol kodu ekle. butona bastıktan sonra kesme içindeki led yanarsa demek ki kesme bu komuttan sonra oluşuyor demektir.

ben genelde manuel olarak bu şekilde debug yapıyorum. programda orada bir led yak, burada bir led yak derken işimi hallediyorum.
İlim ilim bilmektir, ilim kendin bilmektir, sen kendin bilmezsin, bu nice okumaktır.

makine_terbiyecisi

@tekosis hocam, çok teşekkür ederim. Dediklerinizi uygulayacağım
# ÖĞRENELİM, ÖĞRETELİM #