Spisu treści:
- Krok 1: Zasil swoją deskę do krojenia chleba
- Krok 2: Uziem swoją deskę do krojenia chleba
- Krok 3: Wstaw swój przycisk
- Krok 4: Uziemij swój przycisk
- Krok 5: Podłącz swój przycisk
- Krok 6: Włóż brzęczyk
- Krok 7: Uziemienie brzęczyka
- Krok 8: Włącz brzęczyk
- Krok 9: Napisz swój kod
- Krok 10: Użyj monitora szeregowego, aby odczytać wyniki
- Krok 11: Chcesz więcej takich projektów?
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
W tej instrukcji użyjesz Arduino Uno do utworzenia nadajnika alfabetu Morse'a i użyjesz monitora szeregowego do odczytania przesłanych wiadomości.
Potrzebne części:
Arduino Uno
Deska do krojenia chleba
Brzęczyk
guziki
Przewody połączeniowe
Krok 1: Zasil swoją deskę do krojenia chleba
Podłącz przewód połączeniowy z pinu 5 V na Arduino Uno do dodatniej linii na płytce stykowej.
Krok 2: Uziem swoją deskę do krojenia chleba
Teraz podłącz przewód z dowolnego pinu GND na Arduino do ujemnej linii na płytce stykowej.
Krok 3: Wstaw swój przycisk
Wstaw swój przycisk. Upewnij się, że dwie nogi znajdują się po obu stronach kanału na środku płytki stykowej, a nogi są mocno wsunięte. Łatwo je zginać, gdy mocno naciskasz, więc uważaj podczas naciskania przycisku.
Krok 4: Uziemij swój przycisk
Podłącz przycisk do uziemienia, wkładając jeden koniec do tego samego rzędu, co górna noga przycisku, a drugi koniec do rzędu ujemnego, który wcześniej podłączono do uziemienia.
Krok 5: Podłącz swój przycisk
Zamknij obwód przycisku i pozwól Arduino odczytać jego wejście, podłączając przewód z tego samego rzędu, co dolna noga przycisku i pin 7 na Arduino.
Krok 6: Włóż brzęczyk
Włóż brzęczyk tak, aby znak „+” na górze lub nieco dłuższa nóżka znajdowały się po tej samej stronie płytki stykowej, co przewód podłączony do 5 V.
Krok 7: Uziemienie brzęczyka
Podłącz przycisk do uziemienia przewodem z tego samego rzędu co jego krótsza noga do ujemnej linii na płytce stykowej, którą wcześniej podłączono do GND.
Krok 8: Włącz brzęczyk
Zapewnij zasilanie brzęczyka i pozwól Arduino sterować nim za pomocą przewodu z tego samego rzędu, co jego dłuższa noga, do pinu 8 w Arduino.
Krok 9: Napisz swój kod
Skopiuj i wklej nasz kod lub pobierz załączony plik.
static String Morse = {".-", "-…", "-.-.", "-..", ".", "..-.", "--.", "…. ", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "…", "-", "..-", "…-", ".--", "-..-", "-.-- ", "--..", "E" };
static char Alphabet = {'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'}; unsigned long push_length, start_push, end_push; //czas naciśnięcia przycisku int button = 7; //pin wejście dla przycisku int buzzer = 8; //pin wyjściowy dla kodu ciągu LED = ""; //ciąg, w którym przechowywany jest jeden alfabet
pusta konfiguracja () {
Serial.początek(9600); pinMode(przycisk, INPUT_PULLUP); //wewnętrzny rezystor pullup służy do uproszczenia układu pinMode(buzzer, OUTPUT); Serial.println("Rozpocznij swoją wiadomość!"); }
pusta pętla()
{ MorseTransmission: while (digitalRead(przycisk) == HIGH) {} start_push = millis(); //czas po naciśnięciu przycisku (brzęczyk, 150); while (digitalRead(przycisk) == LOW) {} end_push = millis(); //czas po zwolnieniu przycisku noTone(brzęczyk); push_length = end_push - start_push; //czas, przez który przycisk jest naciśnięty if (push_length > 50){ //aby uwzględnić kod odbicia przełącznika += kropka_or_dash(push_length); //funkcja odczytu kropki lub myślnika } while ((millis() - end_push) < 500) //jeśli czas pomiędzy naciśnięciem przycisku większy niż 0.5s, pomiń pętlę i przejdź do następnego alfabetu { if (digitalRead(button) == LOW) { przejdź do MorseTransmission; } } Morse_translation(kod); //funkcja rozszyfrowania kodu na alfabet }
znak kropka_lub_kreska(długość zmiennoprzecinkowa)
{ if (długość 50) { return '.'; //jeśli przycisk naciśniesz krócej niż 0.6s, jest to kropka } else if (długość > 600) { return '-'; //jeśli przycisk naciśnie się dłużej niż 0,6 s, to jest myślnik } }
void Morse_translation (ciąg znaków Morsecode)
{ int i = 0; if (kod == ".-.-.-") { Serial.print("."); //for break } else { while (Morse != "E") //pętla do porównywania kodu wejściowego z tablicą liter { if (Morse == Morsecode) { Serial.print(Alphabet); przerwa; } i++; } if (Morse == "E") { Serial.println("Błąd!"); //jeśli kod wejściowy nie pasuje do żadnej litery, błąd } } code = ""; //zresetuj kod do pustego ciągu }
Krok 10: Użyj monitora szeregowego, aby odczytać wyniki
Otwórz monitor szeregowy, aby wyświetlić wiadomości po naciśnięciu przycisku, aby utworzyć kod Morse'a. Skorzystaj z powyższego przewodnika, aby odpowiednio uporządkować kropki i kreski!
Krok 11: Chcesz więcej takich projektów?
Zdobądź części do 2-3 projektów miesięcznie oraz instrukcje i wideo, aby zbudować je za pomocą MakeCrate!