Szyfrowanie wyrazów na kod Morse’a – Arduino

Szyfrowanie wyrazów na kod Morse’a – Arduino

Cześć,

Tak jak w tytule, chciałbym zaprezentować Wam prosty projekt na Arduino skierowany głównie do początkujących użytkowników.
Zaszyfrujecie dzięki niemu dowolny wyraz w kodzie Morse’a, a nawet go wysłuchacie. Zatem do dzieła!

Co będzie potrzebne?

  • Dowolne Arduino (ja korzystałem z UNO)
  • Wyświetlacz LCD I2C (najlepiej 20×4)
  • 3 przyciski (tact switch)
  • Dioda LED z odpowiednim rezystorem
  • Buzzer, brzęczyk lub inny generator hałasu na 5V :)

Ogólny zamysł i połączenie…

Do Arduino podłączamy wyświetlacz (łączymy piny z wyświetlacza z Arduino – VCC z 5V, GND z GND, SDA z SDA i SCL z SCL). Dodatkowo, na płytce stykowej umieszczamy 3 przyciski. Dwa z nich będą służyły do przewijania liter przez alfabet w górę i w dół, trzeci do zatwierdzania wyboru. Z jednej strony przyciski łączymy do masy, z drugiej zaś strony do pinów cyfrowych Arduino – 3, 4 i 5. Na koniec, wrzucamy na płytkę stykową nasz buzzer oraz diodę LED, połączone równolegle. Plus (anody) łączymy z pinem Arduino 11, katody do masy. Tak przygotowany zestaw jest już gotowy do wgrania programu. Poniżej załączam obrazek, jak powinno wyglądać prawidłowe połączenie.

Siadamy do kodu

Mój gotowy kod z komentarzami i objaśnieniami dostępny jest poniżej:

Działanie

Dwoma przyciskami przewijamy alfabet w górę i w dół, gdy mamy odpowiednią literę, klikamy trzeci przycisk i wybieramy kolejną. Aby zakończyć wprowadzanie liter przytrzymujemy trzeci przycisk przez ponad sekundę. Na wyświetlaczu pojawia się zaszyfrowane słowo.
Prezentacja działania na filmie poniżej:

Mam nadzieję, że projekt się spodobał lub kogoś zainspirował. Po skończeniu możemy również zabawić się w np. wysyłanie zaszyfrowanego komunikatu drogą radiową, ale to już sprawa na zupełnie osobny poradnik. Wszelkie uwagi mile widziane w komentarzach.

Pozdrawiam
Mikołaj

Ocena: 4/5 (głosów: 11)

Podobne posty

7 komentarzy do “Szyfrowanie wyrazów na kod Morse’a – Arduino

  • 1) Kod Morse’a nie jest szyfrem, więc do szyfrowania temu daleko
    2) Brak regulacji prędkości i tonu – to nawet nie jest standardowy ton, po prostu kluczujesz głośniczek bez tranzystora…
    3) Wpisywanie na klawiszach… można było użyć chociaż enkodera, serio. Różnica cenowa prawie żadna, a znacznie lepsza obsługa.

    Przykro mi to mówić, ale to kolejny projekt w stylu połączenia paru kabelków. Naprawdę, można było to ulepszyć (odpowiedni ton, regulacja szybkości, wybieranie znaku enkoderem, przyciski pause/stop/replay), aktualnie to wygląda jak słaby tutorial. Wiem że ostatnio narzekam na tej stronie, ale naprawdę na głównej są znacznie lepsze projekty, nie wyglądające jak tutorial do Arduino, z obudową i odpowiednio przemyślane. Jeżeli społeczność zadecyduje że ok to spoko, ja niestety jestem na nie. Po prostu nie podoba mi się projekt zbudowany z godzinę z losowego pomysłu, pozostawiony na breadboardzie, nieprzemyślany.

    Odpowiedz
  • Nie za bardzo przekonuje mnie projekt, do którego na dobrą sprawę nie trzeba ani Arduino ani żadnej amatorskiej elektroniki – wystarczy napisać prosty programik w Pythonie, C# albo Javie. Na dobrą sprawę są nawet strony internetowe, które realizują tę funkcjonalność – to czyni projekt dosyć mocno niepraktycznym. Można byłoby go odratować np. umieszczeniem w obudowie z jakimś zasilaniem żeby zrobić z niego moduł przenośny; potem umożliwić przesyłanie komunikatów laserem i na koniec zbudować i oprogramować odbiornik, który umiałby je odczytać i wyświetlić. Moim zdaniem fakt, że projekt działa to jeszcze trochę za mało, żeby trafił na główną stronę.

    Odpowiedz
  • Potrzebuje pomocy! Jestem początkującym z Arduino (mam 13 lat) i nie wiem jak podłączyć wyświetlacz bezpośrednio do Arduino i jak zmienić kod aby to działało

    A ogólnie to artykuł super😀

    Odpowiedz
    • Sposób podłączenia masz w filmie:
      https://www.youtube.com/watch?v=qKgldxcOKCg
      Masz tam też bibliotekę, którą należy użyć.
      W kodzie programu zamieniasz linijkę nr 2 na pierwszą linijkę z filmu.
      Linijkę nr 4 zmieniasz na drugą wpisaną w filmie.
      Wywalasz z kodu linijkę 30.
      W linii 29 wpisujesz lcd.begin(16,2) – jeżeli masz wyświetlacz 2×16 znaków. Jeśli inny, wpisujesz tak, jak masz u siebie.

      Jeśli będziesz miał nadal problem, napisz na forum.majsterko.pl, łatwiej będzie pomóc.

      Odpowiedz

Odpowiedz

anuluj

Masz uwagi?