Inhaltsverzeichnis:

One-Pin-Tastatur Raspberry Pi Bedienungsanleitung - Gunook
One-Pin-Tastatur Raspberry Pi Bedienungsanleitung - Gunook

Video: One-Pin-Tastatur Raspberry Pi Bedienungsanleitung - Gunook

Video: One-Pin-Tastatur Raspberry Pi Bedienungsanleitung - Gunook
Video: Raspberry Pi 4 Einstieg: Was braucht man, um mit dem Raspberry Pi 4 loszulegen? Tutorial DEUTSCH 2024, Juli
Anonim
One-Pin-Tastatur Raspberry Pi Bedienungsanleitung
One-Pin-Tastatur Raspberry Pi Bedienungsanleitung

HAFTUNGSAUSSCHLUSS: DIES IST EINE VERWENDUNGSANLEITUNG FÜR EIN OPEN-SOURCE-PRODUKT: DAS EIN-PIN-TASTATUR. DIES IST KEIN DIY-PROJEKT. WENN SIE DIE BOARDS SELBST ERSTELLEN MÖCHTEN, FINDEN SIE DIE EAGLE-DATEIEN AM ENDE DES TUTORIALS

Was ist die One-Pin-Tastatur?

One-Pin-Tastatur macht die Verwendung einer Matrix-Tastatur so viel einfacher und ermöglicht es Ihnen, Ihre wertvollen I/O-Pins für andere Zwecke zu reservieren. Eine Matrixtastatur mit 16 Tasten erfordert normalerweise 8 digitale Eingänge an einem Mikrocontroller oder einem Einplatinencomputer. Die beliebtesten Arduinos beschränken Sie auf nur 14 digitale Pins, so dass Ihnen eine 16-Tasten-Tastatur nur 6 Pins für den Rest Ihres Projekts zur Verfügung stellt. Diese Ressourcenknappheit kann zu einem kostspieligen Kompromiss beim Design oder einem kostspieligeren Upgrade des Mikrocontrollers führen. Das One-Pin-Tastaturmodul macht all diese digitalen Eingänge überflüssig. Wie der Name schon sagt, verwendet das One-Pin-Keypad nur einen Pin (einen analogen Eingang) plus GND- und VCC-Anschlüsse, so dass die Verdrahtung Ihres Keypads ein Kinderspiel ist! Für Raspberry Pi-Benutzer (die Zielgruppe dieses Tutorials) ist außerdem ein ADS1115-Analog-Digital-Wandler erforderlich, der sehr einfach zu verdrahten ist. Das One-Pin-Tastatur-Python-Paket (im Lieferumfang enthalten) vereinfacht auch die Programmierung, die zur Verarbeitung der Tastatureingaben erforderlich ist, und spart Ihnen mehr Zeit und Mühe.

Klicken Sie hier, um die Arduino-Bedienungsanleitung anzuzeigen.

Schritt 1: Sammeln Sie alle Teile

Sammle alle Teile!
Sammle alle Teile!

Um mit Ihrem One Pin Keypad Board zu beginnen, benötigen Sie:

  • Eine Ein-Pin-Tastaturplatine
  • Ein Arduino mit etwas Geschmack (in diesem Fall wurde ein Arduino Nano verwendet)
  • 3 M/F-Überbrückungskabel,
  • 4 M/M ODER 4 weitere M/F-Jumperkabel, je nachdem, welche Art von Headern sich auf Ihrem Raspberry Pi befindet
  • A 16 Tasten Folientastatur
  • Steckbrett (Hier wird ein wirklich kleines verwendet)
  • Ein ADS1115-Modul (von Adafruit oder ein Klon)
  • Ein Raspberry Pi mit Internetverbindung und Raspbian OS (ich habe Stretch verwendet)
  • Raspberry Pi-Zubehör (ein HDMI-Kabel, ein Netzteil, Dongles, Monitor usw. hängt vom Geschmack Ihres Raspberry Pi ab)

