Isi kandungan:

Pemancar Kod Arduino Morse: 11 Langkah
Pemancar Kod Arduino Morse: 11 Langkah

Video: Pemancar Kod Arduino Morse: 11 Langkah

Video: Pemancar Kod Arduino Morse: 11 Langkah
Video: DIY Radar With Ultrasonic Sensor And Chat-GPT Generated Arduino Code | Coders Cafe 2024, November
Anonim
Pemancar Kod Arduino Morse
Pemancar Kod Arduino Morse
Pemancar Kod Arduino Morse
Pemancar Kod Arduino Morse

Dalam arahan ini, anda akan menggunakan Arduino Uno untuk membuat pemancar Morse Code, dan menggunakan monitor bersiri untuk membaca mesej yang telah anda kirimkan.

Bahagian yang anda perlukan:

Arduino Uno

Papan roti

Buzzer

Butang

Wayar pelompat

Langkah 1: Berikan Kuasa ke Papan Roti Anda

Berikan Kuasa ke Papan Roti Anda
Berikan Kuasa ke Papan Roti Anda

Sambungkan wayar pelompat dari pin 5V pada Arduino Uno anda ke garis positif pada papan roti anda.

Langkah 2: Arahkan Papan Roti Anda

Tanah Papan Roti Anda
Tanah Papan Roti Anda

Sekarang sambungkan wayar dari mana-mana pin GND di Arduino ke garis negatif di papan roti anda.

Langkah 3: Masukkan Butang Anda

Masukkan Butang Anda
Masukkan Butang Anda

Masukkan butang anda. Pastikan dua kakinya berada di setiap sisi saluran di tengah papan roti anda, dan kaki dimasukkan dengan kuat. Mudah membengkokkannya ketika anda menekan dengan kuat, jadi berhati-hatilah semasa anda menekan butang.

Langkah 4: Arahkan Butang Anda

Tanah Butang Anda
Tanah Butang Anda

Sambungkan butang ke tanah dengan memasukkan satu hujung ke baris yang sama dengan bahagian atas butang anda, dan ujung yang lain ke baris negatif yang sebelumnya anda sambungkan ke tanah.

Langkah 5: Sambungkan Butang Anda

Sambungkan Butang Anda
Sambungkan Butang Anda

Tutup litar butang dan biarkan Arduino membaca inputnya dengan menyambungkan wayar dari baris yang sama dengan kaki butang bawah, dan pin 7 pada Arduino.

Langkah 6: Masukkan Buzzer Anda

Masukkan Buzzer Anda
Masukkan Buzzer Anda

Masukkan bel anda supaya tanda + 'di bahagian atas, atau kaki yang sedikit lebih panjang, berada di sisi papan roti yang sama dengan wayar anda yang disambungkan ke 5V.

Langkah 7: Arahkan Buzzer

Arahkan Buzzer
Arahkan Buzzer

Sambungkan butang ke tanah dengan wayar dari baris yang sama dengan kakinya yang lebih pendek ke garis negatif pada papan roti yang sebelumnya anda sambungkan ke GND.

Langkah 8: Kuasa Buzzer

Kuasa Buzzer
Kuasa Buzzer

Berikan kuasa ke bel dan biarkan Arduino mengendalikannya dengan wayar dari barisan yang sama dengan kaki yang lebih panjang hingga pin 8 di Arduino.

Langkah 9: Tulis Kod Anda

Tuliskan Kod Anda
Tuliskan Kod Anda

Salin dan tampal kod kami, atau muat turun fail yang dilampirkan.

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

char static 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'}; push_length panjang yang tidak ditandatangani, start_push, end_push; // masa butang mana yang ditekan int = 7; // pin input untuk butang tekan int buzzer = 8; // pin outpu untuk LED String code = ""; // rentetan di mana satu abjad disimpan

batal persediaan () {

Serial.begin (9600); pinMode (butang, INPUT_PULLUP); // perintang penarik dalaman digunakan untuk mempermudahkan rangkaian pinMode (buzzer, OUTPUT); Serial.println ("Mulakan mesej anda!"); }

gelung kosong ()

{MorseTransmission: while (digitalRead (butang) == TINGGI) {} start_push = millis (); // masa pada nada tekan butang (buzzer, 150); sementara (digitalRead (butang) == RENDAH) {} end_push = millis (); // waktu di butang pelepas noTone (buzzer); push_length = end_push - start_push; // masa butang mana yang ditekan jika (push_length> 50) {// untuk memperhitungkan pertukaran kod pengumuman + = dot_or_dash (push_length); // berfungsi untuk membaca titik atau tanda hubung} sementara ((milis () - end_push) <500) // jika waktu antara butang tekan lebih besar dari 0.5sec, langkau gelung dan pergi ke abjad seterusnya {if (digitalRead (butang) == RENDAH) {goto MorseTransmission; }} Morse_translation (kod); // berfungsi untuk menguraikan kod menjadi abjad}

char dot_or_dash (panjang apungan)

{if (panjang 50) {kembali '.'; // jika tekan butang kurang dari 0.6sec, itu adalah titik} yang lain jika (panjang> 600) {return '-'; // jika butang menekan lebih dari 0.6sec, itu adalah tanda sempang}}

batal Morse_translation (String morsecode)

{int i = 0; jika (kod == ".-.-.-") {Serial.print ("."); // untuk break} else {while (Morse ! = "E") // gelung untuk membandingkan kod input dengan susunan huruf {if (Morse == morsecode) {Serial.print (Alphabet ); rehat; } saya ++; } if (Morse == "E") {Serial.println ("Ralat!"); // jika kod input tidak sepadan dengan huruf apa pun, error}} code = ""; // tetapkan semula kod ke rentetan kosong}

Langkah 10: Gunakan Monitor Serial untuk Membaca Hasil Anda

Gunakan Monitor Serial untuk Membaca Hasil Anda!
Gunakan Monitor Serial untuk Membaca Hasil Anda!

Buka monitor bersiri untuk melihat mesej anda semasa anda menekan butang untuk membuat Morse Code. Gunakan panduan di atas untuk menyusun titik dan tanda sempang anda dengan betul!

Langkah 11: Mahukan Lebih Banyak Projek Seperti Ini?

Mahukan Lebih Banyak Projek Seperti Ini?
Mahukan Lebih Banyak Projek Seperti Ini?

Dapatkan bahagian untuk 2-3 projek sebulan dan arahan dan video untuk membuatnya dengan MakeCrate!

Disyorkan: