Table des matières:

Guide d'utilisation du clavier à une broche Raspberry Pi: 9 étapes
Guide d'utilisation du clavier à une broche Raspberry Pi: 9 étapes

Vidéo: Guide d'utilisation du clavier à une broche Raspberry Pi: 9 étapes

Vidéo: Guide d'utilisation du clavier à une broche Raspberry Pi: 9 étapes
Vidéo: Tutoriel: Contrôle des GPIO du Raspberry Pi à partir d'une page web 2024, Juillet
Anonim
Guide d'utilisation du clavier à une broche Raspberry Pi
Guide d'utilisation du clavier à une broche Raspberry Pi

AVIS DE NON-RESPONSABILITÉ: CECI EST UN GUIDE D'UTILISATION D'UN PRODUIT OUVERT: LE CLAVIER À UN PIN. CECI N'EST PAS UN PROJET DE BRICOLAGE. SI VOUS VOULEZ FAIRE LES TABLEAUX VOUS-MÊME, LES FICHIERS EAGLE SE TROUVENT À LA FIN DU TUTORIEL

Qu'est-ce que le clavier à une broche ?

Le clavier à une broche rend l'utilisation d'un clavier matriciel tellement plus facile et vous permet de réserver vos précieuses broches d'E/S à d'autres fins. Un clavier matriciel à 16 boutons nécessite généralement 8 entrées numériques sur un microcontrôleur ou un ordinateur monocarte. Les Arduinos les plus populaires vous limitent à seulement 14 broches numériques, donc un clavier à 16 boutons ne vous laisse que 6 broches pour le reste de votre projet. Cette pénurie de ressources peut entraîner un compromis de conception coûteux ou une mise à niveau du microcontrôleur plus coûteuse. Le module de clavier à une broche élimine le besoin de toutes ces entrées numériques. Comme son nom l'indique, le clavier à une broche n'utilise qu'une seule broche (une entrée analogique) plus des connexions GND et VCC, donc le câblage de votre clavier est un jeu d'enfant ! Pour les utilisateurs de Raspberry Pi (le public cible de ce tutoriel), il nécessite également un convertisseur analogique-numérique ADS1115, qui est vraiment facile à câbler. Le package Python One Pin Keypad (inclus) simplifie également la programmation requise pour traiter les entrées du clavier, vous permettant d'économiser plus de temps et d'efforts.

Pour le guide d'utilisation d'Arduino, cliquez ici.

Étape 1: Rassemblez toutes les pièces

Rassemblez toutes les pièces !
Rassemblez toutes les pièces !

Pour commencer avec votre carte One Pin Keypad, vous aurez besoin de:

  • Une carte de clavier à une broche
  • Un Arduino d'une certaine saveur (Un Arduino Nano a été utilisé dans ce cas)
  • 3 câbles de démarrage M/F,
  • 4 M/M OU 4 autres câbles de démarrage M/F, selon le type d'en-têtes de votre Raspberry Pi
  • Un clavier à membrane 16 boutons
  • Planche à pain (une très petite est utilisée ici)
  • Un module ADS1115 (d'Adafruit ou d'un clone)
  • Un Raspberry Pi avec une connexion internet et un OS Raspbian (j'ai utilisé Stretch)
  • Accessoires Raspberry Pi (un câble HDMI, une alimentation, des dongles, un moniteur, etc. dépendent de la saveur de votre Raspberry Pi)

Étape 2: câblage

Câblage !
Câblage !
Câblage !
Câblage !

Câblez le clavier à une broche selon le schéma de Fritzing, la photo ou les deux, selon votre préférence.

Remarque: la note sur le schéma de Fritzing représente le clavier à une broche (et les abréviations GND VCC et AOUT désignent les brochages de la carte du clavier à une broche)

Étape 3: Installation du package Python

Installation du paquet Python !
Installation du paquet Python !
Installation du paquet Python !
Installation du paquet Python !

Ouvrez une fenêtre de terminal et tapez les commandes suivantes:

sudo apt-get mise à jour

alors

pip3 installer Progetto-One-Pin-Keypad

pour installer le paquet et ses dépendances nécessaires

Étape 4: Installation des exemples

Installation des exemples
Installation des exemples

J'ai créé un dossier dev pour héberger le référentiel sous home/pi si vous souhaitez faire la même chose (c'est complètement facultatif), exécutez cette commande:

dev mkdir

puis, pour naviguer dans le dossier, tapez:

développeur de CD

Enfin, pour cloner le dépôt, saisissez la commande suivante:

git clone

Étape 5: Activer I2C

Activer I2C
Activer I2C
Activer I2C
Activer I2C
Activer I2C
Activer I2C

L'ADS1115 ADC (Analog to Digital Converter) s'appuie sur le protocole I2C (Inter-Integrated Circuit) pour communiquer avec le Raspberry Pi, par défaut le bus I2C est désactivé, pour l'activer, tapez:

sudo raspi-config

qui vous amènera à une fenêtre de configuration bleue, à partir de là, à l'aide des touches fléchées et de la touche entrée, choisissez

  1. Options d'interfaçage
  2. I2C
  3. Descendez ensuite à

