Morse-kode er et kommunikasjonssystem som koder et hvilket som helst tegn i to forskjellige varigheter av signaler kalt Dots and Dashes . Morse-kode er utviklet av Samuel FB og videre brukt i telegrafi for overføring av hemmelig informasjon. Den ble mest brukt på tiden av andre verdenskrig. En morsekode kan utføres ved å trykke, blinke eller skrive. Morse-koden er tilgjengelig i to versjoner, originalen og den internasjonale morse-koden. I den internasjonale morsekoden modifiseres den opprinnelige versjonen ved å fjerne mellomrom og designe bindestrekene i en bestemt lengde. Morse-koden er tilgjengelig for koding av alfabeter og tall. Den brukes hovedsakelig i radio- og havkommunikasjon og også en del av opplæringen for soldater.
Språket har alltid vært barrieren for Morse-koden, da det er vanskelig å utføre koden for diakritiske tegn på andre språk. Det er noen kjente ord som betraktes som viktige trekk ved morse-kode som 'SOS'. SOS full form er Save Our Souls opprettet som et universelt nødsignal representerer fare.
Bildet nedenfor viser morse-koden for alfabetene fra A til Å.
I dag i denne opplæringen vil vi bygge en Morse Code Translator ved hjelp av Arduino, som tar et hvilket som helst tegn som en inngang fra seriell skjerm og konverterer det til lyd fra Morse-kode tilsvarende lydsignal.
Komponenter kreves
- Arduino Uno
- Summer
- Brettbrett
- Jumper ledninger
Kretsdiagram
Koble summeren positive tapp til 8 th pin av Arudino UNO og den negative tappen til bakken av Arduino. Last opp koden ved hjelp av Arduino IDE og skriv inn tegnene på den serielle skjermen for å lage lyden. En LCD kan også legges til med Arduino for å vise bindestrek og prikker.
Programmering Forklaring
Den komplette koden for Arduino Morse Code Generator er gitt til slutt, her forklarer vi programmet for å forstå hvordan prosjektet fungerer.
Koden nedenfor brukes til å motta tegnstrengen og deretter konvertere den til morsekode.
char stringToMorseCode = "";
Definer deretter pinnen for summeren som er koblet til Arduino og tonehøyden for lyden som genereres av den summeren. Så definerer vi lengden på prikk og bindestrek.
int audio8 = 8; // utgang lyd på pin 8 int note = 1200; // musikknote / tonehøyde int dotLen = 100; // lengden på morskoden 'dot' int dashLen = dotLen * 3; // lengden på morskoden 'dash'
I void loop () -funksjonen, hvis serielle data er tilgjengelige, lagres de i en variabel indata . Deretter leser det tegnet en etter en ved hjelp av kommandoen inData . Kommandovariabelen.toUppercase () brukes til å endre små bokstaver til store bokstaver. Så skaper det lyd i henhold til hver karakter.
ugyldig sløyfe () { char inChar = 0; char inData = ""; // datalengde på 6 tegn Stringvariabel = ""; Strengvariabel1 = ""; int indeks1 = 0; hvis (Serial.available ()> 0) { mens (Serial.available ()> 0 && index1 <100) { delay (100); inChar = Serial.read (); inData = inChar; index1 ++; inData = '\ 0'; } variable.toUpperCase (); for (byte i = 0; i <100; i ++) { variable.concat (String (inData)); } forsinkelse (20);
Funksjonene nedenfor MorseDot og MorseDash brukes til å lage lyd for henholdsvis punkt og bindestrek.
ugyldig MorseDot () { tone (audio8, note, dotLen); // begynn å spille en toneforsinkelse (dotLen); // hold i denne posisjonen } ugyldig MorseDash () { tone (audio8, note, dashLen); // begynn å spille en toneforsinkelse (dashLen); // hold i denne posisjonen }
Den getchar funksjon har koden for alle alfabeter. Så når vi skriver inn et alfabet, blir den respektive morse-koden hentet fra denne funksjonen for å skape den spesielle lyden.
ugyldig GetChar (char tmpChar) { switch (tmpChar) { case 'a': MorseDot (); forsinkelse (100); MorseDash (); forsinkelse (100); gå i stykker; ... ... ... standard: break; } }
Last nå opp koden til Arduino ved hjelp av Arduino IDE, og skriv inn hvilket som helst tegn i den serielle skjermen, og trykk på enter-knappen for å sende tegnene til Arduino.
Her har vi skrevet 'SOS' som er et universelt nødsignal for å skape lyden for det samme.
Demonstrasjonen for det samme er gitt i videoen nedenfor.