Arduino: izveidojiet Morse tulkotājus - kā tas darbojas
Šajā praktiskajā padomā jūs uzzināsit, kā jūs varat viegli izveidot Morse tulku ar savu Arduino.
Morse tulku veidošana kopā ar Arduino - tas ir nepieciešams
Pirmkārt, protams, jums ir nepieciešams Arduino.
- Jums vajadzētu arī iegūt aktīvo signālu un gaismas diodi.
- Savienojiet signālu ar 9. piespraudi un gaismas signālu - ar 13. kontaktu.
Arduino: programmas Morzes tulks
Šeit mēs jums esam ieprogrammējuši nelielu koda kodu, kuru esat laipni aicināts izmantot. Vienkārši augšupielādējiet to Arduino un sāciet seriālo monitoru.
- #definēt atkļūdošana patiesa
- int ledPin = 13;
- int speakerPin = 9;
- int piķis1 = 140;
- int piķis2 = 140;
- int punkts = 50;
- int domuzīme = 3 * punkts;
- Stīga morsePieejams [] = {".-", "-...", "-.-.", "- ..", ".", "..-.", "-.", ". ... ", " .. ", " .--- ", " _._ ", " .- .. ", " - ", " -. ", " --- ", " .-- . ", " --.- ", " .-. ", " ... ", " - ", " ..- ", " ...- ", " .-- ", " -..- ", " -.-- ", " - .. "};
- Stīga morseNTable [] = {"-----", ".----", "..---", "...--", "....-", "... .. ", " -.... ", " --... ", " --- .. ", " ----. "};
- Nederīga iestatīšana () {
- pinMode (ledPin, OUTPUT);
- pinMode (speakerPin, OUTPUT);
- Serial.begin (9600);
- if (atkļūdošana) {
- Serial.println ( "\ nsāciet");}
- }
- tukšs cilpa () {
- ja (taisnība) {
- convert2Morse (Serial.readString ());
- }
- }
- void convert2Morse (virknes ziņojums) {
- for (int pos = 0; pos <message.length (); pos ++) {
- if (atkļūdošana) {
- Serial.print (message.charAt (POS));
- Serial.print ("");
- }
- if ((message.charAt (pos)> = 97) && (message.charAt (pos) <= 122)) {
- morseLED (morseATable [message.charAt (POS) -97]);}
- if ((message.charAt (pos)> = 48) && (message.charAt (pos) <= 57)) {
- morseLED (valzirgs tabula [ziņojums [pos] -48]);}
- if (message.charAt (pos) == 32) {
- morseLED ("");}
- if (atkļūdošana) {
- Serial.println ();
- }
- }}
- void morseLED (stīgu secība) {
- priekš (int pos = 0; pos <secība.length (); pos ++) {
- FlashLED (sequence.charAt (POS));}
- kavēšanās (2 * punkts);
- }
- nav spēkā flashLED (char dotOrDash) {
- if (atkļūdošana) {
- Serial.print (dotOrDash);}
- if (dotOrDash == 46) {
- digitalWrite (ledPin, HIGH);
- signāls (speakerPin, pitch1);
- kavēšanās (punkts);
- digitalWrite (ledPin, LOW);
- noTone (speakerPin);
- kavēšanās (punkts);
- } cits, ja (dotOrDash == 45) {
- digitalWrite (ledPin, HIGH);
- signāls (speakerPin, pitch2);
- kavēšanās (domuzīme);
- digitalWrite (ledPin, LOW);
- noTone (speakerPin);
- kavēšanās (punkts);
- } cits, ja (dotOrDash == 32) {
- aizture (dot);}
- }
Nākamajā praktiskajā padomā mēs parādīsim, kā jūs varat izmantot GSM moduli Arduino.