Arduino Morse Code (4 / 5 steg)

Steg 4: Ladda upp koden

Nästa ansluta datorn till Arduino via USB-kabeln. Genom att använda Arduino compiler uppladdningen följande kod. Om du vill ändra Morsealfabetet strängen bara ändra "stringToMorseCode". Koden kommer att läsa den här strängen och konvertera strängen till morsekod, både visuell och audio.

Koden läser strängen till en array och sedan använda GetChar fungerar detta konverterar varje tecken i prickar och streck. För närvarande är detta bara konvertera alfabetiska tecken men du kan enkelt lägga till ytterligare tecken (siffror, skiljetecken) i detta Välj uttalande switch längst ner i koden.

/*
Morse Code Project

Denna kod kommer att loopa igenom en teckensträng och konvertera dessa till morsekod.
Det kommer att blinka två LED-lampor och spela upp ljud på en högtalare.
*/

//**************************************************//
Ange strängen för att konvertera till morsekod här / /
//**************************************************//
char stringToMorseCode [] = "Arduino morsekod projektet".
Skapa variabel för att definiera utgångsstift
int led12 = 12; blinka en led på utgång 12
int led6 = 6; blinka en led på utgång 6
int audio8 = 8; output audio på stift 8
int Obs = 1200; musik noterar/pitch
/*
Ställa in hastigheten på din morsekod
Justera längden för att snabba upp eller sakta ner din morsekod "dotlen"
(alla andra längder baseras på dotlen)
Här är nyckeltalen kodelement:
Dash längd = Dot längd x 3
Paus mellan element = Dot längd
(paus mellan prickar och streck inom karaktären)
Paus mellan tecken = Dot längd x 3
Paus mellan ord = Dot längd x 7

http://www.nu-ware.com/NuCode%20Help/index.html?m...
*/
int dotLen = 100; längd av morsekod "pricken"
int dashLen = dotLen * 3; längd av morsekod "dash"
int elemPause = dotLen; längden på pausen mellan element i ett tecken
int utrymmen = dotLen * 3; längden på utrymmena mellan tecken
int wordPause = dotLen * 7; längden på pausen mellan ord
Rutinen installationsprogrammet körs en gång när du trycker på reset:
void setup() {
initiera digital PIN-koden som en utgång för LED-lampor.
pinMode (led12, produktionen);
pinMode (led6, produktionen);
}
Skapa en slinga av bokstäver/orden du vill spara i morsekod (definieras i strängen överst i koden)
void loop()
{
Loopa igenom strängen och få varje tecken en i taget tills slutet nås
för (int jag = 0; jag < sizeof(stringToMorseCode) - 1; i ++)
{
Få karaktär med det aktuella
char tmpChar = stringToMorseCode [i];
Ställa in ärendet till gemener
tmpChar = toLowerCase(tmpChar);
Ring subrutin för att få Morsealfabetet motsvarande för denna karaktär
GetChar(tmpChar);
}

I slutet av strängen lång paus före looping och start igen
LightsOff(8000);
}
DOT
void MorseDot()
{
digitalWrite (led12, hög); Aktivera LED
digitalWrite (led6, hög);
tonar (audio8, Obs, dotLen); börja spela en ton
Delay(dotLen); Håll i denna position
}
DASH
void MorseDash()
{
digitalWrite (led12, hög); Aktivera LED
digitalWrite (led6, hög);
tonar (audio8, Obs, dashLen); börja spela en ton
Delay(dashLen); Håll i denna position
}
Stäng av
void LightsOff(int delayTime)
{
digitalWrite (led12, låg); Inaktivera LED
digitalWrite (led6, låg);
noTone(audio8); sluta spela en ton
Delay(delayTime); Håll i denna position
}
*** Tecken till morsekod konvertering *** / /
void GetChar(char tmpChar)
{
Ta den passerade karaktären och använda ett switch fall för att hitta Morsealfabetet för tecknet
växel (tmpChar) {
fallet "a":
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "b":
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet "c":
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fall skulle ":
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet "e":
MorseDot();
LightsOff(elemPause);
bryta;
fallet "f":
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet "g":
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet "h":
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet "i":
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet "j":
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "k":
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "l":
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet är ":
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet 'n':
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet ' o ':
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "p":
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet "q":
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "r":
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
fallet ":
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
't i mål ":
MorseDash();
LightsOff(elemPause);
bryta;
fallet "u":
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "v":
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "w":
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "x":
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fall "y":
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
bryta;
fallet "z":
MorseDash();
LightsOff(elemPause);
MorseDash();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
MorseDot();
LightsOff(elemPause);
bryta;
standard:
Om ett matchande tecken inte hittades kommer det standard att ett tomt utrymme
LightsOff(Spaces);
}
}
/*
Olicensierad programvara:

Detta är gratis och icke pantsatta programvara släpps ut i det offentliga rummet.
Någon är fri att kopiera, modifiera, publicera, använda, kompilera, sälja, eller
distribuera denna programvara, källa koden eller som en kompilerad
binär, för ändamålet, kommersiella eller icke-kommersiella, och av någon
innebär.
I jurisdiktioner som känner igen upphovsrättslagar, författaren eller författarna
av denna programvara ägna alla copyright intresse för den
programvara för att det offentliga rummet. Vi gör detta engagemang till förmån
för den stora allmänheten och till nackdel för våra arvingar och
efterträdarear. Vi avser detta engagemang vara en overthandling av
avveckling i evighet av alla nuvarande och framtida rättigheter till detta
programvara enligt upphovsrätten.
PROGRAMVARAN TILLHANDAHÅLLS "I BEFINTLIGT SKICK", UTAN GARANTIER AV NÅGOT SLAG,
UTTRYCKLIGA ELLER UNDERFÖRSTÅDDA, INKLUSIVE MEN INTE BEGRÄNSAT TILL GARANTIER AVSEENDE
SÄLJBARHET, LÄMPLIGHET FÖR ETT VISST ÄNDAMÅL OCH ICKE-INTRÅNG.
UNDER INGA OMSTÄNDIGHETER SKA FÖRFATTARNA ANSVARA FÖR EVENTUELLA ANSPRÅK, SKADOR ELLER
ANNAT ANSVAR, VARE SIG I EN ÅTGÄRD AV KONTRAKTET, KRÄNKNING ELLER PÅ ANNAT SÄTT,
UPPSTÅENDE FRÅN, AV ELLER I SAMBAND MED PROGRAMVARAN ELLER ANVÄNDNING ELLER
ANDRA KONTAKTER I PROGRAMVARAN.
För mer information, se
*/

