Kablo pin testi

O butonlar arduinonun kendi çıkışlarına tanımlı

Dediğiniz işlemi yapıp dönüyorum
 
Bu butonlar keypad üzerinde mi?
Keypadin hangi butonları bu görevi görüyor?
Benim kodda gördüğüm kadarıyla sadece # tuşu tanımlı. Onun da içinde hem buton ileri var hemde buton geri var. Ayrıca orada iki tane while döndüsü var ama ne işe yaradığı belli değil. Koşul belirtilmiş ama her hangi bir işlem yapmıyor.

Olayı basite indirgemek için aşağıdaki fonksiyonları ve o fonksiyonları çağırdığın kısımları komple sil. # tuşuna basıldığında yapılacak işlemler kısmına
Kod:
int sayi = 1234;
Serial.print(sayi);
Yaz ve # tuşuna her bastığın da Serial monitörden 1234 rakamını okuyabiliyor musun kontrol et. Bu çalıştığında bir sonraki adıma geçebiliriz.



merhaba

dediğinizi uyguladım serial monitörde # tuşuna bastığımda çıkan birşey olmadı



1615036594951.png
1615036594951.png
 
bütün tuşları da denedim şimdi ekranda rakamlar değişiyor fakat monitöre yazdırmıyor
Void setup kısmında Serial.begin(115200); var mı? Yoksa ekle, varsa serial monitörün sağ altında baud yazar. Orasıda 115200 seçili olmalı.
Bunları kontrol et. Hala birşey yazmıyorsa lcd ye yazdırmayı deneyelim.
 
Void setup kısmında Serial.begin(115200); var mı? Yoksa ekle, varsa serial monitörün sağ altında baud yazar. Orasıda 115200 seçili olmalı.
Bunları kontrol et. Hala birşey yazmıyorsa lcd ye yazdırmayı deneyelim.


şimdi yazdı monitöre

5. tustan sonra basılanların hepsi monitörde yazı yazdırıyor

ekran görüntüsünde ki yazılanlar # tuşuna basınca çıkan yazılar


1615037683750.png
 
şimdi yazdı monitöre

5. tustan sonra basılanların hepsi monitörde yazı yazdırıyor

ekran görüntüsünde ki yazılanlar # tuşuna basınca çıkan yazılar


8629 eklentisine bak
Tuş kombinasyonu da hata var.
Şuan Sadece resimde kırmızı ile çizdiğim if içine giriyor.
Yeşil ile çizdiğim yerde tuşlar belirtilmiş. Oradaki kombinasyonu değiştirerek doğru kombinasyonu bulmak lazım.
Öncelikle o yeşil alanı 123A456B789C*0#D olacak şekilde değiştirip dene.
20210306_164336.png
 
Tuş kombinasyonu da hata var.
Şuan Sadece resimde kırmızı ile çizdiğim if içine giriyor.
Yeşil ile çizdiğim yerde tuşlar belirtilmiş. Oradaki kombinasyonu değiştirerek doğru kombinasyonu bulmak lazım.
Öncelikle o yeşil alanı 123A456B789C*0#D olacak şekilde değiştirip dene.
8630 eklentisine bak





dediğiniz değişikliği yaptım
5. tustan sonra immonitorde yazı yazmaya başladı
# tuşuna basınca resimdeki ifadeleri yazdı yine


1615039173987.png
 
Aşağıdaki linkteki videoyu izle ve konunun o mesajdan aşağısına oku. Orada i2C scanner diye bir uygulama var. Onu kullanarak keypadin kodunu tespit etmeyi dene. 0x20 gibi bir kod türetecek. O kodu en yukarıdada keypad ayarı olarak gireceksin. Şu anda 0x20 yazıyor o ayarda. Yeni bulduğun kod. Farklı ise değiştireceksin.
 
Aşağıdaki linkteki videoyu izle ve konunun o mesajdan aşağısına oku. Orada i2C scanner diye bir uygulama var. Onu kullanarak keypadin kodunu tespit etmeyi dene. 0x20 gibi bir kod türetecek. O kodu en yukarıdada keypad ayarı olarak gireceksin. Şu anda 0x20 yazıyor o ayarda. Yeni bulduğun kod. Farklı ise değiştireceksin.


