74c922 Keypad Entegresi

Başlatan fractal, 06 Mayıs 2009, 19:31:40

fractal

arkadaşlar bu entegreyi kullanıyorum ama bunda cok sorun yaşıyorum.bu entegrenin biri diğerinden 10 kat büyük olan kondansatörlerinin değeri ne olmalı.ben bunu işlemcime bağladığımda  tuşa bir kez bastığımda menü menü ilerlemesi lazımken en son menüye pat diye geliyor.kesme ucuna 100n koydum olmadı.c1=1uf c2=10uf elektrolitik kondansatör.biris 35 volt biri 55 volt bu fark edermi.bazen tuşa bastığım halde çıkışlar değişmiyor.bazen cok sayıda kesme geliyor.menüde sıcrama oluyor.bir yardım...nasıl yapmalıyım?
Restantum cogniscutur Quantum deligutur

ayhani

Alıntı yapılan: "fractal"arkadaşlar bu entegreyi kullanıyorum ama bunda cok sorun yaşıyorum.bu entegrenin biri diğerinden 10 kat büyük olan kondansatörlerinin değeri ne olmalı.ben bunu işlemcime bağladığımda  tuşa bir kez bastığımda menü menü ilerlemesi lazımken en son menüye pat diye geliyor.kesme ucuna 100n koydum olmadı.c1=1uf c2=10uf elektrolitik kondansatör.biris 35 volt biri 55 volt bu fark edermi.bazen tuşa bastığım halde çıkışlar değişmiyor.bazen cok sayıda kesme geliyor.menüde sıcrama oluyor.bir yardım...nasıl yapmalıyım?

Hocam ben bundan 2-3 yıl önce yaptığım projeye baktım 5.numaralı uca 0,1 mikro farad, 6 numaralı uca 1 mf bağlamışım. Kondansatörlerin diğer iki ucları eksiye bağlı. O zaman projem gayet düzgün çalışmıştı.
En iyi bildiğim şey hiçbir şey bilmediğimdir.

fractal

normalde kitapda  0.1u F da 1u F diyorlar ama 1 uf eleklorolit oluyor sanırım seninkilerde elektrlit kondansatör.ben 10nf 100nf farad yaptım entegrenin cıkışları değişiyor.DA yani kesmenin meydana geleceği uçta osiloskop bağladım hiç sinyal gelmiyor...bir türlü cözemiyrum..
Restantum cogniscutur Quantum deligutur

fractal

şimdide bu DA ucu hep kesme high durumunda kalıyor.kısad evremi var acaba tuşlarda.neden böyle oluyor..
Restantum cogniscutur Quantum deligutur

mustafa_cmbz

keypad bağlantıların doğrumu değilmi onu kontrol et...

fractal

bağlantılar doğru.sanırım yine entegre bozuldu.bu entegreye harcadığım para 100tl geçti.sadece x1 ucu ile y ler çalışıyor.x2, x3 x4 çalışmıyor.bu entegre neden bu kadar cabuk bozuluyor...
Restantum cogniscutur Quantum deligutur

fractal

böyle entegremi olur.hem pahalı hemde bozulan 5.entegre.işlemci 2 tl dandik bi entegre 20 tl..
Restantum cogniscutur Quantum deligutur

M_B

Alıntı yapılan: "fractal"böyle entegremi olur.hem pahalı hemde bozulan 5.entegre.işlemci 2 tl dandik bi entegre 20 tl..

O zaman bir işlemciye 74HC922 entegresinin görevini yapan bir program
yazıp  kullanacaksın.
Hatta Forum da Logan Hocanın bir calısması var.
Kolay gelsın
M_B
İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

erhanmete

yazılımsal debaunce yapmassanız entegrede koysanız fayda etmez

dijital74

Alıntı yapılan: "erhanmete"yazılımsal debaunce yapmassanız entegrede koysanız fayda etmez

Söylediğiniz sözü biraz açabilir misiniz? "yazılımsal debaunce" sözünden kastınız nedir? Ark geciktirme fonksiyonu falan mı_?

fractal

arkadaşın dediği şey buton arkı olayı.ama bunu yazılımlada cözersin .işte cözüm.butona basıldığında if komutu ile algılanacak sonra buton arkı 15ms gecikme butondan el cekilene kadar beklenecek sonra okuduğu değeri a portonun ilk dört pinine gönderecek göndermeden önce klavye okuma ra4 pini aktif yapılacak 40ms sonra okuma pini kapatılacak.