Se Steg
Relaterade Ämnen

Morse code generator för 16 x 24 HT1632C LED Matrix-jag gjorde det på TechShop

i detta instructable kommer jag detalj hur man använder HT1642C ledde matrisen från Adafruit för att göra en Morse code generator som både blinkar ett brev och spelar en Summer motsvarande morsekod motsvarande.För att göra rutan för matrisen, ta en t...

Morse Code nyckel ansluta till datorn

detta är min 1: a project, nyckeln morsekod ansluta till datorn via USBSteg 1: början Förberett en datormus och öppna fallet, ta bort kretskortet från mus.Steg 2: Täcka LED Använd papper och tejp för att täcka LED på kretskortet för att blockera ljus...

Små bitar två sätt Morse Code

detta är ett roligt sätt att lära och leka med morsekod, elektronik, led-lampor, buzzers och Små bitar.Du behövermatchande glasögon fallBlå tackskrot papper x2penna x2timerLiten Bit bitar eller motsvarande.P1 makti3 knappen x2W1 tråd x3O3 rgb ljusO6...

Arduino Text till Morse code

Hej!Detta är min första instractableJag har skrivit ett litet program i Arduino att konvertera text till morsekod och Visa den med hjälp av lettSummern kan också läggas ganska lätt...

Arduino Morse dekoder

Denna enhet läser hand knappat morsekod från en signal nyckel (eller en vanlig växel) och översätter den till oformaterad text och Visa morsekod du knappa på en LCD. Jag använder det för att träna min egen Morse keying färdigheter.Dekodern korrigerar...

Stickning i Morse Code

Detta är ett relativt lätt projekt när du får ner till den faktiska stickning - svåraste är i inställningarna.Jag har gjort 4 hittills - alla Födelsedagspresenter av olika slag (3 är baby filtar).Steg 1: Planering del 1Besluta följandevilken typ av p...

Enkel Morse Code Maker

Detta är en kort handledning i hur man gör din egna morsekod maker. Ändra koden för att säga vad du vill.Steg 1: leveranserSteg 1: leveranser1 - Arduino uno7 - startkablar1 - 8 ohms högtalare2-LED-lampor1-breadbox(Electrical)3 - 330 ohm motstånd1-USB...

Morse Code Noisemaker

Detta är ett projekt som skapades under en Instructables bygga natten med RaspberryPi och Adafruit.Detta projekt använder Python, RaspberryPi, en motor och Adafruit Pi skomakare Kit.Python-skript som ingår i nästa steg försöker skicka "HELLO WORLD&qu...

Morse Code

Detta projekt är liknande tilltag handslag, medtillägg av en gaffel och LED (light emitting diode), med LittleBits teknik.Steg 1: MorsealfabetetBörja med din effektmodul.Steg 2: MorsealfabetetAnslut en knapp till kraftmodulen.Steg 3: MorsealfabetetAn...

Känsla-The-kod (A haptiska Morse Code Reader) - Del1: Program

känsla-The-koden (F-T-C) är en vibra-taktil morsekod text läsare. Den har en programvarukomponent och en maskinvarukomponent. Dess syfte är att göra det möjligt att läsa någon text arkivera stilla och utan att titta på datorn. Med F-T-C kan en person...

HackerBoxes 0003: Amatörradio, Arduino Nano, satelliter, Packet, APRS

Är du redo att få Radio Active? Denna månad, utforska radiokommunikation med kraftfulla handhållna VHF/UHF transceiver, Sök för amatör satelliter overhead och prototyp ditt eget Morsealfabetet eller Digital Packet Radio projekt baserat på tiny Arduin...

Learning Morse!

Hej!! Jag gjorde detta instructable för de personer som vill lära sig morsekod. Jag trodde att bara skriva och lagra kod i våra sinnen var tråkig, och jag beslöt att göra detta lärande mer interaktiva och roliga med en arduino ombord. Ha kul: D!Steg...

USB-Arduino morsekod nyckel

Någonsin velat skriva på en dator med en morsekod nyckel eller att lära sig/lära morsekod? Du är på rätt sida!För mina andra projekt, kolla in calvinliang.meSteg 1: Samla material• 1 × Arduino/Genuino Micro• 1 × 3v summern• 1 × morsekod nyckel (jag f...

Arduino morsekod Flaher

jag är ett stort fan av programmering men jag gillar att hålla det ner till 555 timer men när det gäller komplexa funktioner som blinkar en LED i en vissa mönster programmering är nödvändig. En dag när Surf igenom den jag kom över något som kallas Mo...

Ett sol spårning automatiskt motoriserad fönster blind retrofit använder Arduino

Byggnader står för 20-40% av den totala energianvändningen Använd i utvecklade länder. Fönster nyanser (eller mörkarna) kan bidra till att minska energi använder och förbättra visuell komfort (dvs. att minska bländning och öka dagsljus). En nyligen g...

Baserade Arduino Bi-color LED matris orm spel

Vi demonstrerade hur en Arduino baserat Bi-color LED Matrix Tetris spel kan byggas i vårt senaste instructable. Vi var ganska överraskning det var med till Instructables hemsida och har samlat en hel handfull favoriter under en kort tidsperiod. Du ka...

Arduino Candygrabber

jag har sett många sätt att kommunicera till arduino över nätet, men ingen av dem kunde hantera trycka tillbaka meddelanden från arduino till client(you) i realtid och vice versa.I detta instructable du lära dig att ansluta till din arduino och kontr...

Ultrasonic Garage parkering Assistant med Arduino och en ATtiny85

Hello fellow beslutsfattare, jag vill dela med dig ett enkelt projekt som jag har satt ihop. Jag är ny till prototyper/kretsar och tog bara två termin av Java kurser, så när jag gick sett för enkla projekt att bygga min kompetens, jag blev besviken p...

Arduino knappsatsen dörrlås

I denna instrutable kommer jag förklara hur man gör knappsatsen dörrlås från arduino och XHQ-PT.XHQ-PT är en motor stopp solenoiden brukade avstängning de flesta chines dieselgenerator, jag kunde inte hitta en lämplig ställdon för min dörr på den lok...