merhaba

dediğinizi uyguladım 0x20 çıkıyor



1615042371681.png
 
merhaba

dediğinizi uyguladım 0x20 çıkıyor



8632 eklentisine bak
Tamam o zaman tuş kombinasyonu da sorun var.
Sen mesela keypad de 5 ten sonrası çalışıyor diyorsun ya. Onun sebebi 5'e kadar olan sayıların *#ABD ye tanımlı olmaları. Sen bu tuşları tanımlamadığın için sana çalışmıyor gibi geliyor.

Şimdi yapman gereken bu tuşları aynı # deki gibi tanımlamak. Mesela karede nasıldı? else if(idx == #) bu şekilde tanımlıydı.
Altına aynen bu şekilde * A B C D tuşlarını da tanımla. Her birinin içine de serial monitöre yazı yazacak şekilde bir çıktı yaz.
Mesela D harfi için ekrana D yazdırmak istedin. Sen keypad den D harfine bastığın da ekrana C yazıyorsa yukarıda 123A456B789C*0#D tanımladığımız yerdeki D harfini silip yerine C yazacaksın. Ve artık Sadece C ye bastığında ekrana C yazacak. Tüm bu kontrolleri her tuş için tek tek yapmalısın.
Umarım doğru anlatmışımdır. Yazarken beynim yandı :katil2:
 
Tamam o zaman tuş kombinasyonu da sorun var.
Sen mesela keypad de 5 ten sonrası çalışıyor diyorsun ya. Onun sebebi 5'e kadar olan sayıların *#ABD ye tanımlı olmaları. Sen bu tuşları tanımlamadığın için sana çalışmıyor gibi geliyor.

Şimdi yapman gereken bu tuşları aynı # deki gibi tanımlamak. Mesela karede nasıldı? else if(idx == #) bu şekilde tanımlıydı.
Altına aynen bu şekilde * A B C D tuşlarını da tanımla. Her birinin içine de serial monitöre yazı yazacak şekilde bir çıktı yaz.
Mesela D harfi için ekrana D yazdırmak istedin. Sen keypad den D harfine bastığın da ekrana C yazıyorsa yukarıda 123A456B789C*0#D tanımladığımız yerdeki D harfini silip yerine C yazacaksın. Ve artık Sadece C ye bastığında ekrana C yazacak. Tüm bu kontrolleri her tuş için tek tek yapmalısın.
Umarım doğru anlatmışımdır. Yazarken beynim yandı :katil2:




I2C de ki keypad bağlantısını değiştirerek birşeyler meydana çıktı.
1 den 9 a kadar bastığımda monitörde saçma rakamlar yazıyor
0 bastığımda 0 yazıyor
# bastığımda 1234 yazıyor
abcd ve * bastığımda ise tepki vermiyor
 
I2C de ki keypad bağlantısını değiştirerek birşeyler meydana çıktı.
1 den 9 a kadar bastığımda monitörde saçma rakamlar yazıyor
0 bastığımda 0 yazıyor
# bastığımda 1234 yazıyor
abcd ve * bastığımda ise tepki vermiyor
Yanlış bir şey yapmışsın. Eski haline al. Benim yukarıda yazdığımı adım adım yap.
 
Yanlış bir şey yapmışsın. Eski haline al. Benim yukarıda yazdığımı adım adım yap.

Dediğiniz şekilde yaptım ama olmadı baştan
Sonra keyped bağlantısıni resimde ki gibi yaptım dediğiniz şekilde A B C D X ve # tuşlarına tanımlamaları yaptım monitörden tanimladigum rakamları gördüm
IMG_20210306_223207.jpg
 
Dediğiniz şekilde yaptım ama olmadı baştan
Sonra keyped bağlantısıni resimde ki gibi yaptım dediğiniz şekilde A B C D X ve # tuşlarına tanımlamaları yaptım monitörden tanimladigum rakamları gördüm8634 eklentisine bak
Sonuç olarak şuan tüm tuşlar istediğin gibi çalışıyor mu?
 
Evet ama 0 a hiç bişey yapmadan 0 çıkıyor
Basmadan çıkıyorsa keypad sorunudur. Ama her hangi bir düzeltme yapmadan direk sıfıra basınca sıfır çıkıyorsa "oynadı güldü, yerini buldu" diyebiliriz.