Schritt 2: Verkabelung

Verdrahtung!
Verdrahtung!
Verdrahtung!
Verdrahtung!

Verdrahten Sie die One-Pin-Tastatur gemäß dem Fritzing-Diagramm, dem Foto oder beidem, je nachdem, was Sie bevorzugen.

Bitte beachten: Der Hinweis im Fritzing-Diagramm stellt das One Pin Keypad dar (und die Abkürzungen GND VCC und AOUT bezeichnen die Pinbelegung des One Pin Keypad Boards)

Schritt 3: Python-Paketinstallation

Python-Paketinstallation!
Python-Paketinstallation!
Python-Paketinstallation!
Python-Paketinstallation!

Öffnen Sie ein Terminalfenster und geben Sie die folgenden Befehle ein:

sudo apt-get update

dann

pip3 install Progetto-One-Pin-Keypad

um das Paket und seine notwendigen Abhängigkeiten zu installieren

Schritt 4: Installation der Beispiele

Installation der Beispiele
Installation der Beispiele

Ich habe einen dev-Ordner erstellt, um das Repository unter home/pi zu beherbergen, wenn Sie dasselbe tun möchten (es ist völlig optional), führen Sie diesen Befehl aus:

mkdir dev

Geben Sie dann Folgendes ein, um in den Ordner zu navigieren:

CD-Entwickler

Geben Sie abschließend den folgenden Befehl ein, um das Repository zu klonen:

git-Klon

Schritt 5: Aktivieren von I2C

Aktivieren von I2C
Aktivieren von I2C
Aktivieren von I2C
Aktivieren von I2C
Aktivieren von I2C
Aktivieren von I2C

Der ADS1115 ADC (Analog to Digital Converter) basiert auf dem I2C-Protokoll (Inter-Integrated Circuit), um mit dem Raspberry Pi zu kommunizieren. Standardmäßig ist der I2C-Bus deaktiviert, um ihn zu aktivieren, geben Sie Folgendes ein:

sudo raspi-config

das Sie zu einem blauen Konfigurationsfenster führt, von dort mit den Pfeiltasten und der Eingabetaste wählen Sie

  1. Schnittstellenoptionen
  2. I2C
  3. Dann geh runter zu

Tipp: Ein Hinweis auf die obigen Screenshots kann ein wenig helfen! Wenn du immer noch feststeckst, fürchte dich nicht! Lesen Sie diese erstaunliche Anleitung von Sparkfun!

Schritt 6: Führen Sie Calibratethresholds aus

Führen Sie Schwellenwerte kalibrieren aus!
Führen Sie Schwellenwerte kalibrieren aus!

Navigieren Sie zum Repository, falls noch nicht geschehen, und rufen Sie den Beispielordner mit diesen Befehlen auf:

Tipp: Geben Sie 'cd Prog' ein und drücken Sie dann die Tabulatortaste, es sollte den Repository-Namen automatisch vervollständigen!

cd Progetto_One_Pin_Keypad_Python_Package

dann tippe:

CD-Beispiele

Führen Sie als Nächstes das calibratethresholds-Beispiel mit diesem Befehl aus:

Python3-Kalibrierungsschwellen

und befolgen Sie die auf der Konsole angezeigten Anweisungen, um Ihr Board zu kalibrieren. Nachdem die Kalibrierung alle Tasten durchlaufen hat, testen Sie Ihre neuen Analogwerte, um zu sehen, ob sie funktionieren, indem Sie einige Tasten drücken, wenn Sie zu "Begin" aufgefordert werden. Wenn sich die neuen Werte als ungenau erweisen, verwenden Sie Strg C, um das Programm zu beenden und auszuführen wieder.

Das Kalibrierungsbeispiel sollte Ihnen 2 Codezeilen liefern, die Sie im nächsten Beispiel benötigen, stellen Sie sicher, dass die Konsole geöffnet bleibt und/oder kopieren Sie beide!

