Ana Sayfa Arduino Arduino İle Mors Alfabesi Yapma

Arduino İle Mors Alfabesi Yapma

5 min read
0
2
846

Merhaba Arkadaşlar,bu yazımızda Arduino ile Mors Alfabesi yapacağız.Uygulamayı yapmadan önce gelin Mors Alfabesi bir başka deyişle Mors Kodu nedir onu öğrenelim.Mors Alfabesi,1835 yılında telgraf ile de ilgilenen Samuel Morse tarafından oluşturulmuştur. Mors Alfabesi , kısa ve uzun işaretler,yani nokta ve çizgeler(dot and dash) (./ -) ile bunlara karşılık gelen ışık ve sesleri kullanarak bilgi aktarılmasını sağlayan bir yöntemdir. Mors kodu; sesli olarak, radyo sinyallerinin açılıp kapatılmasıyla, telegraf tellerinden geçen elektrik akımıyla, mekanik yolla ya da görsel (ışıkların yanıp sönmesi) gibi çeşitli yollarla iletilebilir.Aşağıdaki resimde Mors Alfabesini görebilirsiniz.

mors_alfabesi

 

Şimdi gelelim Arduino ile Mors Alfabesini nasıl yazdıracağımıza, Mors  Alfabesinde kullanılan kısa ve uzun işaretleri programımızda zamanla oynayarak ifade edeceğiz. Kısa işaret için delay(250),Uzun işaret için ise delay(1000) zamanını kullanacağız.Aynı anda hem buzzer ile ses verip hem de led ile ışıklı olarak ifade edeceğiz.Serial monitörden girdiğimiz Harfe göre ışıklı ve sesli olarak Mors Coduna çevirecektir.Örneğin ; Morse kelimesini aşağıdaki şekilde ifade edebiliriz.

morse

 

Uygulamamızın Devre şeması aşağıda görülmektedir.

Arduino_mors_alfabesi

 

Uygulamamızın Kodları aşağıda görülmektedir.

const int morse_sound = 8;
const int morse_light = 6;

void setup()
{
pinMode(morse_sound, OUTPUT);
pinMode(morse_light, OUTPUT);
Serial.begin(9600);
}

void loop()
{
char chars;
if (Serial.available())
{
chars = Serial.read();
if (chars>='a' && chars<='z')
{

chars = chars -32;
}

if(chars<65 || chars>90)
{
chars=' ';
}
soundlightLetter(chars);
delay(500);
}
}

void dot()
{
digitalWrite(morse_light, HIGH);
digitalWrite(morse_sound, HIGH);
delay(250);
digitalWrite(morse_light, LOW);
digitalWrite(morse_sound, LOW);
delay(250);
}

void dash()
{
digitalWrite(morse_light, HIGH);
digitalWrite(morse_sound, HIGH);
delay(1000);
digitalWrite(morse_light, LOW);
digitalWrite(morse_sound, LOW);
delay(250);
}

void soundlightLetter(char letter)
{

switch(letter)
{
case 'E':
dot();
return;
case 'T':
dash();
return;
case 'A':
dot();
dash();
return;
case 'O':
dash();
dash();
dash();
return;
case 'I':
dot();
dot();
return;
case 'N':
dash();
dot();
return;
case 'S':
dot();
dot();
dot();
return;
case 'H':
dot();
dot();
dot();
dot();
return;
case 'R':
dot();
dash();
dot();
return;
case 'D':
dash();
dot();
dot();
return;
case 'L':
dot();
dash();
dot();
dot();
return;
case 'C':
dash();
dot();
dash();
dot();
return;
case 'U':
dot();
dot();
dash();
return;
case 'M':
dash();
dash();
return;
case 'W':
dot();
dash();
dash();
return;
case 'F':
dot();
dot();
dash();
dot();
return;
case 'G':
dash();
dash();
dot();
return;
case 'Y':
dash();
dot();
dash();
dash();
return;
case 'P':
dot();
dash();
dash();
dot();
return;
case 'B':
dash();
dot();
dot();
dot();
return;
case 'V':
dot();
dot();
dot();
dash();
return;
case 'K':
dash();
dot();
dash();
return;
case 'J':
dot();
dash();
dash();
dash();
return;
case 'X':
dash();
dot();
dot();
dash();
return;
case 'Q':
dash();
dash();
dot();
dash();
return;
case 'Z':
dash();
dash();
dot();
dot();
return;
case ' ':
delay(1000);
return;
}
}

Uygulamamızın videosu aşağıda görülmektedir.

Buna Benzer Yazılar Göster !
Daha Fazlasını Yükle - Muhammet Özcan
Daha Fazla Göster -  Arduino

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bak Bakalım ?

Beacon Teknolojisi

Beacon(İşaretçi) cihazlar, BLE (BlueTooth Low Energy) teknolojisi ile donatılmış, düşük gü…