Rakamları şöyle test edebilirsin;
# tuşunu Enter gibi yapılandır. Yani rakamı girip # ye basınca serial monitöre girdiğin rakamı yazdırsın. Onun için de, oradaki ilk if'in içinde rakam toplama yapar ve "toplam" değişkenine aktarır. Mesela 1'e basınca toplam değişkenine 1 aktarır, peşinden 2' ye basarsan toplam değişkenine 12 aktarmış olursun. Taki sen Toplam = 0; yapana kadar aktarır durur. Şimdi # ifinin içine
Kod:
Serial.print(toplam) ;
toplam = 0;
Yaz. toplam değişkenin adına dikkat et. Büyün - küçük harf duyarlıdır. Ben ezbere yazıyorum. Sen oradaki in aynısını yaz. Bunu yaptıktan sonra keypad den 1 e bas ve peşinden # ye bas. Böylece serial monitör de 1 rakamını görmen gerekir. Her rakam girip # ye bastığında girdiğin rakamı serial monitörde okumalısın. Rakamları da bu şekilde test et. Eğer 1'e basıp, monitörde 2 okuyorsan yukarıdaki kodlama da 1 yazan yere 2 yazarak düzelt.
 
Basmadan çıkıyorsa keypad sorunudur. Ama her hangi bir düzeltme yapmadan direk sıfıra basınca sıfır çıkıyorsa "oynadı güldü, yerini buldu" diyebiliriz.

Rakamları şöyle test edebilirsin;
# tuşunu Enter gibi yapılandır. Yani rakamı girip # ye basınca serial monitöre girdiğin rakamı yazdırsın. Onun için de, oradaki ilk if'in içinde rakam toplama yapar ve "toplam" değişkenine aktarır. Mesela 1'e basınca toplam değişkenine 1 aktarır, peşinden 2' ye basarsan toplam değişkenine 12 aktarmış olursun. Taki sen Toplam = 0; yapana kadar aktarır durur. Şimdi # ifinin içine
Kod:
Serial.print(toplam) ;
toplam = 0;
Yaz. toplam değişkenin adına dikkat et. Büyün - küçük harf duyarlıdır. Ben ezbere yazıyorum. Sen oradaki in aynısını yaz. Bunu yaptıktan sonra keypad den 1 e bas ve peşinden # ye bas. Böylece serial monitör de 1 rakamını görmen gerekir. Her rakam girip # ye bastığında girdiğin rakamı serial monitörde okumalısın. Rakamları da bu şekilde test et. Eğer 1'e basıp, monitörde 2 okuyorsan yukarıdaki kodlama da 1 yazan yere 2 yazarak düzelt.



Bende birşeyler yanlış oldu yine :)




1615124113284.png
 

Forum istatistikleri

Konular
5,880
Mesajlar
100,271
Üyeler
2,491
Son üye
djkop

Son kaynaklar

Son profil mesajları

gruptaki arkadaşlara selamlar. sıteyi bu gün fark ettim. Asansör için 2x7 segment LCD gösterge üretmek istiyorum. acaba bu sayfadaki arkadaşlardan destek alabilirmiyim. LCD nin mantık açılımı ektedir.
deneyci wrote on TA3UIS's profile.
Selam.
Amatör telsiz lisansı nasıl alınıyor?
Lisansı olmayanı forumlarına almıyorlar. :)
Bilgi alamıyoruz.
cemalettin keçeci wrote on HaydarBaris's profile.
barış kardeşim bende bu sene akıllı denizaltı projesine girdim ve sensörleri arastırıyorum tam olarak hangi sensör ve markaları kullandınız yardımcı olabilir misin?
m.white wrote on Altair's profile.
İyi akşamlar.Arabanız ne marka ve sorunu nedir.Ben araba tamircisi değilim ama tamirden anlarım.
* En mühim ve feyizli vazifelerimiz millî eğitim işleridir. Millî eğitim işlerinde mutlaka muzaffer olmak lâzımdır. Bir milletin hakikî kurtuluşu ancak bu suretle olur. (1922)
Back
Top