Schritt 7: Ändern und dann Readkeypadwithtimeout ausführen

Ändern und dann Readkeypadwithtimeout ausführen
Ändern und dann Readkeypadwithtimeout ausführen
Ändern und dann Readkeypadwithtimeout ausführen
Ändern und dann Readkeypadwithtimeout ausführen
Ändern und dann Readkeypadwithtimeout ausführen
Ändern und dann Readkeypadwithtimeout ausführen

Nun, da Ihr One Pin Keypad kalibriert ist, ist es an der Zeit, es in Betrieb zu nehmen. Während Sie dies über die Befehlszeile mit vi tun können, bevorzuge ich persönlich die Verwendung einer IDE wie IDLE.

Öffnen Sie IDLE (Sie benötigen die Python3-Version) und ändern Sie die folgenden Zeilen:

Erinnern Sie sich an das kopierte Analogwert-Array? Ersetzen Sie Zeile 13 (siehe unten) durch diese neu kalibrierten Analogwerte.

# ex: my_thresholds = [kalibrierte Werte wären hier]

wird dadurch ersetzt:

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

Als nächstes fügen Sie die nächste Codezeile nach Zeile 23 hinzu (siehe unten):

keyboard.useCalibratedThresholds(my_thresholds)

wird nach Zeile 23 hinzugefügt:

# zB: keyboard.use_calibrated_thresholds(Ihr Array-Name)

damit die Zeilen 22 bis 24 am Ende so aussehen:

# Wenn kalibrierte Werte verwendet werden, verwenden Sie die folgenden Werte: use_calibrated_thresholds:

# zB: keyboard.use_calibrated_thresholds(Ihr Array-Name)

keyboard.use_calibrated_thresholds(my_thresholds)

Führen Sie danach den Code aus und testen Sie ihn, indem Sie einige Tasten drücken! Passen Sie die Beispielskizze gerne an Ihre Projekte an! Denken Sie daran, dass read_keypad_with_timeout die gedrückte Schaltfläche als Zeichen zurückgibt und die Zeitüberschreitung in Millisekunden angegeben wird! Wenn Sie kein Timeout wünschen, verwenden Sie die Konstante keyboard. NO_TIMEOUT.

Schritt 8: So funktioniert die One-Pin-Tastatur

So funktioniert die One-Pin-Tastatur
So funktioniert die One-Pin-Tastatur
So funktioniert die One-Pin-Tastatur
So funktioniert die One-Pin-Tastatur

Ein Großteil des Designs der One-Pin-Tastatur basiert auf Hari Wigunas Implementierung eines Spannungsteilers, um einen einzigartigen Analogwert für jede Taste in einer 16-Pin-Tastatur zu erhalten. Das Design des One Pin Keypad bleibt mit einigen Optimierungen weitgehend gleich. Wenn Sie ein großartiges Tutorial zur Funktionsweise des One Pin Keypads wünschen, können Sie sich hier Hari Wigunas großartiges Video ansehen!

Schritt 9: Fazit

Abschluss
Abschluss

In diesem anweisbaren haben wir behandelt, wie Sie mit Ihrem One Pin Keypad Board beginnen. Nun haben sich die Neugierigen unter euch vielleicht gewundert, warum die Beispielskizze readKeypadInstantaneous nie verwendet wurde, der Grund ist, dass sie nicht so nützlich ist, da die Schaltfläche beim Aufrufen gedrückt werden muss, die Funktion readKeypadInstantaneous() dient hauptsächlich der Vereinfachung readKeypadWithTimeout() in der Bibliothek. Wenn es Ihnen ins Auge fällt, können Sie es gerne ausprobieren. Viel Spaß beim Hacken!

Wenn Sie Fragen haben, hinterlassen Sie unten einen Kommentar oder senden Sie uns eine E-Mail an [email protected]. Alles Gute, Progetto Company P. S. Wie versprochen ein Link zu den Eagle Files des Boards.

Empfohlen: