In diesem Build untersuchen wir, wie der integrierte 9-Achsen-Bewegungssensor von CodeCell zum Erkennen von Tippen verwendet werden kann. Dieses Projekt zeigt, wie die Tipperkennung für interaktive Steuerelemente verwendet wird, sodass es sich perfekt zum Erstellen reaktionsfähiger Aktionen durch einfaches Tippen auf das Gerät eignet.
Die CodeCell ist mit einem Bewegungssensor BNO085 ausgestattet, der eine Vielzahl von Sensorfunktionen bietet, darunter auch die Tipperkennung. Diese Funktion verwendet Beschleunigungsmesserdaten, um Tippvorgänge zu erkennen, und eignet sich daher ideal für interaktive Steuerungen wie das Ein- und Ausschalten von Lichtern, das Auslösen von Soundeffekten oder andere Aktionen, die auf einer einfachen Tippbewegung basieren.
Der Bewegungssensor BNO085 erkennt Tippen, indem er plötzliche Beschleunigungen entlang seiner Achsen überwacht. Wenn ein Tippen erkannt wird, registriert der Sensor das Ereignis, sodass Sie Aktionen wie das Aufleuchten einer LED oder das Umschalten anderer Geräte auslösen können. Diese Funktion ist besonders nützlich, um berührungsbasierte Interaktionen ohne mechanische Tasten zu erstellen.
In diesem Beispiel überwacht die CodeCell kontinuierlich, ob getippt wird. Wenn ein Tippen erkannt wird, leuchtet die integrierte LED eine Sekunde lang gelb. Sie können diese grundlegende Funktionalität erweitern, um komplexere Interaktionen zu erstellen, z. B. die Steuerung mehrerer LEDs, Motoren oder anderer angeschlossener Geräte basierend auf Tippeingaben.
Unten finden Sie den Beispielcode, der Ihnen den Einstieg erleichtert. Stellen Sie sicher, dass Ihre CodeCell ordnungsgemäß über USB-C angeschlossen ist, und befolgen Sie die Kommentare im Code, um jeden Schritt zu verstehen.
#include <CodeCell.h>
CodeCell myCodeCell;
void setup() {
Serial.begin(115200); // Stellen Sie die serielle Baudrate auf 115200 ein. Stellen Sie sicher, dass Tools/USB_CDC_On_Boot aktiviert ist, wenn Sie die serielle Schnittstelle verwenden.
myCodeCell.Init(MOTION_TAP_DETECTOR); // Initialisiert die Antipperkennung
}
void schleife() {
wenn (myCodeCell.Run()) {
// Wird alle 100 ms ausgeführt, um nach Taps zu suchen
wenn (myCodeCell.Motion_TapRead()) {
// Wenn ein Tippen erkannt wird, leuchtet die LED 1 Sekunde lang gelb
myCodeCell.LED(0xA0, 0x60, 0x00); // LED auf gelb setzen
delay(1000); // Lasse die LED 1 Sekunde lang an
}
}
}
Im nächsten Beispiel verwenden wir eine CoilCell, um ihre Polarität umzukehren und einen Flip-Dot zu betätigen. Dies erweitert die Interaktivität, indem es die Tipperkennung zur Steuerung externer Geräte nutzt und so eine dynamischere Reaktion erzeugt.
#include <CoilCell.h>
#include <CodeCell.h>
#define IN1_pin1 5
#define IN1_pin2 6
CoilCell myCoilCell(IN1_pin1, IN1_pin2);
CodeCell myCodeCell;
void setup() {
Serial.begin(115200); // Stellen Sie die serielle Baudrate auf 115200 ein. Stellen Sie sicher, dass Tools/USB_CDC_On_Boot aktiviert ist, wenn Sie die serielle Schnittstelle verwenden.
myCodeCell.Init(MOTION_TAP_DETECTOR); // Initialisiert die Tipperkennung.
myCoilCell.Init(); // Initialisiert die CoilCell.
myCoilCell.Tone(); // Spielt einen Ton ab, um die Initialisierung zu bestätigen.
}
void schleife() {
wenn (myCodeCell.Run()) {
// Wird alle 100 ms ausgeführt, um nach Taps zu suchen.
wenn (myCodeCell.Motion_TapRead()) {
// Wenn ein Tippen erkannt wird, lasse die LED gelb leuchten und kehre die Polarität der CoilCell um.
myCodeCell.LED(0xA0, 0x60, 0x00); // LED auf Gelb setzen.
myCoilCell.Toggle(100); // Die Polarität der CoilCell umschalten.
Verzögerung (1000); // Verzögerung, um die LED 1 Sekunde lang eingeschaltet zu lassen und die Polarität umzukehren.
}
}
}
Dieses Projekt führt in die Grundlagen der Verwendung der Tipperkennung mit CodeCell ein. Experimentieren Sie mit dem Code, passen Sie die Antworten an und erkunden Sie das Potenzial der Tipperkennung in Ihrem nächsten Projekt!
Erfahren Sie als Erster von neuen Projekten und sichern Sie sich spannende Angebote!
© 2024 Microbots.