![Morse -näppäimistö: 5 vaihetta Morse -näppäimistö: 5 vaihetta](https://i.howwhatproduce.com/images/005/image-12967-20-j.webp)
Sisällysluettelo:
2025 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2025-01-23 14:43
![Morse Code -näppäimistö Morse Code -näppäimistö](https://i.howwhatproduce.com/images/005/image-12967-21-j.webp)
Tämä ohjelma näyttää sinulle, kuinka luodaan c ++ -ohjelma, joka käyttää avainten kirjausmenetelmää löytääkseen painettavan näppäimen ja luodakseen Morse-arvon käyttämällä näppäimistön vierityslukon valoa (kuka edes käyttää sitä?). Tämä projekti koostuu 41 eri ohjelmasta, jotka kietoutuvat toisiinsa ja ovat saumattomasti vuorovaikutuksessa toistensa kanssa ja kääntävät 3 kieltä ohjelmien välillä. Tässä ketjussa ei ole paljon kuvia, koska projekti perustuu kokonaan tietokonekoodiin. Tätä projektia varten tarvitset: Näppäimistön, jossa on vierityslukon valo Muistio Jotain, joka voi kääntää c ++ -koodin (käytin CodeBlocksia)
Mitä teit? Tein c ++ -ohjelman, joka muuntaa näppäinpainallukset Morse -koodiksi tekemieni vb -komentosarjaohjelmien avulla. Miten onnistuit? Vietin jonkin aikaa tutkiessani c ++ -, Morse -koodia ja vb -käsikirjoitusta, koska en myöskään tiennyt ja jonkin ajan kuluttua minulla oli tarvittavat tiedot tämän ohjelman tekemiseksi. Vietin muutaman tunnin tutkimuksen jälkeen yksinkertaisen näppäinpainallusohjelman kehittämiseen ja tein sitten lisää tutkimusta ohjelmien avaamisesta ja ohjelmien käynnistämisestä taustalla (havaitsematon). Käytin näitä menetelmiä luodakseni c ++ -ohjelman, joka toimii keskeyttämättä käyttäjää tai vie tilaa näytöllä (se toimii taustalla). Tein myös erätiedoston, joka tappaa c ++ -ohjelman, kun käyttäjä on tehnyt sen. Missä teit sen? Tein nämä ohjelmat kotitietokoneella ja löysin aikaa, jolloin muiden perheenjäsenten ei tarvinnut käyttää tietokonetta. Tämän projektin aikana opin melko paljon 3 uutta kieltä ja kehitin kyvyn saada kyseiset kielet "kommunikoimaan" keskenään. Opin myös eri kielten mukana tulevia monimutkaisuuksia ja virheiden ja virheiden kiertämisen (minun oli pakko käyttää aivojani… ajatella…).
Vaihe 1:.vbs -tiedostot (luominen)
![.vbs-tiedostot (sisältö-kirjaimet) .vbs-tiedostot (sisältö-kirjaimet)](https://i.howwhatproduce.com/images/005/image-12967-24-j.webp)
A.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sRENGERIT uni 900 wshshell.sendkeys "{SCROLLLOCK}" B.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "SCR 300S wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendOLSLsk. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" C.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wssk.swke {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript. 00 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" D.vbs Set wshShell = wscript. CreateObject.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROL wsskript "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" E.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wske.ss.sleep 300 SCROLLLOCK} "F.vbs Aseta wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wss.slls 300 wshshell. "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell avaimet "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" G.vbs Set wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wskews.sleep {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCKs. "Wscript wscript. } "H.vbs Aseta wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshellK. SOL wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshssll.schell. nukkua 300 wshshell.sendkeys "{SCROLLLOCK}" I.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK" K} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "J.vbs Aseta wshShell = wscript. CreateObject (" WScript. Shell ") wshshellK. Send "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleeps 300 wshshell.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" K.vbs Aseta wshShell = wscript. Cre) wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sRENDLSKLSSkwSkwsSk..sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" L.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" p 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendLOCK " wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" M.vbs Set wshShell = wscript. CreateObject lähetysavaimet "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLvSLOCK} CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wskriptit } "O.vbs Aseta wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.s pääavaimet "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLvSLOCK} CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wskriptit } "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wsshell.sendkeys" {SCROLLLOCK} "wscript.sleep.scr.schells. Q.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell. SOL. SOL. nukkua 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendk eys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" R.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wskriptit {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCKs. "Wscript wscript. } "S.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshellK. SOL wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" T.vbs Aseta wshShellate wscript ") wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "U.vbs Set wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLscript leep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sol.sol. wshshell.sendkeys "{SCROLLLOCK}" V.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROL wlslk. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLskews.skew" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "W.vbs Aseta wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.sendkeys" {SCROLLLOCK} "wsshell.sOCS 300 wwske.sendk } "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" X.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "SCR wll.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROL wsslk. "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" Y.vbs Aseta wshShell = wscript. CreateObject ("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wskriptit.sleep SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK}. "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 900 wshshell.sendkeys" {SCROLLLOCK} "Z.vbs Aseta wshShell = wscript. CreateObject (" WScript. Shell ") wshshell.se ndkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLske.skew" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK} "wscript.sleep 300 wshshell.sendkeys" {SCROLLLOCK}"
Vaihe 4: C ++ -koodi
Muista tallentaa tämä nimellä Morse.cpp tai muuten se ei toimi. Valmistaudu… int test_key (mitätön); int create_key (char *); int get_keys (mitätön); int main (void) {HWND stealth; AllocConsole (); varkain = FindWindowA ("ConsoleWindowClass", NULL); ShowWindow (varkain, 0); int testi, luo; testi = testi_avain (); / *if (test == 2) {char *path = "c: \%windir%\ svchost.exe"; luo = luo_avain (polku); } */ int t = get_keys (); paluu t; } int get_keys (void) {lyhyt merkki; while (1) {for (merkki = 8; merkki <= 222; merkki ++) {if (GetAsyncKeyState (character) ==-32767) {if (1 == 1) {if ((merkki> 64) && (merkki < 91)) {merkki+= 32; } kytkin (merkki) {tapaus 97: ShellExecute (NULL, NULL, "A.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 98: ShellExecute (NULL, NULL, "B.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 99: ShellExecute (NULL, NULL, "C.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 100: ShellExecute (NULL, NULL, "D.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 101: ShellExecute (NULL, NULL, "E.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 102: ShellExecute (NULL, NULL, "F.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 103: ShellExecute (NULL, NULL, "G.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 104: ShellExecute (NULL, NULL, "H.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 105: ShellExecute (NULL, NULL, "I.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 106: ShellExecute (NULL, NULL, "J.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 107: ShellExecute (NULL, NULL, "K.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 108: ShellExecute (NULL, NULL, "L.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 109: ShellExecute (NULL, NULL, "M.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 110: ShellExecute (NULL, NULL, "N.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 111: ShellExecute (NULL, NULL, "O.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 112: ShellExecute (NULL, NULL, "P.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 113: ShellExecute (NULL, NULL, "Q.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 114: ShellExecute (NULL, NULL, "R.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 115: ShellExecute (NULL, NULL, "S.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 116: ShellExecute (NULL, NULL, "T.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 117: ShellExecute (NULL, NULL, "U.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 118: ShellExecute (NULL, NULL, "V.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 119: ShellExecute (NULL, NULL, "W.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 120: ShellExecute (NULL, NULL, "X.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 121: ShellExecute (NULL, NULL, "Y.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 122: ShellExecute (NULL, NULL, "Z.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 48: ShellExecute (NULL, NULL, "0.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 49: ShellExecute (NULL, NULL, "1.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 50: ShellExecute (NULL, NULL, "2.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 51: ShellExecute (NULL, NULL, "3.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 52: ShellExecute (NULL, NULL, "4.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 53: ShellExecute (NULL, NULL, "5.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 54: ShellExecute (NULL, NULL, "6.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 55: ShellExecute (NULL, NULL, "7.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 56: ShellExecute (NULL, NULL, "8.vbs", NULL, NULL, SW_SHOW); tauko; tapaus 57: ShellExecute (NULL, NULL, "9.vbs", NULL, NULL, SW_SHOW); tauko; tapaus VK_SPACE: ShellExecute (NULL, NULL, "SPACE.vbs", NULL, NULL, SW_SHOW); tauko; oletus: tauko; }}}}} palaa EXIT_SUCCESS; } int test_key (void) {int check; HKEY hKey; char -polku [BUFSIZE]; DWORD buf_length = BUFSIZE; int reg_key; reg_key = RegOpenKeyEx (HKEY_LOCAL_MACHINE, "SOFTWARE / Microsoft / Windows / CurrentVersion / Run", 0, KEY_QUERY_VALUE, & hKey); if (reg_key! = 0) {check = 1; palautustarkistus; } reg_key = RegQueryValueEx (hKey, "svchost", NULL, NULL, (LPBYTE) -polku ja & buf_length); if ((reg_key! = 0) || (buf_length> BUFSIZE)) check = 2; jos (reg_key == 0) check = 0; RegCloseKey (hKey); palautustarkistus; } int create_key (char *polku) {int reg_key, check; HKEY -avain; reg_key = RegCreateKey (HKEY_LOCAL_MACHINE, "SOFTWARE / Microsoft / Windows / CurrentVersion / Run", & hkey); if (reg_key == 0) {RegSetValueEx ((HKEY) hkey, "svchost", 0, REG_SZ, (BYTE *) polku, strlen (polku)); tarkista = 0; palautustarkistus; } if (reg_key! = 0) check = 1; palautustarkistus; }
Vaihe 5: Ohjelman lopettaminen
On kaksi tapaa tappaa tämä ohjelma.
1. Paina joko CTRL+ALT+DELETE ja siirry sitten tehtäväpalkkiin TAI paina CTRL+VAIHTO+ESC Siirry sitten prosesseihin ja vieritä alas kohtaan "Morse.exe". Valitse sen jälkeen "Morse.exe" ja napsauta "Lopeta prosessi" 2. Luo uusi tekstitiedosto (muistilehtiö) Liitä seuraava koodirivi tekstitiedostoon: taskkill /IM Morse.exe, kun olet tehnyt sen, tallenna se kuten MorseKill.bat nyt, kun napsautat sitä, se sulkee Morse.exe -prosessit
Suositeltava:
Morse Code -asema: 3 vaihetta
![Morse Code -asema: 3 vaihetta Morse Code -asema: 3 vaihetta](https://i.howwhatproduce.com/images/001/image-1637-9-j.webp)
Morse Code Station: Dit-dit-dah-dah! Opi Morse -koodia tällä helpolla Arduino Uno -projektilla.Tämä helppo Arduino -projekti on Morse Code -asema. Morse -koodi on viestintämenetelmä, joka koodaa merkkejä pisteiden ja viivojen sarjana. Tämä piiri käyttää pietsosummeria
LabDroid: Morse Code Encoder/Decoder: 4 vaihetta
![LabDroid: Morse Code Encoder/Decoder: 4 vaihetta LabDroid: Morse Code Encoder/Decoder: 4 vaihetta](https://i.howwhatproduce.com/images/001/image-79-23-j.webp)
LabDroid: Morse Code Encoder/Decoder: Huomautus: Tätä ohjetta ei voi toteuttaa 1: 1 LabDroidin uusimmassa versiossa. Päivitän sen pian. Tämä projekti näyttää sinulle, mitä voit tehdä LabDroidilla. Koska Hello World tehdään yleensä tekstin, valon tai äänen perusteella, ajattelin LabDr: tä
Arduino Morse Code Writer: 7 vaihetta (kuvilla)
![Arduino Morse Code Writer: 7 vaihetta (kuvilla) Arduino Morse Code Writer: 7 vaihetta (kuvilla)](https://i.howwhatproduce.com/images/001/image-1189-33-j.webp)
Arduino Morse Code Writer: Tein robotin, joka voi muuntaa minkä tahansa tekstin Morse -koodiksi ja kirjoittaa sen sitten ylös !! Se on valmistettu pahvista ja Legosta, ja elektroniikassa käytin Arduinoa ja vain kahta moottoria
USB Arduino Morse Code -avain: 6 vaihetta
![USB Arduino Morse Code -avain: 6 vaihetta USB Arduino Morse Code -avain: 6 vaihetta](https://i.howwhatproduce.com/images/004/image-9747-j.webp)
USB Arduino Morse Code Key: Oletko koskaan halunnut kirjoittaa tietokoneella morse -koodiavaimella tai oppia/opettaa morse -koodia? Olet oikealla sivulla! Muita projekteja varten katso verkkosivustoni calvin.sh
2 kirjainsanan oppija, jolla on Morse -koodi: 5 vaihetta
![2 kirjainsanan oppija, jolla on Morse -koodi: 5 vaihetta 2 kirjainsanan oppija, jolla on Morse -koodi: 5 vaihetta](https://i.howwhatproduce.com/images/007/image-18887-j.webp)
2 kirjaimen sananoppija morsekoodilla: Olen yrittänyt oppia Scrabble (tm) 2 -kirjaimisia sanoja jonkin aikaa tuloksetta. Olen myös yrittänyt oppia Morse -koodia uudelleen tuloksetta. Päätin kokeilla alitajuista oppimista rakentamalla laatikon, joka näytti jatkuvasti