مورس کوڈ مواصلات کا ایک نظام ہے جس میں اشاروں کے دو مختلف دوروں میں کسی بھی کردار کو انکوڈ کرنے کے لئے ڈاٹس اور ڈیشس کہا جاتا ہے ۔ مورس کوڈ کو سیموئیل ایف بی نے تیار کیا ہے اور مزید خفیہ معلومات کی منتقلی کے لئے ٹیلی گراف میں استعمال ہوتا ہے۔ یہ سب سے زیادہ دوسری جنگ عظیم کے وقت استعمال ہوا تھا۔ مورس کوڈ کو ٹیپ کرنے ، چمکنے والی روشنی یا تحریری شکل سے انجام دیا جاسکتا ہے۔ مورس کوڈ دو ورژنوں میں دستیاب ہے ، اصل اور بین الاقوامی مورس کوڈ۔ بین الاقوامی مورس کوڈ میں ، اصل ورژن کو خالی جگہوں کو ختم کرکے اور ایک مخصوص لمبائی میں ڈیشز ڈیزائن کرکے ترمیم کیا جاتا ہے۔ مورس کوڈ حروف اور نمبروں کو انکوڈنگ کرنے کے لئے دستیاب ہے۔ یہ بنیادی طور پر ریڈیو اور سمندر کے مواصلات اور فوجیوں کی تربیت کا ایک حصہ میں استعمال ہوتا ہے۔
مورس کوڈ کے ل The زبان ہمیشہ رکاوٹ رہی ہے ، کیوں کہ دوسری زبان میں جداگانہ کرداروں کے لئے کوڈ کو انجام دینا مشکل ہے۔ کچھ مشہور الفاظ ایسے ہیں جیسے 'ایس او ایس' جیسے مورس کوڈ کی اہم خصوصیت سمجھے جاتے ہیں ۔ ایس او ایس کا مکمل فارم ہمارے روحوں کو محفوظ کرنا ہے جو عالمگیر تکلیف کے اشارے کے طور پر تشکیل دیا گیا ہے۔
ذیل کی تصویر میں A سے Z تک کے حروف کے لئے مورس کوڈ دکھاتا ہے۔
آج اس ٹیوٹوریل میں ہم ارڈینو کا استعمال کرتے ہوئے ایک مورس کوڈ ٹرانسلیٹر بنائیں گے جو کسی بھی کردار کو سیریل مانیٹر سے ان پٹ کے طور پر لے کر اسے بزر کے ذریعہ مورس کوڈ کے مساوی بیپس میں تبدیل کرے گا۔
ضروری اجزاء
- ارڈینو اونو
- بزر
- بریڈ بورڈ
- جمپر تاروں
سرکٹ ڈایاگرام
بوزر کے مثبت پن کو اروڈینو یو این او کے 8 ویں پن اور منفی پن کو ارڈینو کی زمین سے جوڑیں۔ ارڈینو آئ ڈی ای کا استعمال کرتے ہوئے کوڈ اپ لوڈ کریں اور آواز بنانے کے لئے سیریل مانیٹر پر حروف ٹائپ کریں۔ ڈیش اور نقطوں کو ظاہر کرنے کے لئے ایردوینو کے ساتھ ایک LCD بھی شامل کیا جاسکتا ہے۔
پروگرامنگ وضاحت
ارڈینو مورس کوڈ جنریٹر کے لئے مکمل کوڈ آخر میں دیا گیا ہے ، یہاں ہم منصوبے کے کام کو سمجھنے کے لئے پروگرام کی وضاحت کر رہے ہیں۔
ذیل میں کوڈ کیریکٹر سٹرنگ وصول کرنے اور پھر اسے مورس کوڈ میں تبدیل کرنے کے لئے استعمال کیا جاتا ہے۔
char stringToMorseCode = ""؛
پھر ارڈینو سے متصل بزر کے لئے پن اور اس بززر کے ذریعہ پیدا ہونے والی آواز کیلئے پچ کی وضاحت کریں۔ پھر ہم نقطہ اور ڈیش کی لمبائی کی وضاحت کر رہے ہیں۔
انٹ آڈیو 8 = 8؛ // آؤٹ پٹ آڈیو پر پن 8 انٹینٹ نوٹ = 1200؛ // میوزک نوٹ / پچ انٹ ڈاٹ لین = 100؛ // مورس کوڈ 'ڈاٹ' انٹ ڈیش لین کی لمبائی = ڈاٹ لین * 3؛ // مورس کوڈ 'ڈیش' کی لمبائی
میں باطل لوپ () تقریب، سیریل ڈیٹا دستیاب ہے، تو یہ ایک متغیر میں بچا لے گا indata . پھر اس میں ڈیٹا میں کمانڈ استعمال کرکے ایک ایک کریکٹر پڑھتا ہے ۔ کمانڈ متغیر.ٹو اپر کیس () کا استعمال کم کیس کے حرفوں کو بڑے میں تبدیل کرنے کے لئے کیا جاتا ہے۔ پھر یہ ہر کردار کے مطابق آواز پیدا کرتا ہے۔
باطل لوپ () { چار inChar = 0؛ چار inData = ""؛ // ڈیٹا کی لمبائی 6 حروف کی سٹرنگ متغیر = ""؛ سٹرنگ متغیر 1 = ""؛ int index1 = 0؛ اگر (سیریل۔ دستیاب ()> 0) { جبکہ (سیریل۔ دستیاب ()> 0 اور&11 <100) { تاخیر (100)؛ inChar = سیریل.ریڈ ()؛ inData = inChar؛ انڈیکس 1 ++؛ inData = '\ 0'؛ } متغیر.ٹوپپر کیس ()؛ (بائٹ i = 0؛ i <100؛ i ++) { متغیر. } تاخیر (20)؛
ڈاون اور ڈیش کیلئے بالترتیب آواز تخلیق کرنے کے لئے ذیل میں افعال مرس ڈاٹ اور مورس ڈیش کا استعمال کیا جاتا ہے۔
باطل مورس ڈاٹ () { ٹون (آڈیو 8 ، نوٹ ، ڈاٹ لین)؛ // ایک سر تاخیر کھیلنا شروع کریں (ڈاٹ لین)؛ // اس پوزیشن میں ہولڈ } باطل MorseDash () { سر (audio8، نوٹ، dashLen)؛ // ایک سر تاخیر کھیلنا شروع کریں (ڈیش لین)؛ // اس پوزیشن پر فائز }
getchar کے تقریب کے تمام حروف کے لئے کوڈ ہے. لہذا ، جب بھی ہم کوئی حرف تہجی ٹائپ کرتے ہیں ، خاص آواز پیدا کرنے کے لئے اس فنکشن سے متعلقہ مورس کوڈ لیا جاتا ہے۔
باطل ہو گیٹچار (چارٹیمپچار) { سوئچ (ٹیمپچار) { کیس 'ا': مورس ڈاٹ ()؛ تاخیر (100)؛ MorseDash ()؛ تاخیر (100)؛ توڑ ... ... ... ڈیفالٹ: وقفے؛ } }
اب کوڈ کو اردوینو میں اپرڈ کریں اردوینو آئی ڈی ای کا استعمال کرتے ہوئے اور سیریل مانیٹر میں کوئی بھی کردار ٹائپ کریں اور ارڈینو کو حرف بھیجنے کے لئے انٹر بٹن کو دبائیں۔
یہاں ہم نے 'ایس او ایس' ٹائپ کیا ہے جو ایک آفاقی تکلیف کا اشارہ ہے ، اسی آواز کو پیدا کرنے کے لئے۔
اس کے لئے مظاہرہ نیچے ویڈیو میں دیا گیا ہے۔