Bir girişe birden fazla buton

Başlatan murat.mb1453@gmail.com, 14 Mart 2017, 21:39:08

murat.mb1453@gmail.com

Selamun aleykum hocalarım ;
Pic c ile Bir şeyler yapma pesindeyim lise den sonra uğraşa ara vermiştim simdi hatırladığım sınırlı bilgi ile bir sorunum var düşünmekten denemekten araştırmaktan yıldım sizlere danışayım dedim
Bir proje yapmak istiyorum depo ve bağlantı kontrolü
6 adet kanalım var 10 ihtimalim var
1ci kanalım için 10 ihtimal
2 ci kanal için 9 ihtimal
3 kanal için 8 ihtimal... Bu şekilde devam ediyor
Benim aklımdaki düşünce
10 butonu birbirine paralel bağlayıp ( bunlara 1 ci kanal grubu deyip) bir girişe tanımlamak
Ornegin 5 ci butona basılmış ise  terminale 1ci kanal 5 ci depo bilgisini yazdırmak
Butonları nasıl tanımlayacağım konusunda define ile 1 buton tanımlıyor terminale o butona basınca a karakterini if sorgusu ile yapıyorum ama isime yaramıyor
1 girişe 10 buton tanımlayıp hangisine bastigimi bilmesi ve terminale aktarmam gerek ve sıkıntım nasıl tanımlayacağımı veya nasıl bir yol izleyebilirim şimdiden saygı ve teşekkürlerimi sunarım

vitruvius

Analog veri okuyabileceğiniz bir pin'e birden fazla butonu, butonlara basıldığında değişik gerilim düşürecek şekilde bir devre kurarak bağlayabilirsiniz.

Burada kabul edilen cevaba, ve cevapta verilen linklere bakarsanız halledersiniz diye düşünüyorum.

mert3162

Alıntı yapılan: vitruvius - 14 Mart 2017, 22:40:18
Analog veri okuyabileceğiniz bir pin'e birden fazla butonu, butonlara basıldığında değişik gerilim düşürecek şekilde bir devre kurarak bağlayabilirsiniz.

Burada kabul edilen cevaba, ve cevapta verilen linklere bakarsanız halledersiniz diye düşünüyorum.
Hatta bu sistem bir çok oyuncakta ve eski tüplü tvlerin önündeki kanal ses değiştirme ve program arama gibi işlemler böyle hallediliyordu.Tamda bu şekilde çok kolaylıkla yapabilirsiniz.
|^^^^^^^^^^^^\ ||\
|__PICPROJE.ORG __
||'""|""\___
| _____________ l | |__|__|___| )
(@!)!(@)"""""**|(@) (@)****|(@)---------

 Üstadlarım nonstradam & Logan

mehmet

Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr
https://creativecommons.org/licenses/by/4.0/deed.tr "CC BY"

murat.mb1453@gmail.com

#4
Vitruvius - mehmet - mert hocam cvp için sagolun cvplardan anladığım kadarıyla adc girişe 1023 buton bağlarız
elimde 7 kanal 10 depo var hayvan yemi olarak düşününüzseniz ve 10 makina var işlemi 10 ayrı yer için( her makina için 7 kanal 10 depo) yapmam gerek
Adc ne kadar sağlıklı çalışır bilmiyorum birde kafam baya karışık bu bağıntıları doğrulayıp terminale ordan mysql veri tabanına çekip php tabanlı bir template de yayınlamak
Takıldıgım kısım pic kısmı
İsin mantığını biraz daha açsanız anlayabilmem için
Birbirine paralel 10 butonu isimlendirip değişken olarak bir inputa versek bu butonları isimlendirsek x isimli butona basılmış ise terminale su bilgiyi  yaz filan butona basılmış ise terminale su bilgiyi yaz desek mümkün mü
Eğer mümkün ise butonları nasıl tanıtmamız gerek hangi döngü ile yapabiliriz

Murat Mert

#5
S.A.
Matrix bağlantı gibi bir şey mi düşünüyorsun? Mesafen uzun ise 485 ve 12f serisi ile butonları adreslendir 4 kablo gezdirerek işi bitir. İkisi besleme  ikisi de haberleşme ucu. Uzun mesafede analogları kalibre etmen gerekebilir. Yok böyle bir şey uzun iş diyorsan keypad işine bak ama her butona ayrı ayrı kablo çekmen gerekir. Yok depolar aynı istikamette işi 2 kablo ile halledeyim dersen de analog olarak yap. Analog buton kartı yap her kartına 8 dip swich koy 8 adres için (aslında 4lü dip swich ile 16 binary olarak analog bile kodlarsın karıştırma diye) swichlerin karşılarına değişik değerde dirençler açtığın kanalda dirence karşılık gelen değerde analog veriye göre işlem yaparsın.
mert07

yesilu

butonlar arasına seri 10k dirençler konup her butonda farklı gerilim elde edip analog girişten okutmak en iyi çözüm. cd4017 entegresiyle butonları taratmak yoluyla da yapılır.

yesilu

http://www.edn.com/design/components-and-packaging/4408027/Read-10-or-more-switches-using-only-two-I-O-pins-of-a-microcontroller 4017 clock sinyali de istiyor , mcu nun 2 pinini şgal eder. 1 pinle buton direncinden etkilenmeyecek uzun ömürlü birşey yapmak zor gibi. direnç-buton sistemiyle bir 555 in frekansını değiştirip bu frekansı okutmak aklıma geldi ama yine butonların koşullarından etkilenecek, çözüm değil.

mehmet

Mesafe uzadıkça sorunlar artar. Bu nedenler sistemi
bir kaç parçaya ayırın. Mesela PCF8574 ve 12F822 ile
ana siteme RS-485 ile bilgi yollarsınız.
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr
https://creativecommons.org/licenses/by/4.0/deed.tr "CC BY"

ibra

A_C5h5n5

murat.mb1453@gmail.com

#10
Her bir yorum yazan ustama tesekkur ediyorum sonuç olarak genel fikir adc ile yapmak buton kullanmak yerine kanal ve depo bağlantılarında audio cak kullanacam bu butona sürekli basıyormuşum gibi olacak bu sıkıntı yaratırmı birde
Muhtemelen 10 adet makina kontrol edecem diye 12f serisinden 3 tane yada 16f serisi kullanırsam  2 tane kullanacam bunları ortak bunların programını devrelerini bir yerde yapabilirmiyiz tek max 232 mi kullanmam gerek veya ayrı devreler 2 tane max 232 kullanmam gerek