Table des matières:
Vidéo: Ordinateur personnel de bricolage : 4 étapes
2024 Auteur: John Day | [email protected]. Dernière modifié: 2024-01-30 09:08
J'ai publié un Instructable il y a quelque temps en utilisant un Espruino Pico pour créer un ordinateur domestique:
Celui-ci vous obligeait à connecter un moniteur VGA en coupant un câble VGA, mais pour ce Instructable, j'utilise une carte appelée Pixl.js, qui intègre l'écran LCD. Cela signifie que tout ce que vous avez à connecter sont quelques fils et que vous avez un petit ordinateur à faible consommation correctement utilisable.
Alors de quoi avez-vous besoin ?
- Un Espruino Pixl.js
- Un morceau de plastique ou de bois pour servir de base
- Une planche à pain
- 4x 4x4 claviers
- Beaucoup d'autocollants pour les clés
- 6 ensembles de 8x fils de raccordement mâle-> mâle de style Dupont (48 fils au total) - les bandes multicolores assorties rendent la vie beaucoup plus facile
Étape 1: fabrication du clavier
- Collez vos 4 claviers les uns à côté des autres sur votre base (ils sont collants). Vous voudrez peut-être couper leurs bords, mais faites attention à ne pas trop couper ou vous pourriez couper certains contacts.
- Collez votre planche à pain au milieu - elle est également collante !
- Divisez le fil de liaison en 4 longueurs de 8 - essayez de garder les mêmes couleurs sur chacune.
- Collez les fils dans les claviers, en vous assurant que les couleurs correspondent toutes. Repliez les fils et collez-les à l'arrière de votre base. Vous voudrez peut-être ajouter des pieds collants pour éviter que les fils ne se plient à un angle trop important.
- Ajoutez maintenant un autocollant à chaque bouton du clavier et étiquetez-les comme vous le souhaitez sur votre clavier. Utilisez l'image comme exemple, mais lorsque vous téléchargez votre code, vous pouvez modifier la variable 'KEYMAP' par ce que vous avez.
Étape 2: Câblage
Maintenant, vous devez câbler le clavier. Chaque clavier 4x4 est disposé en grille, et nous les câblons comme s'ils étaient eux-mêmes dans une grille 2x2 - faisant une grande grille 8x8 de boutons.
Câblez comme indiqué dans l'image en 4 groupes de 4 fils sur la planche à pain (vérifiez les couleurs des fils dans les images), de gauche à droite:
- KeyPad 1 4 premiers fils -> premier groupe de 4 sur maquette -> D0, D1, D2, D3
- KeyPad 1 Second 4 fils -> troisième groupe de 4 sur maquette -> D8, D9, D10, D11
- KeyPad 2 4 premiers fils -> premier groupe de 4 sur maquette -> D0, D1, D2, D3
- KeyPad 2 Deuxième 4 fils -> quatrième groupe de 4 sur maquette -> D12, D13, SDA, SCL
- KeyPad 3 Premiers 4 fils -> deuxième groupe de 4 sur maquette -> D4, D5, D6, D7
- KeyPad 3 Deuxième 4 fils -> troisième groupe de 4 sur maquette -> D8, D9, D10, D11
- KeyPad 4 4 premiers fils -> deuxième groupe de 4 sur maquette -> D4, D5, D6, D7
- KeyPad 4 Second 4 fils -> quatrième groupe de 4 sur maquette -> D12, D13, SDA, SCL
Dans l'image, nous avons 6 jeux de 8 fils. Les 2 premiers proviennent des claviers 1 et 2, les 2 seconds vont au Pixl.js, et les 2 troisièmes vont aux claviers 4 et 3.
Étape 3: Logiciel
Assurez-vous maintenant que le firmware de votre Pixl est à jour, connectez-vous avec l'IDE Espruino et téléchargez le code ci-dessous. Déconnectez l'IDE et le tour est joué !
// Câblage du claviervar KEYROW = [D7, D6, D5, D4, D3, D2, D1, D0]; var KEYCOL = [A5, A4, D13, D12, D11, D10, D9, D8];
// Cartes de touches pour le clavier
var KEYMAPLOWER = ["`1234567890-=\x08", "\tqwertyuiop\n", "\0asdfghjkl;'#\x84\x82\x85", "\x01\zxcvbnm,./ \x80\x83\ x81",]; var KEYMAPUPPER = ["¬!\"£$%^&*()_+\x08", "\tQWERTYUIOP{}\n", "\0ASDFGHJKL:@~\x84\x82\x85", "\x01| ZXCVBNM ? \x80\x83\x81",];
/* Si un caractère dans le keymap est >=128, soustrayez 128 et recherchez dans ce tableau les codes de clé à plusieurs caractères */ var KEYEXTRA = [String.fromCharCode (27, 91, 68), // 0x80 left String.fromCharCode (27, 91, 67), // 0x81 right String.fromCharCode(27, 91, 65), // 0x82 up String.fromCharCode(27, 91, 66), // 0x83 down String.fromCharCode(27, 91, 53, 126), // 0x84 page up String.fromCharCode (27, 91, 54, 126), // 0x85 page vers le bas]; // Statut du changement var hasShift = false; function setShift(s) { hasShift = s; // dessine l'indicateur de décalage à l'écran if (hasShift) { g.setColor(1); g.fillRect(105, 0, 128, 6); g.setColor(0); g.drawString("MAJ", 107, 1); g.setColor(1); } else { g.setColor(0); g.fillRect(105, 0, 128, 6); g.setColor(1); } g.flip(); }
// Convertit une clé réelle en une séquence de caractères
// Et envoyer à Loopback (où se trouve la console) function handleKeyPress(e) { var kx = e>>3; var ky = e&7; if (ky>3) { // se transforme en longue ligne kx+=8; ky-=4; } clé var = hasShift ? KEYMAPUPPER[ky][kx]: KEYMAPLOWER[ky][kx]; if (key=="\x01") { setShift(!hasShift); } else { setShift(false); if (key && key.length) { if (key.charCodeAt(0)>127) key = KEYEXTRA[key.charCodeAt(0)-128]; Terminal.inject(clé); } } }
// configurer le clavier
require("KeyPad").connect(KEYROW, KEYCOL, handleKeyPress);
Étape 4: l'utiliser
Maintenant ça marche:
- Le clavier ne peut détecter qu'une seule pression à la fois, donc Shift bascule les lettres majuscules (avec un indicateur en haut à droite) et la saisie d'une lettre revient en minuscule. Maintenez la touche Maj enfoncée et une autre touche ne fonctionnera pas.
- La frappe peut être assez pénible, alors utilisez autant que possible la touche Tab (à gauche) pour remplir automatiquement les mots !
- Les graphiques de l'écran sont disponibles via des méthodes sur la variable g - par exemple, g.fillRect (20, 20, 40, 40) ou g.clear().
- Beaucoup d'E/S sont utilisées pour le clavier, mais vous avez toujours les broches A0, A1, A2 et A3 que vous pouvez utiliser pour connecter du matériel externe.
- reset() réinitialisera tout - y compris votre code pour la gestion du clavier. Pour éviter cela, activez l'enregistrement à l'envoi, même après une réinitialisation dans les options de communication de l'IDE Web et téléchargez à nouveau.
- Votre ordinateur est étonnamment économe en énergie - vous pouvez toujours vous attendre à une autonomie d'environ 20 jours - toujours allumée - éteinte avec une seule pile CR2032 !
Conseillé:
Comment faire un mini ventilateur de bureau personnel à partir d'un vieil ordinateur – tient dans votre poche : 6 étapes
Comment faire un mini ventilateur de bureau personnel à partir d'un vieil ordinateur – tient dans votre poche : Je vais vous montrer comment faire un mini ventilateur de bureau personnel à partir d'un vieil ordinateur. Un bonus est qu'il tient même dans votre poche. Il s'agit d'un projet très simple, donc peu d'expérience ou d'expertise est nécessaire. Alors commençons
DemUino - Ordinateur personnel/contrôleur : 7 étapes
DemUino - Home Computer/Controller : Un ordinateur inspiré d'Arduino par DemeterArt Tirez le meilleur parti de votre ancien clavier PS2. Hackez-le dans un ordinateur personnel personnalisé pour contrôler les choses ! J'ai toujours voulu construire mon propre ordinateur à la maison, un peu de style rétro, rien d'extraordinaire mais avec pa
Comment ajouter des imprimantes MSUM sur votre ordinateur personnel : 13 étapes
Comment ajouter des imprimantes MSUM sur votre ordinateur personnel : Il s'agit d'un manuel qui vous aidera à ajouter n'importe quelle imprimante MSUM sur votre ordinateur personnel. Avant d'essayer, assurez-vous que vous êtes connecté au wifi du MSUM. L'élément requis pour compléter ce manuel est : 1. Tout ordinateur personnel2. Imprimante MSUM
Comment mettre à niveau un processeur d'ordinateur portable (et d'autres trucs sympas !) pour transformer un ordinateur portable SLOW/DEAD en un ordinateur portable RAPIDE ! : 4 étapes
Comment mettre à niveau un processeur PORTABLE (et d'autres trucs sympas !) pour transformer un ordinateur portable SLOW/DEAD en un ordinateur portable RAPIDE ! très obsolète. . . L'écran LCD a été brisé et le disque dur principal s'est grippé, de sorte que l'ordinateur portable était essentiellement mort
Support d'ordinateur portable bon marché / Convertisseur d'ordinateur portable en ordinateur de bureau : 3 étapes
Support d'ordinateur portable bon marché / Convertisseur d'ordinateur portable en ordinateur de bureau : je me retrouve à utiliser mon ordinateur portable pendant de longues périodes. Cela devient inconfortable au bout d'un moment. Le clavier et l'écran doivent idéalement être séparés pour réduire la fatigue du cou lors d'une utilisation prolongée. Si vous êtes un utilisateur d'ordinateur portable à temps plein, je vous suggère de construire s