Агуулгын хүснэгт:

Arduino Morse код дамжуулагч: 11 алхам
Arduino Morse код дамжуулагч: 11 алхам

Видео: Arduino Morse код дамжуулагч: 11 алхам

Видео: Arduino Morse код дамжуулагч: 11 алхам
Видео: REAL RACING 3 LEAD FOOT EDITION 2024, Долдугаар сарын
Anonim
Arduino Morse код дамжуулагч
Arduino Morse код дамжуулагч
Arduino Morse код дамжуулагч
Arduino Morse код дамжуулагч

Энэхүү зааварчилгаанд та Arduino Uno ашиглан Морз кодын дамжуулагч үүсгэж, дамжуулсан мессежийг уншихын тулд цуваа дэлгэцийг ашиглана уу.

Танд хэрэгтэй эд ангиуд:

Ардуино Уно

Талхны самбар

Дуу чимээ

Товчлуурууд

Холбогч утас

Алхам 1: Breadboard -ийг хүчээр хангах

Талхны самбарыг хүчээр хангах
Талхны самбарыг хүчээр хангах

Arduino Uno дээрх 5V зүү бүхий холбогч утсыг талхны самбар дээрх эерэг шугам руу холбоно уу.

Алхам 2: Талхны самбараа байрлуул

Breadboard -ийг газардуул
Breadboard -ийг газардуул

Одоо Arduino дээрх GND тээглүүрээс утсыг талхны самбар дээрх сөрөг шугам руу холбоно уу.

Алхам 3: Товчлуураа оруулна уу

Товчлуураа оруулна уу
Товчлуураа оруулна уу

Товчлуураа оруулна уу. Түүний хоёр хөл нь талхны тавцангийн дундуур сувагны хоёр талд байрлаж, хөлийг нь чанга суулгасан эсэхийг шалгаарай. Хүчтэй дарахад тэдгээрийг нугалахад хялбар байдаг тул товчлуурыг дарахдаа болгоомжтой байгаарай.

Алхам 4: Товчлуураа дар

Товчлуураа дар
Товчлуураа дар

Товчны дээд хөлтэй нэг эгнээнд нэг үзүүрийг, нөгөө үзүүрийг өмнө нь газартай холбосон сөрөг эгнээнд оруулснаар товчлуурыг газартай холбоно уу.

Алхам 5: Товчлуураа холбоно уу

Товчлуураа холбоно уу
Товчлуураа холбоно уу

Товчлуурын хэлхээг хааж, Arduino -д доод товчны хөлтэй ижил эгнээний утсыг холбож оролтыг уншихыг зөвшөөрч, Arduino дээрх 7 -р зүүг оруулна уу.

Алхам 6: Баззераа оруулна уу

Баззераа оруулна уу
Баззераа оруулна уу

Дуут дохиогоо тавь, ингэснээр дээд талын "+" тэмдэг эсвэл бага зэрэг урт хөл нь 5В -т холбогдсон утсандаа талхны тавцангийн нэг талд байх болно.

Алхам 7: Баззерыг газардуул

Buzzer -ийг газардуул
Buzzer -ийг газардуул

Богино хөлтэй ижил эгнээний утсаар товчлуурыг өмнө нь GND -т холбосон талхны самбар дээрх сөрөг шугам руу холбоно уу.

Алхам 8: Баззерыг асаах

Buzzer -ийг асаах
Buzzer -ийг асаах

Дуут дохиог хүчээр хангаж, Arduino -г урт хөлтэй нь ижил эгнээний утсаар удирдахыг зөвшөөрнө үү.

Алхам 9: Кодоо бичнэ үү

Кодоо бичнэ үү
Кодоо бичнэ үү

Манай кодыг хуулж буулгах эсвэл хавсаргасан файлыг татаж аваарай.

статик String Морз = {".-", "-…", "-.-.", "-..", ".", "..-.", "-.", "…. ",".. ",".--- "," -.- ",".-.. ","-","-. "," --- ",".--. ", "--.-", ".-.", "…", "-", "..-", "…-", ".--", "-..-", "-.-- ","-.. "," E "};

статик 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'}; гарын үсэг зураагүй урт push_length, start_push, end_push; // int товчлуур дарагдах хугацаа int товч = 7; // int buzzer товчлуурын товчлуурын оролтын пин = 8; // LED String кодын гаралтын зүү = ""; // нэг үсэг хадгалагдсан мөр

хүчингүй тохиргоо () {

Цуваа эхлэх (9600); pinMode (товчлуур, INPUT_PULLUP); // дотоод татах эсэргүүцэл нь хэлхээний pinMode (дуугаралт, OUTPUT) -ийг хялбарчлахад ашиглагддаг; Serial.println ("Зурвасаа эхлүүл!"); }

хоосон давталт ()

{MorseTransmission: while (digitalRead (button) == HIGH) {} start_push = millis (); // товчлуур дарах цаг (дуугаралт, 150); while (digitalRead (button) == LOW) {} end_push = millis (); // товчлуурыг гаргах цаг noTone (дуугаралт); push_length = end_push - start_push; // товчлуур дарагдсан хугацаа (хэрэв push_length> 50) {// сэлгэх дансны кодыг тооцох бол += dot_or_dash (push_length); // цэг эсвэл зураасыг унших функц} байхад ((millis () - end_push) <500) // товчлуурын хоорондох хугацаа 0.5сек -ээс их байвал давталтыг алгасаад дараагийн үсэг рүү орно уу {if (digitalRead (button) == LOW)) {goto MorseTransmission; }} Морзын орчуулга (код); // кодыг цагаан толгой болгон задлах функц}

char dot_or_dash (хөвөх урт)

{if (урт 50) {буцах '.'; // хэрэв 0.6 сек-ээс бага товчлуур дарвал энэ нь цэг} өөр if (урт> 600) {буцах '-'; // хэрэв товчлуур 0.6сек -ээс дээш дарвал энэ нь зураас болно}}

хүчингүй Morse_translation (String morsecode)

{int i = 0; if (code == ".-.-.-") {Serial.print ("."); // for break} else {while (Morse ! = "E") // оролтын кодыг үсэг массивтай харьцуулах гогцоо {if (Morse == morsecode) {Serial.print (Alphabet ); завсарлага; } би ++; } if (Морз == "E") {Serial.println ("Алдаа!"); // хэрэв оролтын код ямар ч үсэгтэй таарахгүй байвал алдаа}} код = ""; // кодыг хоосон мөр болгон дахин тохируулах}

Алхам 10: Үр дүнг уншихын тулд цуваа мониторыг ашиглана уу

Үр дүнг уншихын тулд цуваа мониторыг ашиглана уу!
Үр дүнг уншихын тулд цуваа мониторыг ашиглана уу!

Морзын код үүсгэхийн тулд товчлуурыг дарж зурвасуудаа үзэхийн тулд цуваа дэлгэцийг нээнэ үү. Дээрх гарын авлагыг ашиглан цэг, зураасаа зохих ёсоор дарааллаар нь байрлуулна уу!

Алхам 11: Үүнтэй төстэй олон төсөл хүсч байна уу?

Ийм олон төсөл хүсч байна уу?
Ийм олон төсөл хүсч байна уу?

Сар бүр 2-3 төслийн эд анги, MakeCrate ашиглан бүтээх заавар, видеог аваарай!

Зөвлөмж болгож буй: