In diesem Beitrag möchte ich dir die Angle UNIT von M5Stack vorstellen und zeigen, wie du diese in der Arduino IDE programmierst.
Den M5Stamp Pico Mate habe ich dir bereits in einigen Beiträgen vorgestellt und gezeigt, wie du diesen in der Arduino IDE programmierst.
- Vorstellung des M5Stamp Pico
- M5Stamp Pico Mate #1: Taster programmieren
- M5Stamp Pico Mate #2: Ampelschaltung
Bezug der Angle UNIT von M5Stack
Dieses Modul bekommst du entweder im offiziellen Shop von M5Stack für 3,95 $ (ca. 3,45 €) zzgl. Versandkosten nach Deutschland. Du bekommst das Modul auch
auf ebay.de jedoch derzeit für knapp 12 €* inkl. Versandkosten.
Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!
Den Preis auf ebay.de finde ich derzeit für deutlich übertrieben und würde dir daher den Shop von Eckstein-Komponente empfehlen, wo du derzeit 4,95 € zzgl. Versandkosten bezahlst.
Aufbau & Pinout der Angle UNIT
Dieses kleine Modul ist ein 10kOhm Drehpotentiometer, welcher in ein Gehäuse verbaut wurde. Das Gehäuse selber verfügt über zwei Löcher, welche für die Aufnahme von Lego Technik Achsen geeignet ist.
Auf der Rückseite ist die Pinbelegung angebracht, wobei nur einer der beiden möglichen digitalen Pins benutzt wird (IN).
Programmieren in der Arduino IDE
Wie man einen Drehpotentiometer in der Arduino IDE am Mikrocontroller programmiert, habe ich dir bereits in diversen Beiträgen gezeigt.
Hier möchte ich dir kurz zeigen, wie du eine einfache LED in der Helligkeit manipulierst.
#define rotaryResistor 33 #define led 26 void setup() { //beginn der seriellen Kommunikation mit 9600 Baud Serial.begin(9600); //Drehpotentiometer / Angle UNIT an Eingang pinMode(rotaryResistor, INPUT); //LED als Ausgang pinMode(led, OUTPUT); } void loop() { //lesen des aktuellen Wertes des Drehpotentiometers int value = analogRead(rotaryResistor); Serial.print("Wert Drehpoti:"); Serial.println(value); //umwandeln in einen Wert von 0 bis 254 (PWM) int pwmValue = map(value,0, 2256, 0,254); Serial.print("Helligkeit LED:"); Serial.println(pwmValue); //setzen der Helligkeit analogWrite(led, pwmValue); //eine kleine Pause von 50 Millisekunden delay(50); }
In dem Video siehst du, wie das Drehen des Potis die Helligkeit der LED manipuliert.
Man könnte nun als Nächstes die LED blinken lassen und die aktuelle Position des Drehpotis nutzen um die Frequenz des Blinkens zu ändern.