Bemerkung
Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.
Warum beitreten?
Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.
Lernen & Teilen: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.
Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.
Spezialrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.
Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.
👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [hier] und treten Sie heute bei!
2.2.4 Reed-Schalter-Modul
Einführung
In diesem Projekt werden wir uns mit dem Reed-Schalter befassen, einem elektrischen Schalter, der durch ein angelegtes Magnetfeld betätigt wird.
Benötigte Komponenten
Für dieses Projekt benötigen wir die folgenden Komponenten.
Es ist sicherlich praktisch, ein komplettes Kit zu kaufen. Hier ist der Link:
Name |
ARTIKEL IN DIESEM KIT |
LINK |
|---|---|---|
Raphael Kit |
337 |
Sie können diese auch einzeln über die untenstehenden Links kaufen.
KOMPONENTENBESCHREIBUNG |
KAUF-LINK |
|---|---|
Schaltplan
T-Board Name |
physical |
wiringPi |
BCM |
GPIO17 |
Pin 11 |
0 |
17 |
GPIO27 |
Pin 13 |
2 |
27 |
GPIO22 |
Pin 15 |
3 |
22 |
Experimentelle Verfahren
Schritt 1: Schalten Sie den Stromkreis.
Schritt 2: Navigieren Sie zu dem Ordner mit dem Code.
cd ~/raphael-kit/nodejs/
Schritt 3: Starten Sie den Code.
sudo node reed_switch_module.js
Die grüne LED leuchtet beim Start des Codes. Wenn ein Magnet in die Nähe des Reed-Schalter-Moduls gebracht wird, leuchtet die rote LED auf; entfernt man den Magneten, leuchtet die grüne LED wieder auf.
Code
const Gpio = require('pigpio').Gpio;
const led1 = new Gpio(22, {mode: Gpio.OUTPUT});
const led2 = new Gpio(27, {mode: Gpio.OUTPUT});
const reedSwitch = new Gpio(17, {
mode: Gpio.INPUT,
pullUpDown: Gpio.PUD_DOWN,
edge: Gpio.EITHER_EDGE
});
reedSwitch.on('interrupt', (level) => {
led1.digitalWrite(level);
led2.digitalWrite(!level);
});
Code-Erklärung
const Gpio = require('pigpio').Gpio;
const reedSwitch = new Gpio(17, {
mode: Gpio.INPUT,
pullUpDown: Gpio.PUD_DOWN,
edge: Gpio.EITHER_EDGE
});
Importieren Sie das pigpio-Modul, erstellen Sie ein ReedPin-Objekt zur Steuerung des IO-Ports, setzen Sie es auf den Eingabemodus, ziehen Sie es herunter (anfänglich auf niedrigem Pegel) und setzen Sie einen Interrupt.
const led1 = new Gpio(22, {mode: Gpio.OUTPUT});
const led2 = new Gpio(27, {mode: Gpio.OUTPUT});
Erstellen Sie zwei Objekte led1 und led2 zur Steuerung der IO-Ports Gpio22 und Gpio27 und setzen Sie diese auf den Ausgabemodus.
reedSwitch.on('interrupt', (level) => {
led1.digitalWrite(level);
led2.digitalWrite(!level);
});
Wenn der Interrupt ausgelöst wird, schreiben Sie dasselbe Level zu led1 und das entgegengesetzte Level zu led2.