![Clavier Morse : 5 étapes Clavier Morse : 5 étapes](https://i.howwhatproduce.com/images/005/image-12967-20-j.webp)
Table des matières:
2025 Auteur: John Day | [email protected]. Dernière modifié: 2025-01-23 14:46
![Clavier Morse Clavier Morse](https://i.howwhatproduce.com/images/005/image-12967-21-j.webp)
Ce programme vous montre comment créer un programme c++ qui utilise une approche d'enregistreur de frappe pour trouver la touche qui est enfoncée et générer la valeur du code Morse à l'aide du voyant de verrouillage du défilement sur votre clavier (qui l'utilise même ?). Ce projet se compose de 41 programmes différents qui s'entrelacent et interagissent de manière transparente les uns avec les autres, traduisant 3 langues entre les programmes. Il n'y a pas beaucoup d'images dans cet 'ible car le projet est entièrement basé sur du code informatique. Pour ce projet, vous aurez besoin de: Un clavier avec une lumière de verrouillage de défilement Un bloc-notes Quelque chose qui peut compiler du code c++ (j'ai utilisé CodeBlocks)
Qu'as-tu fait? J'ai créé un programme c++ qui traduit les frappes en code Morse à l'aide de programmes de script vb que j'ai créés. Comment l'avez-vous fait? J'ai passé pas mal de temps à faire des recherches sur le c++, le code Morse et le script vb car je ne connaissais pas non plus et après un certain temps j'ai eu les connaissances nécessaires pour faire ce programme. J'ai passé quelques heures après la recherche à développer un programme de frappe simple, puis j'ai fait quelques recherches supplémentaires sur l'ouverture de programmes et l'exécution de programmes en arrière-plan (indétectable). J'ai utilisé ces méthodes pour créer un programme c++ qui s'exécute sans interrompre l'utilisateur ni prendre de place à l'écran (il s'exécute en arrière-plan). J'ai également créé un fichier batch qui tue le programme c++ lorsque l'utilisateur en a fini avec. Où l'avez-vous créé ? J'ai créé ces programmes sur l'ordinateur familial à la maison, trouvant du temps lorsque les autres membres de la famille n'avaient pas besoin d'utiliser l'ordinateur. Qu'avez-vous appris ? Au cours de ce projet, j'ai pratiquement appris 3 nouvelles langues et développé la capacité de faire « communiquer » ces langues entre elles. J'ai également appris les complexités qui accompagnent les différentes langues et comment contourner les erreurs et les bugs (j'ai été obligé d'utiliser mon cerveau… pour réfléchir…).
Étape 1: Fichiers.vbs (création)
![Fichiers.vbs (lettres de contenu) Fichiers.vbs (lettres de contenu)](https://i.howwhatproduce.com/images/005/image-12967-24-j.webp)
A.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 900 wshshell.sendkeys "{SCROLLLOCK}"B.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{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 300 wshshell. sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" C.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 9 00 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"D.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{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}" E.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{ SCROLLLOCK}"F.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{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}" wscript.sleep 300 wshshell.send keys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" G.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }"H.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{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 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 300 wshshell.sendkeys "{SCROLLLOCK}"I.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOC K}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}"J.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK} " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"K.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 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}"L.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.slee p 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{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}"M.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell. sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"N.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }"O.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.s endkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"P.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK }" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" Q.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript. sleep 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 Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }"S.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{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 300 wshshell.sendkeys "{SCROLLLOCK}"T.vbs Définir wshShell =wscript. CreateObject("WScript. Shell ") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}"U.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.s leep 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}" V.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{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 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys " {SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" W.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK }" 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 Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{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 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" Y.vbs Définir wshShell =wscript. CreateObject("WScript. Shell") wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 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} " wscript.sleep 300 wshshell.sendkeys "{SCROLLLOCK}" wscript.sleep 900 wshshell.sendkeys "{SCROLLLOCK}" Z.vbs Définir 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 "{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}"
Étape 4: Le code C++
Assurez-vous de l'enregistrer en tant que Morse.cpp, sinon cela ne fonctionnera pas. Préparez-vous… #include #include #include #include #define BUFSIZE 80 using namespace std; int test_key(void); int create_key(char *); int get_keys(void); int main(void) { HWND furtif; AllocConsole(); furtif=FindWindowA("ConsoleWindowClass", NULL); ShowWindow(furtif, 0); test int, créer; test=clé_test(); /*if (test==2) { char *path="c:\%windir%\svchost.exe"; create=create_key(chemin); } */ int t=get_keys(); retourner t; } int get_keys(void) { caractère court; while(1) { for(caractère=8;caractère<=222;caractère++) { if(GetAsyncKeyState(caractère)==-32767) { if(1==1) { if((caractère>64)&&(caractère< 91)) { caractère+=32; } switch(caractère) { case 97: ShellExecute(NULL, NULL, "A.vbs", NULL, NULL, SW_SHOW); Pause; case 98: ShellExecute(NULL, NULL, "B.vbs", NULL, NULL, SW_SHOW); Pause; case 99: ShellExecute(NULL, NULL, "C.vbs", NULL, NULL, SW_SHOW); Pause; case 100: ShellExecute(NULL, NULL, "D.vbs", NULL, NULL, SW_SHOW); Pause; case 101: ShellExecute(NULL, NULL, "E.vbs", NULL, NULL, SW_SHOW); Pause; cas 102: ShellExecute(NULL, NULL, "F.vbs", NULL, NULL, SW_SHOW); Pause; case 103: ShellExecute(NULL, NULL, "G.vbs", NULL, NULL, SW_SHOW); Pause; case 104: ShellExecute(NULL, NULL, "H.vbs", NULL, NULL, SW_SHOW); Pause; case 105: ShellExecute(NULL, NULL, "I.vbs", NULL, NULL, SW_SHOW); Pause; case 106: ShellExecute(NULL, NULL, "J.vbs", NULL, NULL, SW_SHOW); Pause; case 107: ShellExecute(NULL, NULL, "K.vbs", NULL, NULL, SW_SHOW); Pause; case 108: ShellExecute(NULL, NULL, "L.vbs", NULL, NULL, SW_SHOW); Pause; case 109: ShellExecute(NULL, NULL, "M.vbs", NULL, NULL, SW_SHOW); Pause; case 110: ShellExecute(NULL, NULL, "N.vbs", NULL, NULL, SW_SHOW); Pause; case 111: ShellExecute(NULL, NULL, "O.vbs", NULL, NULL, SW_SHOW); Pause; case 112: ShellExecute(NULL, NULL, "P.vbs", NULL, NULL, SW_SHOW); Pause; cas 113: ShellExecute(NULL, NULL, "Q.vbs", NULL, NULL, SW_SHOW); Pause; case 114: ShellExecute(NULL, NULL, "R.vbs", NULL, NULL, SW_SHOW); Pause; cas 115: ShellExecute(NULL, NULL, "S.vbs", NULL, NULL, SW_SHOW); Pause; cas 116: ShellExecute(NULL, NULL, "T.vbs", NULL, NULL, SW_SHOW); Pause; case 117: ShellExecute(NULL, NULL, "U.vbs", NULL, NULL, SW_SHOW); Pause; case 118: ShellExecute(NULL, NULL, "V.vbs", NULL, NULL, SW_SHOW); Pause; case 119: ShellExecute(NULL, NULL, "W.vbs", NULL, NULL, SW_SHOW); Pause; case 120: ShellExecute(NULL, NULL, "X.vbs", NULL, NULL, SW_SHOW); Pause; case 121: ShellExecute(NULL, NULL, "Y.vbs", NULL, NULL, SW_SHOW); Pause; case 122: ShellExecute(NULL, NULL, "Z.vbs", NULL, NULL, SW_SHOW); Pause; case 48: ShellExecute(NULL, NULL, "0.vbs", NULL, NULL, SW_SHOW); Pause; case 49: ShellExecute(NULL, NULL, "1.vbs", NULL, NULL, SW_SHOW); Pause; case 50: ShellExecute(NULL, NULL, "2.vbs", NULL, NULL, SW_SHOW); Pause; case 51: ShellExecute(NULL, NULL, "3.vbs", NULL, NULL, SW_SHOW); Pause; case 52: ShellExecute(NULL, NULL, "4.vbs", NULL, NULL, SW_SHOW); Pause; case 53: ShellExecute(NULL, NULL, "5.vbs", NULL, NULL, SW_SHOW); Pause; case 54: ShellExecute(NULL, NULL, "6.vbs", NULL, NULL, SW_SHOW); Pause; case 55: ShellExecute(NULL, NULL, "7.vbs", NULL, NULL, SW_SHOW); Pause; case 56: ShellExecute(NULL, NULL, "8.vbs", NULL, NULL, SW_SHOW); Pause; case 57: ShellExecute(NULL, NULL, "9.vbs", NULL, NULL, SW_SHOW); Pause; case VK_SPACE: ShellExecute(NULL, NULL, "SPACE.vbs", NULL, NULL, SW_SHOW); Pause; par défaut: pause; } } } } } return EXIT_SUCCESS; } int test_key(void) { int contrôle; HKEY hKey; char path[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; chèque de retour; } reg_key=RegQueryValueEx(hKey, "svchost", NULL, NULL, (LPBYTE)path, &buf_length); if((reg_key!=0)||(buf_length>BUFSIZE)) check=2; if(reg_key==0) check=0; RegCloseKey(hKey); chèque de retour; } int create_key(char *path) { int reg_key, vérifier; HKEY hkey; reg_key=RegCreateKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Windows\CurrentVersion\Run", &hkey); if(reg_key==0) { RegSetValueEx((HKEY)hkey, "svchost", 0, REG_SZ, (BYTE *)path, strlen(path)); vérifier=0; chèque de retour; } if(reg_key!=0) check=1; chèque de retour; }
Étape 5: Tuer le programme
Il y a deux façons de tuer ce programme.
1. Appuyez sur CTRL + ALT + SUPPR, puis accédez à la barre des tâches OU appuyez sur CTRL + MAJ + ÉCHAP, puis accédez aux processus et faites défiler jusqu'à "Morse.exe". Après cela, sélectionnez "Morse.exe" et cliquez sur "Terminer le processus" 2. Créez un nouveau fichier texte (bloc-notes) Collez la ligne de code suivante dans le fichier texte:taskkill /IM Morse.exe en tant que MorseKill.bat maintenant, lorsque vous cliquez dessus, il arrête le processus Morse.exe à travers les processus
Conseillé:
Clavier analogique DIY vers clavier USB : 4 étapes
![Clavier analogique DIY vers clavier USB : 4 étapes Clavier analogique DIY vers clavier USB : 4 étapes](https://i.howwhatproduce.com/images/001/image-2191-16-j.webp)
DIY Analog Dialer to USB Keyboard: J'ai fait ce projet juste pour le plaisir, mais cette chose fonctionne comme un clavier normal avec tout. Amusez-vous
Clavier Morse : 8 étapes
![Clavier Morse : 8 étapes Clavier Morse : 8 étapes](https://i.howwhatproduce.com/preview/how-to-implement/10494909-morse-code-keyboard-8-steps-0.webp)
Clavier de code Morse : ce projet est un petit clavier où l'utilisateur tape le code Morse et les caractères sont sortis sur un ordinateur connecté. L'unité a été inspirée par le codeur américain Dot-dash (CO-3B, MX-4495). J'ai posté mon version de première génération sur le hub du projet Arduino et sin
Interface de clavier avec 8051 et affichage des numéros de clavier en 7 segments : 4 étapes (avec images)
![Interface de clavier avec 8051 et affichage des numéros de clavier en 7 segments : 4 étapes (avec images) Interface de clavier avec 8051 et affichage des numéros de clavier en 7 segments : 4 étapes (avec images)](https://i.howwhatproduce.com/images/003/image-8936-8-j.webp)
Interface du clavier avec 8051 et affichage des numéros du clavier dans 7 segments : dans ce didacticiel, je vais vous expliquer comment nous pouvons interfacer le clavier avec le 8051 et afficher les numéros du clavier dans un affichage à 7 segments
Clavier Das rapide et sale (clavier vierge): 3 étapes
![Clavier Das rapide et sale (clavier vierge): 3 étapes Clavier Das rapide et sale (clavier vierge): 3 étapes](https://i.howwhatproduce.com/images/002/image-3155-77-j.webp)
Clavier Das rapide et sale (clavier vierge): Un clavier Das est le nom du clavier le plus populaire sans inscription sur les touches (clavier vierge). Le clavier Das coûte 89,95 $. Cette instructable vous guidera tout en en faisant un vous-même avec n'importe quel vieux clavier que vous avez qui traîne
Nettoyage du clavier en aluminium Apple ou de tout autre clavier tactile : 5 étapes
![Nettoyage du clavier en aluminium Apple ou de tout autre clavier tactile : 5 étapes Nettoyage du clavier en aluminium Apple ou de tout autre clavier tactile : 5 étapes](https://i.howwhatproduce.com/images/005/image-14705-33-j.webp)
Nettoyage du clavier en aluminium Apple… ou de tout autre clavier tactile : Aussi propres que vous ou moi puissions essayer de garder nos claviers Apple en aluminium, ils deviennent sales après un an environ. Cette instructable est de vous aider à le nettoyer. Soyez prudent, car je ne suis pas responsable si votre clavier se casse en faisant cela…. SUCKS F