Talaan ng mga Nilalaman:

Transmitter ng Arduino Morse Code: 11 Mga Hakbang
Transmitter ng Arduino Morse Code: 11 Mga Hakbang

Video: Transmitter ng Arduino Morse Code: 11 Mga Hakbang

Video: Transmitter ng Arduino Morse Code: 11 Mga Hakbang
Video: сделать простое AM-радио, принимающее все международные радиостанции 2024, Nobyembre
Anonim
Transmitter ng Arduino Morse Code
Transmitter ng Arduino Morse Code
Transmitter ng Arduino Morse Code
Transmitter ng Arduino Morse Code

Sa itinuturo na ito, gagamit ka ng isang Arduino Uno upang lumikha ng isang transmiter ng Morse Code, at gamitin ang serial monitor upang mabasa ang mga mensahe na iyong naipadala.

Mga bahaging kakailanganin mo:

Arduino Uno

Breadboard

Buzzer

Mga Pindutan

Jumper wires

Hakbang 1: Magbigay ng Lakas sa Iyong Breadboard

Magbigay ng Lakas sa Iyong Breadboard
Magbigay ng Lakas sa Iyong Breadboard

Ikonekta ang isang jumper wire mula sa 5V pin sa iyong Arduino Uno sa positibong linya sa iyong breadboard.

Hakbang 2: Ibagsak ang Iyong Breadboard

Ground Ang iyong Breadboard
Ground Ang iyong Breadboard

Ngayon ikonekta ang isang kawad mula sa alinman sa mga pin ng GND sa Arduino sa negatibong linya sa iyong breadboard.

Hakbang 3: Ipasok ang Iyong Button

Ipasok ang Iyong Button
Ipasok ang Iyong Button

Ipasok ang iyong pindutan. Siguraduhin na ang dalawa sa mga binti nito ay nasa bawat panig ng channel pababa sa gitna ng iyong breadboard, at ang mga binti ay mahigpit na naipasok. Madaling yumuko ang mga ito kapag pinindot mo nang husto, kaya mag-ingat habang pinipindot mo ang pindutan.

Hakbang 4: Ibagsak ang Iyong Button

Ibaba ang Iyong Button
Ibaba ang Iyong Button

Ikonekta ang pindutan sa lupa sa pamamagitan ng pagpasok ng isang dulo sa parehong hilera bilang tuktok na binti ng iyong pindutan, at ang iba pang mga dulo sa negatibong hilera na dati mong nakakonekta sa lupa.

Hakbang 5: Ikonekta ang Iyong Button

Ikonekta ang Iyong Button
Ikonekta ang Iyong Button

Isara ang circuit ng pindutan at payagan ang Arduino na basahin ang input nito sa pamamagitan ng pagkonekta ng isang kawad mula sa parehong hilera tulad ng ibabang pindutan ng binti, at i-pin ang 7 sa Arduino.

Hakbang 6: Ipasok ang Iyong Buzzer

Ipasok ang Iyong Buzzer
Ipasok ang Iyong Buzzer

Ipasok ang iyong buzzer upang ang tanda na + 'sa tuktok, o ang bahagyang mas mahaba na binti, ay nasa parehong bahagi ng breadboard bilang iyong kawad na nakakonekta sa 5V.

Hakbang 7: Ibaba ang Buzzer

Ground the Buzzer
Ground the Buzzer

Ikonekta ang pindutan sa lupa gamit ang isang kawad mula sa parehong hilera ng mas maikli nitong binti sa negatibong linya sa breadboard na dati mong nakakonekta sa GND.

Hakbang 8: Lakasin ang Buzzer

Lakasin ang Buzzer
Lakasin ang Buzzer

Magbigay ng lakas sa buzzer at payagan ang Arduino na makontrol ito gamit ang isang kawad mula sa parehong hilera ng mas mahabang binti nito upang i-pin ang 8 sa Arduino.

Hakbang 9: Isulat ang Iyong Code

Isulat ang Iyong Code
Isulat ang Iyong Code

Kopyahin at i-paste ang aming code, o i-download ang nakalakip na file.

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 mahabang push_length, start_push, end_push; // oras kung aling pindutan ang pinindot int button = 7; // input pin for push button int buzzer = 8; // outpu pin para sa LED String code = ""; // string kung saan nakaimbak ang isang alpabeto

walang bisa ang pag-setup () {

Serial.begin (9600); pinMode (pindutan, INPUT_PULLUP); // internal na pullup resistor ay ginagamit upang gawing simple ang circuit pinMode (buzzer, OUTPUT); Serial.println ("Simulan ang iyong mensahe!"); }

walang bisa loop ()

{MorseTransmission: habang (digitalRead (button) == TAAS) {} start_push = millis (); // time at button press tone (buzzer, 150); habang (digitalRead (button) == LOW) {} end_push = millis (); // time at button release noTone (buzzer); push_length = end_push - start_push; // oras kung aling pindutan ang pinindot kung (push_length> 50) {// sa account para sa switch debouncing code + = dot_or_dash (push_length); // function to read dot or dash} habang ((millis () - end_push) <500) // kung ang oras sa pagitan ng pindutan ay pindutin ang higit sa 0.5sec, laktawan ang loop at pumunta sa susunod na alpabeto {kung (digitalRead (button) == LOW) {goto MorseTransmission; }} Morse_translation (code); // function to decipher code into alphabet}

char dot_or_dash (haba ng float)

{kung (haba ng 50) {return '.'; // kung ang pindutan ay pindutin nang mas mababa sa 0.6sec, ito ay isang tuldok} iba pa kung (haba> 600) {return '-'; // if button press more than 0.6sec, it is a dash}}

walang bisa Morse_translation (String morsecode)

{int i = 0; kung (code == ".-.-.-") {Serial.print ("."); // for break} else {habang (Morse ! = "E") // loop para sa paghahambing ng input code na may mga array ng titik {if (Morse == morsecode) {Serial.print (Alphabet ); pahinga; } i ++; } kung (Morse == "E") {Serial.println ("Error!"); // kung ang input code ay hindi tumutugma sa anumang titik, error}} code = ""; // reset code to blank string}

Hakbang 10: Gamitin ang Serial Monitor upang Basahin ang Iyong Output

Gamitin ang Serial Monitor upang Basahin ang Iyong Output!
Gamitin ang Serial Monitor upang Basahin ang Iyong Output!

Buksan ang serial monitor upang matingnan ang iyong mga mensahe habang pinindot ang pindutan upang lumikha ng Morse Code. Gamitin ang patnubay sa itaas upang magkakasunud-sunod ng iyong mga tuldok at gitling nang naaangkop!

Hakbang 11: Gusto mo ba ng Maraming Mga Proyekto na Tulad nito?

Gusto mo ba ng Maraming Mga Proyekto na Tulad nito?
Gusto mo ba ng Maraming Mga Proyekto na Tulad nito?

Kumuha ng mga bahagi para sa 2-3 na mga proyekto bawat buwan at mga tagubilin at video upang maitayo ang mga ito sa MakeCrate!

Inirerekumendang: