Taula de continguts:
- Pas 1: subministreu energia a la vostra taula de pa
- Pas 2: connecteu a terra el tauler de pa
- Pas 3: Inseriu el botó
- Pas 4: connecteu a terra el botó
- Pas 5: connecteu el botó
- Pas 6: Inseriu el vostre timbre
- Pas 7: connecteu a terra el brunzidor
- Pas 8: engegueu el brunzidor
- Pas 9: escriviu el vostre codi
- Pas 10: utilitzeu el monitor de sèrie per llegir la vostra sortida
- Pas 11: voleu més projectes com aquest?
2025 Autora: John Day | [email protected]. Última modificació: 2025-01-13 06:57
En aquesta instrucció, faràs servir un Arduino Uno per crear un transmissor de codi Morse i utilitzaràs el monitor sèrie per llegir els missatges que has transmès.
Peces que necessiteu:
Arduino Uno
Taula de pa
Zumbador
Botons
Filferros de pont
Pas 1: subministreu energia a la vostra taula de pa
Connecteu un cable de pont des del pin de 5V del vostre Arduino Uno a la línia positiva de la vostra taula.
Pas 2: connecteu a terra el tauler de pa
Ara connecteu un cable des de qualsevol dels pins GND de l'Arduino a la línia negativa de la vostra taula.
Pas 3: Inseriu el botó
Introduïu el botó. Assegureu-vos que dues de les seves potes estiguin a cada costat del canal pel centre de la tauleta de suport i que les potes estiguin inserides fermament. És fàcil doblar-les quan premeu amb força, així que tingueu cura mentre premeu el botó cap avall.
Pas 4: connecteu a terra el botó
Connecteu el botó a terra inserint un extrem a la mateixa fila que la part superior del botó i l’altre extrem a la fila negativa que prèviament havíeu connectat a terra.
Pas 5: connecteu el botó
Tanqueu el circuit de botons i deixeu que l'Arduino llegeixi la seva entrada connectant un cable de la mateixa fila que la cama inferior del botó i el pin 7 de l'Arduino.
Pas 6: Inseriu el vostre timbre
Introduïu el timbre de manera que el signe "+" a la part superior o la cama lleugerament més llarga estigui al mateix costat de la placa de connexió que el cable connectat a 5V.
Pas 7: connecteu a terra el brunzidor
Connecteu el botó a terra amb un cable de la mateixa fila que la seva cama més curta a la línia negativa de la placa de connexió que heu connectat prèviament a GND.
Pas 8: engegueu el brunzidor
Subministreu energia al brunzidor i permeteu que Arduino el controli amb un cable de la mateixa fila que la seva cama més llarga fins al pin 8 de l’Arduino.
Pas 9: escriviu el vostre codi
Copieu i enganxeu el nostre codi o descarregueu el fitxer adjunt.
static String Morse = {".-", "- …", "-.-.", "-..", ".", "..-.", "-.", "…. ",".. ",".--- "," -.- ",".-.. "," - "," -. "," --- ",".--. ", "--.-", ".-.", "…", "-", "..-", "… -", ".--", "-..-", "-.-- "," -.. "," E "};
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'}; longitud sense signar push_larg, start_push, end_push; // hora durant la qual es prem el botó int button = 7; // pin d'entrada per al botó int zumbador = 8; // pin de sortida per al codi de cadena LED = ""; // cadena en què es guarda un alfabet
configuració nul·la () {
Serial.begin (9600); pinMode (botó, INPUT_PULLUP); // la resistència interna de tracció s’utilitza per simplificar el pinMode del circuit (brunzidor, OUTPUT); Serial.println ("Comenceu el vostre missatge!"); }
bucle buit ()
{MorseTransmission: while (digitalRead (button) == HIGH) {} start_push = millis (); // temps al to de premuda del botó (brunzidor, 150); while (digitalRead (button) == BAIX) {} end_push = millis (); // hora de llançament del botó noTone (brunzidor); push_length = end_push - start_push; // hora durant la qual es prem el botó si (push_length> 50) {// per tenir en compte el codi de commutació del debouncing + = dot_or_dash (push_length); // funció per llegir punt o guió} mentre ((millis () - end_push) <500) // si el temps entre el botó prem més de 0,5 segons, salta el bucle i vés al següent alfabet {if (digitalRead (botó) == BAIX) {anar a MorseTransmission; }} Morse_translation (codi); // funció per desxifrar el codi en alfabet}
char dot_or_dash (longitud flotant)
{if (longitud 50) {return '.'; // si el botó prem menys de 0,6 segons, és un punt} else if (longitud> 600) {return '-'; // si el botó prem més de 0,6 segons, és un guió}}
void Morse_translation (morsecode de cadena)
{int i = 0; if (codi == ".-.-.-") {Serial.print ("."); // per a la pausa} else {while (Morse ! = "E") // bucle per comparar el codi d'entrada amb la matriu de lletres {if (Morse == codi mors) {Serial.print (Alfabet ); trencar; } i ++; } if (Morse == "E") {Serial.println ("Error!"); // si el codi d'entrada no coincideix amb cap lletra, error}} codi = ""; // restableix el codi a una cadena en blanc}
Pas 10: utilitzeu el monitor de sèrie per llegir la vostra sortida
Obriu el monitor sèrie per veure els vostres missatges mentre premeu el botó per crear el codi Morse. Utilitzeu la guia anterior per seqüenciar els punts i els guions de manera adequada.
Pas 11: voleu més projectes com aquest?
Obteniu peces per a 2-3 projectes al mes i instruccions i vídeos per crear-los amb MakeCrate.