pic16f628 le pot değerini okuma

Katılım
12 Mar 2008
Mesajlar
70
Puanları
1
Yaş
39
pic16f628 le pot değerini okumak istiyorum ben bunu bir açı ölçer yapmak isityorum lcd ile dijital bi açı ölçer yalnız pot dan 5 volt vericem pic den değeri okumak isitoyrum ama bir türlü şu programı basic dilinde yazamadım lütfen yardım edin şimdiden teşekkürler.
 
16f628 de analog comparator vardır, ADC yoktur. Yani potlarla açı ölçümünü 16f628'e yaptıramazsınız.
 
selamlar,

giriş-çıkış olabilen herhangi bir porta bir pot ve kondansatör bağlayarak, "pot" komutuyla değeri okuyabilirsiniz,


kullanımı:

POT porta.0,255,x ; x = değerinin kaydedileceği değişken

;255 = scale değeri

scale değeri deneysel olarak bulunur, bunun için:
pot maksimum direnç oluşturacak şekilde ayarlanır
scale 127 kullanılarak derlenmiş program kullanılarak pot değeri okunur ve okunan değer olarak 254 yakalanmaya çalışılır.
dönen değer <=253 olursa, scale değeri arttırılır, 255 dönerse düşürülür.
 
ya hocam tam olaraak anlamadım ben bu scala işini bi örnek veririmisin rica etsem?
 
pot komutunun kullanımıyla ilgili örnek basit, mesajımda var zaten, scale değerinin kalibre edilmesini de tarif ettim, programda takıldığınız yerde yardımcı olurum ama önce çalışmanızı görmek gerek.

Neden scale değerini ayarlamamız gerekiyor? çünki pot komutunu işlendiğinde pin önce çıkış oluyor ve kondansatörü şarj ediyor, sonra giriş olup kondansatörün deşarj süresini değerlendirerek potun hesaplanan direncini 0-255 arasında bir değer döndürecek şekilde değerlendiriliyor. R-c sabitleri kullanılan elemanlara vs. göre farklı olacağı için scale değeri kalibre edilmek durumunda.

Bu komutla pot değeri ölçümü adc ile yapılan kadar hassas olmayacaktır,küçük yanılmaları kabul edemeyecek bir devre olacaksa 16f818 - 819 ya da 877 gibi adc modülleri olan bir pic kullansanız daha iyi olur.
 
hocam tamamda ben programda nasıl yazıcağımı bilmiyorum
 
Bu programınızın genel işleyişine ve kullandığınız pota göre değişir. Ezbere yanıt vermek mümkün değil.
Açısını ölçeceğiniz kol vs herneyse pot'a tutturduğunuzda, pot en solda iken 0 değeri döndürür, örneğin 135 derecelik bir pot kullandıysanız, pot komutu 255 değeri döndürdüğünde kolun açısı 135 derece sağa ilerlemiş demektir. Yani pot komutuyla saptanan değerdeki 1 rakamlık değişim 135/255 = 0,529 dereceye tekabül eder.
 
ha hocam ne olur basit bi basic programı yazarmısın veya beni duyan başka birisi de olur yazın bi basic programı ne olursa olsun farketmez yeterki ben pot daki değeri okuyabilim ben yani her potu çevirdiğimde açı yükselsin veya azalsın rica ediyorum
 
S.A.
Program proton için yazılmıştır.
Kolay gelsin


Kod:
Device 16f628 ' Secilen islemci
xtal = 4 ' dahili osilator icin config ayarlarını kullan
'------------------LCD AYARLARI------------------------
LCD_DTPIN = PORTB.0	
LCD_RSPIN = PORTB.4
LCD_ENPIN = PORTB.5
LCD_INTERFACE = 4	' 4-bit Interface
LCD_LINES = 2                   ' 2 satir LCD 
LCD_TYPE = 0
LCD_COMMANDUS = 2000
LCD_DATAUS = 50

'----------DEGISKEN AYARLARI--------------

DIM POT as BYTE

'-------------------------------------------
 
BASLA:
 VAR1 = POT PORTA.0 , 100     ' 100 yerine 255 de kullanabilirsin
 PRINT At 1,1, " POT DEGER:",Dec POT , " "         
 GOTO BASLA
 

Yeni mesajlar

Forum istatistikleri

Konular
128,824
Mesajlar
920,788
Kullanıcılar
450,912
Son üye
mustafatlanm

Yeni konular

Geri
Üst