HUGO Nasıl Çalışıyordu? Evde Yapabilir Miyiz?
Hemen cevap vereyim, EVET! Tabii ki yapabiliriz 🙂 Üstelik kolay ve ucuz^^ bir proje olur bizim için. Efendim bu videoda, çocukluğumun süper kahramanı olan uğruna telefon faturaları kabarttığım ve bu yüzden ailemden azar yediğim HUGO’nun ev telefonları ile nasıl kontrol edildiğini inceliyor, sonra da aynı metotla çalışan basit bir devresini yapıyoruz.
İyi seyirler 🙂
Eğer siz de aynı projeyi yapmak isterseniz bu yazıyı okumaya devam edebilirsiniz. Kolay gelsin 🙂
MALZEMELER
Bu projeyi yapmak için gerekli olan malzemeler şöyle:
%5 indirim kuponu: LRTDTMF5
(08.12.2021’e kadar Robo90 sitesinde kullanabilirsiniz.)
- Leonardo / Pro Micro
- MT8870 DTMF modülü
- Breadboard
- Jumper Kablolar
- AUX Kablosu
- Micro USB Kablosu
- DTMF çıkışı/girişi destekleyen bir cep telefonu
Tüm malzemeleri hazırladıktan sonra aşağıdaki devre şeması ve kodu kullanarak projeyi sizde gerçekleştirebilirsiniz.
Eğer ilk Arduino projeniz bu proje ise Arduino Nasıl İndirilir konusuna bir göz atın.
DEVRE ŞEMASI
KODUN İNCELENMESİ
İlk olarak kütüphanelerimizi ve çalışmaları için gerekli kodları yazıyoruz.
#define stD_PIN 8 // stD Port,
#define D0_PIN 4 // Binary Data Port 0
#define D1_PIN 5 // Binary Data Port 1
#define D2_PIN 6 // Binary Data Port 2
#define D3_PIN 7 // Binary Data Port 3
byte stD_state;
#include <Keyboard.h>
void setup()
{
//Serial.begin(9600);
pinMode(stD_PIN, INPUT);
pinMode(D0_PIN, INPUT);
pinMode(D1_PIN, INPUT);
pinMode(D2_PIN, INPUT);
pinMode(D3_PIN, INPUT);
Keyboard.begin();
}
void loop()
{
stD_state = digitalRead(stD_PIN);
if (stD_state == 1)
{
//Serial.print("Key : ");
char key = read_code();
//Serial.println(key);
delay(10);
if (key == '2')
{
Keyboard.press(KEY_UP_ARROW);
delay(10);
Keyboard.releaseAll();
}
else if (key == '4')
{
Keyboard.press(KEY_LEFT_ARROW);
delay(10);
Keyboard.releaseAll();
}
else if (key == '6')
{
Keyboard.press(KEY_RIGHT_ARROW);
delay(10);
Keyboard.releaseAll();
}
else if (key == '8')
{
Keyboard.press(KEY_UP_ARROW);
delay(10);
Keyboard.releaseAll();
}
}
}
/*-------------------------------------------------------------*/
byte read_code()
{
byte data;
char key;
byte D0, D1, D2, D3;
D0 = digitalRead(D0_PIN);
D1 = digitalRead(D1_PIN);
D2 = digitalRead(D2_PIN);
D3 = digitalRead(D3_PIN);
bitWrite(data, 0, D0);
bitWrite(data, 1, D1);
bitWrite(data, 2, D2);
bitWrite(data, 3, D3);
//if (data == 1) key = '1';
if (data == 2) key = '2';
//if (data == 3) key = '3';
else if (data == 4) key = '4';
//if (data == 5) key = '5';
else if (data == 6) key = '6';
//if (data == 7) key = '7';
else if (data == 8) key = '8';
//if (data == 9) key = '9';
//if (data == 10) key = '0';
//if (data == 11) key = '*';
//if (data == 12) key = '#';
return key;
}
7 Yorum
Bir yanıt yazın Yanıtı iptal et
Daha fazla sonuç göster
merhaba ben 11 yaşımdayım ve kod alanın da çok fazla bir bilgim yok ama bu koda şöyle bir değişiklik yaparsam
ne olur
en alt satırlardaki buton tanımları yerine mesela “if (data == 2) key = ‘servom.write(90)’ dersem kodum çalışırmı
Hugo oyununu nereden indirebilirzi bulamadım yardımcı olurssanız sevinirim?
Link paylaşır mısınız?
Hugo türkiye Fan topluluğuna nereden ulaşırım videoda bahsettiğiniz.
Peki günün sorusu?
– Hugoyu nereden ve nasıl indirebiliriz?
Teşekkürler.
Selamlar, buraya çok bakan olur mu bilmiyorum ama bir iki görüş paylaşmak istiyordum.
Özellikle videoda “Direkt USB device olarak algılandığı için” pro Micro denmiş. Ben bunu “eee nolucak mega da nano da USB device olarak görülüyor, no sıkıntı” şeklinde yorumlamıştım. Olay öyle değilmiş 🙂 Meğer pro micro, leonardo gibi birkaç model, tam bir usb aygıtı olarak aygılandığı için, herhangi bir giriş cihazı (klavye, fare vs.) gibi davranabilirmiş. O yüzden bu kod diğer milrokontrolcülerle çalışmayacaktır.
Benim bunu okuyanlara ve projeyi deneyenlere bir sorum olucak: iPhoneXr iOS 14.4 te kendi DTMF sinyalimi alamadım. Ancak YouTube dan bir DTMF sinyali videosu açınca başarılı. Telefon uygulaması yani numpad o sesleri vermesine rağmen DTMF sinyali decoder tarafından görülmüyor.
Bu durum acaba Apple ın güncellemesi ile mi ilgilidir? Ya da sinyallerin long short olması ve decoder un sadece birini yakalayabilmesiyle mi ilgili olabilir? Herhangi bir modern Apple cihaz ile bunu deneyen oldu mu? Teşekkürler.
peki arduino uno clona bu kodu nasıl çalışmasını sağlayacağız?
Selamlar, maalesef bilgimiz yok. Biz iPhone ile test ettik ve herhangi bir sorun ile karşılaşmadık.
Diğer soru için de Arduino UNO as Keyboard olarak arayabilirseniz ek bir uygulama ile yapılabiliyor olması lazım.