Wie erzeugt man mit dem Arduino Uno eine Sinuswelle?

Antwort vom

Um mit einem Arduino Uno eine Sinuswelle zu erzeugen, kannst du die PWM (Pulsweitenmodulation) nutzen, um ein analoges Signal zu simulieren. Hier ist eine grundlegende Vorgehensweise: 1. **Benötigte Materialien**: - Arduino Uno - Widerstand (z.B. 1 kΩ) - Lautsprecher oder Piezo-Lautsprecher (optional, um die Sinuswelle hörbar zu machen) - Jumper-Kabel 2. **Schaltung aufbauen**: - Verbinde den PWM-Ausgang (z.B. Pin 9) mit dem Lautsprecher über den Widerstand. - Schließe den anderen Pol des Lautsprechers an GND an. 3. **Code schreiben**: - Du kannst die Sinuswelle mit einer Lookup-Tabelle erzeugen. Hier ist ein einfaches Beispiel: ```cpp const int outputPin = 9; // PWM Pin const int sampleRate = 1000; // Abtastrate in Hz const int amplitude = 127; // Amplitude (0-255 für 8-Bit) const int offset = 128; // Offset für die Sinuswelle void setup() { pinMode(outputPin, OUTPUT); } void loop() { for (int i = 0; i < 360; i++) { int value = amplitude * sin(radians(i)) + offset; // Sinuswert berechnen analogWrite(outputPin, value); // PWM-Signal ausgeben delayMicroseconds(1000000 / sampleRate); // Wartezeit für die Abtastrate } } ``` 4. **Code hochladen**: - Lade den Code auf deinen Arduino Uno hoch. 5. **Testen**: - Wenn alles richtig angeschlossen ist, solltest du eine Sinuswelle hören, wenn du einen Lautsprecher verwendest. Diese Methode erzeugt eine approximierte Sinuswelle. Für genauere Signale könnte ein DAC (Digital-Analog-Wandler) verwendet werden, aber das ist mit einem Arduino Uno nicht direkt möglich.

Neue Frage stellen

Verwandte Fragen

Arduino-Programmbeispiel mit RFM75-Empfänger zur Anzeige des Empfangspegels?

Ein einfaches Arduino-Programm, das mit einem RFM75-Modul als Empfänger arbeitet und den Empfangspegel (RSSI) anzeigt, ist leider nicht direkt möglich, da das RFM75-Modul keinen RSSI-Wert (R...

Wie kann man mit einem Arduino Uno Daten über eine RS485-Kopplung empfangen und ins Modbus-Protokoll konvertieren?

Um Daten über eine RS485-Kopplung mit einem Arduino Uno zu empfangen und ins Modbus-Protokoll zu konvertieren, sind folgende Schritte notwendig: **1. Hardware:** - **RS485-zu-TTL-Konverter:** Zu...

Was ist ein Receiver beim Fernseher?

Der Receiver bei einem Fernsehgerät ist ein Gerät, das Signale empfängt, dekodiert und in ein für den Fernseher verständliches Format umwandelt. Er kann verschiedene Arten von...

Arduino Stream in String umwandeln?

Um Daten von einem Arduino-Stream in einen String zu konvertieren, kannst du die `String`-Klasse verwenden. Hier ist ein einfaches Beispiel, wie du das machen kannst: ```cpp #include <Arduino.h>...