Tartalomjegyzék:

Arduino Morse kód adó: 11 lépés
Arduino Morse kód adó: 11 lépés

Videó: Arduino Morse kód adó: 11 lépés

Videó: Arduino Morse kód adó: 11 lépés
Videó: Section 5 2024, Július
Anonim
Arduino Morse kód adó
Arduino Morse kód adó
Arduino Morse kód adó
Arduino Morse kód adó

Ebben az utasításban egy Arduino Uno segítségével létrehozhat egy morze kód -adót, és a soros monitor segítségével olvashatja az Ön által továbbított üzeneteket.

Alkatrészek, amelyekre szüksége lesz:

Arduino Uno

Kenyeretábla

Berregő

Gombok

Jumper vezetékek

1. lépés: Adjon energiát a kenyértáblájának

Adjon energiát a kenyértáblájának
Adjon energiát a kenyértáblájának

Csatlakoztassa az áthidaló vezetéket az Arduino Uno 5V -os csatlakozójától a kenyérlap pozitív vonalához.

2. lépés: Földelje le a kenyeretáblát

Földelje le a kenyeretáblát
Földelje le a kenyeretáblát

Most csatlakoztasson egy vezetéket az Arduino bármelyik GND -tűjéről a kenyértábla negatív vonalához.

3. lépés: Helyezze be a gombot

Helyezze be a gombot
Helyezze be a gombot

Helyezze be a gombot. Győződjön meg arról, hogy két lába a csatorna mindkét oldalán van a kenyértábla közepén, és a lábak szilárdan vannak behelyezve. Könnyű meghajlítani őket, ha erősen megnyomja, ezért vigyázzon, miközben lenyomja a gombot.

4. lépés: Földelje le a gombot

Földelje le a gombját
Földelje le a gombját

Csatlakoztassa a gombot a földhöz úgy, hogy az egyik végét ugyanabba a sorba illeszti, mint a gomb felső lábát, a másik végét pedig a korábban a földhöz csatlakoztatott negatív sorba.

5. lépés: Csatlakoztassa a gombot

Csatlakoztassa a gombot
Csatlakoztassa a gombot

Zárja el a gombáramkört, és hagyja, hogy az Arduino leolvassa a bemenetét, és csatlakoztasson egy vezetéket ugyanabból a sorból, mint az alsó gombszár, és az Arduino 7 -es érintkezőjét.

6. lépés: Helyezze be a zümmögőt

Helyezze be a hangjelzőt
Helyezze be a hangjelzőt

Helyezze be a zümmögőt úgy, hogy a tetején lévő "+" jel vagy a kissé hosszabb lábak a kenyértábla ugyanazon oldalán legyenek, mint az 5V -ra csatlakoztatott vezeték.

7. lépés: Földelje a zümmögőt

Földelje a zümmögőt
Földelje a zümmögőt

Csatlakoztassa a gombot a földhöz egy vezetékkel, amely ugyanabból a sorból származik, mint a rövidebb lába, a negatív vonalhoz a kenyértáblán, amelyet korábban a GND -hez csatlakoztatott.

8. lépés: Kapcsolja be a hangjelzőt

Kapcsolja be a zümmögőt
Kapcsolja be a zümmögőt

Adjon áramot a zümmernek, és hagyja, hogy az Arduino vezérelje egy huzallal, amely ugyanabból a sorból van, mint a hosszabb lába az Arduino 8 -as érintkezőjéhez.

9. lépés: Írja be a kódot

Írja be a kódját
Írja be a kódját

Másolja ki és illessze be a kódunkat, vagy töltse le a csatolt fájlt.

statikus String Morse = {".-", "-…", "-.-.", "-..", ".", "..-.", "-.", "…. ",".. ",".--- "," -.- ",".-.. ","-","-. "," --- ",".--. ", "--.-", ".-.", "…", "-", "..-", "…-", ".--", "-..-", "-.-- ","-.. "," E "};

statikus karakter ábécé = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", " x ',' y ', „z”, „E”}; előjel nélküli hosszú push_length, start_push, end_push; // a gomb megnyomásának ideje int gomb = 7; // bemeneti csap a nyomógombhoz int buzzer = 8; // outpu pin for LED String code = ""; // karakterlánc, amelyben egy ábécé tárolódik

void setup () {

Sorozat.kezdet (9600); pinMode (gomb, INPUT_PULLUP); // a belső felhúzó ellenállás az áramkör egyszerűsítésére szolgál pinMode (zümmögő, OUTPUT); Serial.println ("Kezdje el üzenetét!"); }

üres hurok ()

{MorseTransmission: while (digitalRead (gomb) == HIGH) {} start_push = millis (); // idő gombnyomásra (hangjelzés, 150); while (digitalRead (gomb) == LOW) {} end_push = millis (); // gomb elengedési ideje noTone (zümmögő); push_length = end_push - start_push; // a gomb megnyomásának ideje, ha (push_length> 50) {// a kapcsoló lekapcsolási kódjának elszámolása += dot_or_dash (push_length); // függvény a pont vagy kötőjel olvasására} while (((millis () - end_push) <500) // ha a gomb megnyomása közötti idő 0,5 másodpercnél hosszabb, ugrás a ciklusra és a következő ábécé folytatása {if (digitalRead (gomb) == LOW) {goto MorseTransmission; }} Morse_translation (kód); // függvény a kód ábécévé történő megfejtésére}

char dot_or_dash (úszóhossz)

{if (50. hossz) {return '.'; // ha a gomb megnyomása kevesebb, mint 0,6 mp, akkor ez egy pont} else if (length> 600) {return '-'; // ha a gombot több mint 0,6 másodpercig lenyomja, akkor kötőjel}}

void Morse_translation (String morsecode)

{int i = 0; if (kód == ".-.-.-") {Soros.nyomat ("."); // szünetre} else {while (Morse ! = "E") // hurok a bemeneti kód és a betűtömb összehasonlításához {if (Morse == morsecode) {Serial.print (Alphabet ); szünet; } i ++; } if (Morse == "E") {Serial.println ("Hiba!"); // ha a bevitt kód nem egyezik a betűvel, error}} code = ""; // a kód visszaállítása üres karakterláncra}

10. lépés: Használja a soros monitort a kimenet olvasásához

Használja a soros monitort a kimenet olvasásához!
Használja a soros monitort a kimenet olvasásához!

Nyissa meg a soros monitort az üzenetek megtekintéséhez, miközben megnyomja a gombot a Morse -kód létrehozásához. Használja a fenti útmutatót a pontok és kötőjelek megfelelő sorrendbe állításához!

11. lépés: Szeretne több ilyen projektet?

Szeretnél több ilyen projektet?
Szeretnél több ilyen projektet?

Szerezzen alkatrészeket havi 2-3 projekthez, valamint utasításokat és videókat a MakeCrate segítségével!

Ajánlott: