20 giriş ve 5 çıkış devresi

Başlatan Şahin35, 11 Nisan 2014, 12:21:41

ete

#15
Neler yaptın bilemiyorum ama. Denemek amacı ile biraz uğraştım sonunda yaptım istediğini.
İlişiktedir.
Simulasyonda özelikle ilk giriş pinlerini simule edemiyor. butunu basılı tutarken sapce tuşuna basarsan basılı konumda kalacaktır. O durumda simulasyonu kapatıp yeniden açarsan o zaman tuşu değerlendiriyor. Özellikle 8 ve 16 nolu girişleri bu şekilde denemen gerekiyor.
Devrenin değil programın kusurudur.
Ete

pozitive

Daha önce benimde böyle birşeye ihtiyacım olmuştu.

Çıkış uçlarını or kapısıyla 5. yani  EDCBA bitlerinden E ye bağlayarak sorunu çözmüştüm. sanırım sizinde işinizi çözer.

Eğer sorunu çözemediyseniz yardımcı olabilirim şahin kardeş ;)

Şahin35

Hocam aynı seylerı yapmısız.benim farkım siz gs uclarını tek tek nand kapısına vermısısız. ve 1. nolu entegredekı gs ucunu bos bırakmısısnız. ben ise gs uclarını bırlestırıp actıve hıgh yaptım datasheet de öle yazıyordu. ayrıca ben 4. ve 5. cıkısları kaskat baglantı kısmından aldım.E1 den E0 baglanan kısım var ya hocam ordan aldım.dıgerınıde aynı sekıl yaptım. böylece 5 cıkıs elde ettım.. bende aynı sorunla karsılastıp.8. ve 16 cıkısları alamadım. ben buna benzer devreyı unıversıtede kurmustum eskı notlrım baktım. ona benzer bırsey yaptım.aynı sıkıntıyı yasadıgımı ahtırladım. proteus bazen dandıklıgınden kaynaklanıyor. mantıken bakıldıgında gecıs yaparken tetık alacagı kısım bır sonrakı adımı takım ederek gelıyor.


Zaten bu proteusun dandıklıgı benım sıfrelı kılıt devremde sorun cıkardı yhaa. sımlısyasonda ara sıra alıyor bzen almıyor.bende once bread board kurdum. programı attım. sıfreyı gırınce bobın tetık alıyordu. sıfre deıgstırmek ıcın buton bastıgımda ıse bazen alıyor bazen almıyordu buda benım sınırımı bozuyordu. devreyı 50 kere kontrol ettım ama hata bulmadım. acaba buton mu dedım. yenısını taktım. daha sonra butona basınca pıce voltaj gelıyor mu onuda olctum. eet gelıyor. butona basılınca 0 volt elımı butondan cekınce 5 volt gelıyor. bundan da sıkıntı yok.daha sonra ne yapacagımı bılemedım. 100nf attım buton ucuna olmadı. butonu once pullup bagladım daha sonra pull down bagladım gene olmadı. eger ben butona bastıgımda pice voltaj gelıyor ve elımı butondan cektıgımde voltajı kesıyorsa devremde eksık yoktur. benım elımden gelen bu. daha ne yapcagımı bılemedım hocam. ? Siz ne önerisiniz bana ....

pozitive


Şahin35

Pozitive kardes saolsın halletım bende ete hocada aynı seyı yapmısısz. ben farkımı yazdım neler yaptıgımı dıye . sımdı devreyı bread boarda kurucam . ınsallah sorunla karslıasmam... ;)

pozitive

Eğer sorun yaşarsan haber ver ben yardımcı olayım.
karno haritası ile tasarlanabilecek bir sistemden bahsediyorsun sonuç olarak.


Şahin35


Şahin35

Hocam ve pozitive arkadaşım ben şekildeki devreyi delikli pertinaksa kurdum. enerji verdim. devrem cift olarak sayım yapıyor. yanı 2-4-6-8-10 gibi saymaları yapıyor.sırayla bilgiyi gönderiyorum. once sıfırncı bılgıyı gonderıyorum led yanmıyor. daha sonra 1. bılgıyı gonderıyom ledın yanması gerekıyor ve yanmıyor.2.bilgiyi gönderiyom ve led yanıyor.3. bilgiyi gönderiyom led yanmıyor.4. bilgiyi gonderıyom ve 00100 bilgisimi görüyom. böylelkikle 14 kadar devam edıyor. 15. bilgiyi gönderiyom led yanmıyor. 16. bilgiyi gönderiyom led yanmıyor. 17. -18. bilgiyi gönderiyom 11000 seklınde led  yanıyor.19.ve 20 bilgiyi gönderiyom ledler 11010 bilgisini veriyom devre sapıtıyor.
Yapılan işlemler;
1) entegreleri değistirdim. sorun aynen devam etti.
2) 7404 entegresı kaldırıdım o sekıl denemdım sorun gene devam etti
3) 74148 bacaklarına dırek sase uyguladım sorun gene devam ettı.
4) hatları kontol ettım besleme kontrol ettım .Devrenın hıcbr yerınde eksık yok ama sorun aynı sekıl devam etti ..

baska neler yapmalıyım hocam. aklıma gelen seylerı hepsını yaptım sorun aynı. devreyı de yukluyorum hocam. bi bakarsanız sevınırım.

ete

Butonlar pullup da bekleyecek, butona basılınca LOW verecek.
Buton kontaklarına 100nf kondansatör bağla.
Başkada yapacak bir şey yok maalesef.

Ete

onurinci

yıllar evvel bende böyle bir devre yapmış idim Adder CD4008 ile sonucu topluyordum,rakamlar sanki random davranıyordu.hocama sordum kötü button yada kötü kontak dedi literatürde (Bounce) diye geçiyordu.düzeltme teknikleri vardı adı Clik bounce eliminatör diye geçiyordu.butonların NO,NC olup bir FF kapısını tetikleyip sonucu entegreye
bağlamak gerekiyordu.hocam 16 girişim var her birine bunumu yapacam dedim kocaman bir devre olmuştu.sonra hoca acıdı iki adet nand kapısından 1Hz'lik osilatör yap gerekirse iki adet schmit trigger kapısından geçir bu 1 Hz tüm butonların şaseye giden ucunu ayır bu ortak noktada birleşrtir dedi.devreme bağladım kusursuz çalıştı baba bir not almıştım.birde tecrübelerime dayanarak söylüyorum.ortada anten gibi uzun teller olmayacak,her entegrenin dibine en kısadan Vcc ve Vss arasına 100NF kapasite atman gerekiyor.
şimdi sana gelince şahin mikro işlemci yardımı almadın,bu pekala bir 16F877 ile yapılabilirdi basit bir şey olsun dedin komplex bir şey oldu .Allah kolaylık versin.

Şahin35

hocam buton yok orda sensorler olucak ... sensor bılgısı 1 geldıgınde ınvert cıkısı terlsyıp sıfır gondercek. ve 74148 de cıkıs bılgısı alıcam.. baska ne yaparım dıye dusundum bılemedım.sızınde aklınıza bırsey gelmedı hocam.bakalım nerden ne cıkacak ??

Şahin35

pozitive ve ete hocam ben devreyı board kurdum . 0-15 arası calısmayı sagladım. bilgileri girdikce istediğim bilgiyi cıkıstan alabılıyorum.Söyle bır sıkıntı cıktı ortaya; ben 16. bilgiyi gönderdiğimde bana 24 bılgısıni , 17. bilgiyi gönderdiğimde 25 bilgisini, 18. bilgiyi gönderdiğimde  26 bilgisini , 19. bilgiyi gödnerdiğimde 27 bilgisini , 20. bilgiyi gönderdiğimde 28 bilgiyi gönderiyor. 16dahıl atlama var orayı pas gecıyor ve 24 den baslıyor. ne yapmam gerekir ?

ete

#27
Bir tasarım kusurun olsa gerek. Varyasyonları denemen gerekiyor. En son kullandığın şemayı buraya koymamışsın.
Koysaydın belki üzerinde çalışabilirdik.

Bu sistemin ilk girişleri atlama gibi bir hastalığı var ancak sanırım ben bunu halletmiştim. Şimdi nasıl hallettiğimi hatırlamıyorum.
Akşam evden bakar gerekirse yollarım.

Ete

Edit. Sonradan hatırladım nasıl olduğunu ve ilişikte devreyi eski yolladığım üzerinden düzelterek yeniden veriyorum.

Şahin35

Hocam bu sfer devreyi direkt bread board kurdum ısıde cızmedım. bazen benı sasırtıyor. orda sorunsuz calsıyor ama reelde kurdugumda sorunlar cıkıyor ve cozmeye calsıyorum. o yuzden bu sfer devrem board kurulu. ben size board yaptıgım asamaları basamak basamak anlatıyım hocam .
1)devremde 4 adet 7404 , 3 adet 74148 ve 1 adet 74hc10 var.
2)7404 nolu entegrenın bir numaralı bacagı giriş , 2 numaralı bacagı çıkış. entegre invert olarak calsıyor. içerisinde 6 adet invert var
3) 1.  74148 nolu entegrenin bilgi girişlerini 22k lık dirençle +5V verdim. bu bacaklar 10,11,12,13,1,2,3,4 nolu bacaklar. bu bacaklarda 22k lık direncle +5V hattına verdim. 7404 entegresinin çıkıslarını ise 74148 nolu entegerinin girişlerine verdim
4) Yani ; 7404  entegrenin 2 nolu bacagı 74148 entegresini 10 nolu bacaginda, 4 nolu bacagı 74148 entegresinin 11 nolu bacagında diyerek devam ediyor.
5)7404 entegresinin 1,3,5,9,11,13 nolu bacakları giris olarak yaptım. oradan bılgı gırdıkce ledlerden göz<lemlıyorum. 5 bilgisini girdim. Led lerde 00101 bilgisini görüyorumm gibi.
6)74148 entegresinin 15 nolu bacagını şaseye verdim. 5 numaralı bacagını ise ikinci 74148 entegresinin 15 nolu bacagına verdim.
7) Ayni işemi 2.  74148 entegresinde de yaptım.7404 baglantısı gibi.2. 7404 entegresinin 1,3,5,9,11,13 nolu bacakalrı giris olarak yaptım.aynı sekılde bılgı gırdıkce ledlerden gözlemlıyorum. 10 bilgisini giriyorum.Ledde 01010 bilgisini göruyorum.
8)2.   74148  entegresini 5 nolu bacagını 3.  74148 entegrenin 15 nolu bacagına bagladım. bu şekilde kaskat baglama gerceklesmis oldu.
9)3.   74148 entegresinin 5 nolu bacagını ise saseye verdim. 2. ve  3.  74148 entegrelerinede 22k lık dırencle +5v verdim bu sekıl devreyi tamamladık.
10)Daha sonra 74148 ın A0 larını bırlestırıp. 74hc10 entegresine giriş yaptım. cıkısınada led bagladım.aynı işlemi A1 ve A2 uclarını bırlestırıp 74 hc10 entegresinin giris yaptım. ve cıkısına led bagladım. böylelıkle    A0 , A1 , A2 cıkıslarını elde ettım.
11) Kaskat baglama yaptıgım noktalarda ise bir kablo cekerek oraya led bagladım . boylelıkle A3 , A4 cıkıslarınıda hallettım.Yani ; 1.  74148 entegresinin 5 nolu bacagını i  2.  74148 engresinin 15 nolu bacagına bagladım. ve orası benım A3 çıkısım oldu. aynı ıslemı diğeri için yaptım ve orasıda benim A4 cıkısım oldu.
12) böylelıkle 5 cıkısı elde etmıs oldum. 74148  entegrelernin 14 nolu bacagını hıc bır yere bagladım.çünkü hiçbir değısılık olmadı. saseye bagladım birsey degısmedı. +5v verdim gene birsey degısmedı.Sorun aynı sekıl devam edıyor.
!3) umarım hocam size yazdılarımla devreyi kafanızda canlandırmıs olmussunuzdur. bütün baglantı sekıllerını ve yapılan işlemleri basamak basamak yazdım.Sizden akşam haber beklıcem artık hocam ...

ete

74148 in 15 nolu bacağını GND ye bağlayamazsın. O bacak çıkış bacağıdır. HIGH çıkardığı zaman sende GND ye bağladığın için kısadevre olur ve sistem sapıtır yada entegre bozulur.. Şaseye bağlayabileceğin yegane bacak E1 yani 5 Nolu pindir.
Bir defa bunu düzelt. Bu kadar açıklamaytı okuyupda aklımda bir fikir oluşması neredeyse imkansız. Bu kadar şeyden bir tek 6 nolu maddede verdiğin yukarıdaki olayın yanlış olduğunu anladım o kadar. Bir şema herşeyi açıklardı. Bu şekilde bir şey canlandırmak mümkün değil maalesef. Verdiğim şemada her şey çalışıyor. Hala kendi şemanda ısrar ediyorsan uğraş belki doğru yolu bulursun.

Ete


Powered by EzPortal