adc okuma referans alma yöntemi dijital filtre
adc okuma dijital filtre |
Bir işlemcinin adc pinlerinden okuma yaparken 1 ölçüm yerine 15-20 ölçüm alıp ortadaki değerleri değerlendirmek daha doğru sonuçlar almamızı sağlayacaktır. Etepic forumunda rast geldiğim adc okuma yöntemi basic formunda ama diğer dillere de çevrilebilir. Önemli olan mantığı kavramak. Ete hoca yine püf noktaları anlatmış.
Örnekler aşağıdadır:
PIC BASIC PRO ÖRNEĞİ:
HAM VAR WORD
TOPLAM VAR WORD
OKUNAN VAR WORD[20]
TEMP VAR WORD
I VAR BYTE
PAUSE 200
BASLA:
FOR I=0 TO 19
ADCIN 0,HAM
OKUNAN[I]=HAM
PAUSEUS 10
NEXT
TOPLAM=0
FOR I=7 TO 12
TEMP=OKUNAN[I]
TOPLAM=TOPLAM+TEMP
NEXT
HAM=TOPLAM/6
PROTON BASİC ÖRNEĞİ:
Dim VAR1 As Word
Dim I1 As Word
Dim OK1 As Word
Dim TO1 As Word
Dim TEMP1 As Word
For I1 = 0 To 19
VAR1 = ADIn 0
VAR1 = OK1[I1]
DelayUS 10
Next
TO1 = 0
For I1 = 7 To 12
TEMP1 = OK1[I1]
TO1 = TO1 + TEMP1
Next
VAR1 = TO1 / 6
OKUNAN VAR WORD[15] 'parentez içinde kaç adet dizideğişkeni ihtiyacımız var ise o rakamı yazıyoruz . 15 adet okuma yapacağımız için değişken adedimiz 15 olacaktır. Ama sıralamada sıfır dahil olduğu için 0-14 arasını kullanacağız.
TEMP VAR WORD
TOPLAM VAR WORD
HAM VAR WORD
X VAR BYTE
Y VAR BYTE
Program başladıktan sonra önce 15 adet ADC okumasını yapıp okuma değerlerini dizi değişkenine aktaracağız.
FOR X=0 to 14
ADCIN 0, HAM
OKUNAN[X]=HAM+1
PAUSEUS 100
NEXT
Buraya kadar 15 adet değişkenimizde okunan adc değerleri rastgele yerleşmiş oldu.
Şimdi bunları bir sıraya dizmemiz gerekiyor. Bubble Sort yöntemini kullanacağız.
FOR X=0 to 13
FOR Y=(X+1) TO 14
IF OKUNAN[X]>OKUNAN[Y] THEN
TEMP=OKUNAN[X]
OKUNAN[X]=OKUNAN[Y]
OKUNAN[Y]=TEMP
ENDIF
NEXT
NEXT
Buraya kadar dizi değerlerini küçükten büyüğe doğru sıraya dizmiş olduk.
Şimdi ortadan 5 elemanı alıp ortalamasını alacağız.
TOPLAM=0
FOR X=5 TO 9
TOPLAM=TOPLAM+OKUNAN[X]
NEXT
TEMP=TOPLAM/5
İşte sonunda ortada yer alan 5 elemanın ortalamasını alıp TEMP değişkenine yerleştirmiş olduk.
Yanlış yapılmaması için bu kod parçasında kullanılan diğer değişkenleride olması gerektiği gibi tanımladım.
Umarım anlaşılmıştır.
Kaynak etepic.com
Yorumlar
Yorum Gönder