#include "C:\Documents and Settings\teknik\Desktop\Yeni Klasör\klavyem\klavyem1.h"

unsigned int value=0;
void main()
{

  setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
 set_tris_a(0b0000);
 set_tris_b(0b00001111);
 output_a(0x00);
 output_b(0x00);

  // TODO: USER CODE!!
 
  while(1)
  {
  value=100;
 
  output_high(pin_b0);  //y1 aktif yapıldı 1satır okunacak
  if(input(pin_b4)){delay_ms(15);while(input(pin_b4));value=0;goto atla1;}  //x1 okunuyor
  if(input(pin_b5)){delay_ms(15);while(input(pin_b5));value=1;goto atla1;}  //x2 okunuyor
  if(input(pin_b6)){delay_ms(15);while(input(pin_b6));value=2;goto atla1;}  //x3 okunuyor
  if(input(pin_b7)){delay_ms(15);while(input(pin_b7));value=3;goto atla1;}  //x4 okunuyor
  output_low(pin_b0);  //y1 pasif yapıldı
 
  output_high(pin_b1);  //y2 aktif yapıldı 1satır okunacak
  if(input(pin_b4)){delay_ms(15);while(input(pin_b4));value=4;goto atla1;}  //x1 okunuyor
  if(input(pin_b5)){delay_ms(15);while(input(pin_b5));value=5;goto atla1;}  //x2 okunuyor
  if(input(pin_b6)){delay_ms(15);while(input(pin_b6));value=6;goto atla1;}  //x3 okunuyor
  if(input(pin_b7)){delay_ms(15);while(input(pin_b7));value=7;goto atla1;}  //x4 okunuyor
  output_low(pin_b1);  //y2 pasif yapıldı
 
    output_high(pin_b2);  //y3 aktif yapıldı 1satır okunacak
  if(input(pin_b4)){delay_ms(15);while(input(pin_b4));value=8;goto atla1;}  //x1 okunuyor
  if(input(pin_b5)){delay_ms(15);while(input(pin_b5));value=9;goto atla1;}  //x2 okunuyor
  if(input(pin_b6)){delay_ms(15);while(input(pin_b6));value=10;goto atla1;}  //x3 okunuyor
  if(input(pin_b7)){delay_ms(15);while(input(pin_b7));value=11;goto atla1;}  //x4 okunuyor
  output_low(pin_b2);  //y3 pasif yapıldı
 
  output_high(pin_b3);  //y4 aktif yapıldı 1satır okunacak
  if(input(pin_b4)){delay_ms(15);while(input(pin_b4));value=12;goto atla1;}  //x1 okunuyor
  if(input(pin_b5)){delay_ms(15);while(input(pin_b5));value=13;goto atla1;}  //x2 okunuyor
  if(input(pin_b6)){delay_ms(15);while(input(pin_b6));value=14;goto atla1;}  //x3 okunuyor
  if(input(pin_b7)){delay_ms(15);while(input(pin_b7));value=15;goto atla1;}  //x4 okunuyor
  output_low(pin_b3);  //y4 pasif yapıldı
 
  atla1:
     if(value!=100) {//bir tuşa basılmış ise kesme üret
                     output_high(pin_a4);
                     delay_ms(40);
                     output_a(value);
                     value=100;
                     output_low(pin_a4);
                     }  
 

 
 
  }
 

}


Restantum cogniscutur Quantum deligutur

dijital74

Şöyle birşey yapsak nasıl olur? Madem ki 74C922 entegresi bu kadar pahalı, PIC16F84 gibi bir pic ikincil olarak sadece bu işi görmek üzere programlanabilir. Seri çıkıştan doğru tuş bilgisini asıl pic'e iletebilir. Güzel olmaz mı?

muratxxx

dijital74 arkadaşım aslında projlerde muadili bulanamıyan spı ve ı2c entegrelenin yerine hep kulanıla bilir tabii ama. bu kezede parklı fazlara bi dün ya EMI gürültüsü cıkıyo.aam ,iyi ekranlamayla cözüle biliyo tabiiki.benim icime nedense hic sinmiyo picin yanına bir pic daha ama zamanla buna mahküm olucaz galiba.yani tek tip olmak gibi bişi olur bence 74922 devam edelim:D bende en kısa zamanda bi calışma yapacambu konuda.Aherkese kolay gelsin
(Rigol DS 1102E)-(UNI-T UT804)-(Unisource c3100)-(Unisource 8110)-(Unisource P-3625T)-(TT T-ECHNI-C VC2002)-(LAP32128U-A)