Astuce: Se référer aux captures d'écran ci-dessus peut aider un peu ! Si vous êtes toujours bloqué, n'ayez crainte ! Référez-vous à ce tutoriel incroyable de Sparkfun!

Étape 6: Exécutez Calibratethresholds

Exécutez Calibratethresholds !
Exécutez Calibratethresholds !

Accédez au référentiel si vous ne l'avez pas déjà fait et accédez au dossier des exemples à l'aide de ces commandes:

Astuce: tapez 'cd Prog' puis appuyez sur Tab, cela devrait compléter automatiquement le nom du référentiel !

cd Progetto_One_Pin_Keypad_Python_Package

puis tapez:

exemples de cd

Ensuite, exécutez l'exemple calibrationthresholds à l'aide de cette commande:

python3 calibrer les seuils

et suivez les instructions affichées sur la console pour calibrer votre carte. Une fois que l'étalonnage a parcouru tous les boutons, testez vos nouvelles valeurs analogiques pour voir si elles fonctionnent en appuyant sur certains boutons lorsque vous êtes invité à "Commencer". Si les nouvelles valeurs s'avèrent inexactes, utilisez Ctrl C pour arrêter le programme et l'exécuter. de nouveau.

L'exemple de calibrage devrait vous fournir 2 lignes de code dont vous aurez besoin dans l'exemple suivant, assurez-vous de garder la console ouverte et/ou copiez-les toutes les deux !

Étape 7: modifiez puis exécutez Readkeypadwithtimeout

Modifier puis exécuter Readkeypadwithtimeout
Modifier puis exécuter Readkeypadwithtimeout
Modifier puis exécuter Readkeypadwithtimeout
Modifier puis exécuter Readkeypadwithtimeout
Modifier puis exécuter Readkeypadwithtimeout
Modifier puis exécuter Readkeypadwithtimeout

Maintenant que votre One Pin Keypad est calibré, il est temps de l'utiliser. Bien que vous puissiez le faire à partir de la ligne de commande en utilisant vi, je préfère personnellement utiliser un IDE comme IDLE.

Ouvrez IDLE (vous aurez besoin de la version python3) et modifiez les lignes suivantes:

Vous vous souvenez du tableau de valeurs analogiques que vous avez copié ? Remplacez la ligne 13 (voir ci-dessous) par ces valeurs analogiques nouvellement calibrées.

# ex: my_thresholds = [les valeurs calibrées seraient ici]

est remplacé par ceci:

mes_seuils = [225, 2116, 3904, 5200, 6300, 7350, 8450, 9325, 10000, 10750, 11500, 12100, 12550, 13100, 13800, 14250]

Ensuite, ajoutez la ligne de code suivante après la ligne 23 (voir ci-dessous):

clavier.useCalibratedThresholds(my_thresholds)

est ajouté après la ligne 23:

# ex: keyboard.use_calibrated_thresholds (le nom de votre tableau)

faire en sorte que les lignes 22 à 24 ressemblent à ceci à la fin:

# Si des valeurs calibrées sont utilisées, use_calibrated_thresholds ci-dessous:

# ex: keyboard.use_calibrated_thresholds(votre nom de tableau)

keyboard.use_calibrated_thresholds(my_thresholds)

Après cela, exécutez le code et testez-le en appuyant sur quelques boutons ! N'hésitez pas à adapter l'exemple de croquis à vos projets ! N'oubliez pas que read_keypad_with_timeout renvoie le bouton pressé sous forme de caractère et que le délai d'attente est défini en millisecondes ! Si vous ne voulez pas de délai d'attente, utilisez la constante keyboard. NO_TIMEOUT.

Étape 8: Comment fonctionne le clavier à une broche

Comment fonctionne le clavier à une broche
Comment fonctionne le clavier à une broche
Comment fonctionne le clavier à une broche
Comment fonctionne le clavier à une broche

Une grande partie de la conception du clavier à une broche est basée sur la mise en œuvre par Hari Wiguna d'un diviseur de tension pour obtenir une valeur analogique unique pour chaque touche dans un clavier à 16 broches. La conception de One Pin Keypad reste en grande partie la même, avec quelques ajustements. Si vous voulez un excellent tutoriel sur le fonctionnement du clavier One Pin, n'hésitez pas à regarder la superbe vidéo de Hari Wiguna ici !

Étape 9: Conclusion

Conclusion
Conclusion

Dans ce instructable, nous avons expliqué comment démarrer avec votre carte de clavier One Pin. Maintenant, les curieux d'entre vous se sont peut-être demandé pourquoi l'exemple d'esquisse readKeypadInstantaneous n'a jamais été utilisé, la raison en est qu'il n'est pas aussi utile, car le bouton doit être enfoncé lorsqu'il est appelé, la fonction readKeypadInstantaneous() est principalement utilisée pour simplifier readKeypadWithTimeout() dans la bibliothèque. S'il attire votre attention, n'hésitez pas à le faire tourner. Bon piratage !

Si vous avez des questions, laissez un commentaire ci-dessous ou envoyez-nous un e-mail à [email protected]. Tout le meilleur, Progetto Company P. S. Comme promis, un lien vers les fichiers Eagle du conseil.

Conseillé: