Ich versuche, mit einem ESP32-S3 (N16R8, Arduino IDE: ESP32S3 Dev Module) ein stabiles PWM-Signal zu erzeugen (0–3.3 V), ähnlich wie es mir mit einem ESP32-CAM (10 Bit PWM) bereits gelungen ist.
Fragen:
Wie erzeugt man korrekt PWM auf dem ESP32-S3?
Welche maximale Auflösung ist realistisch?
Wie bekommt man ein sauberes 0–3.3 V Signal?
Problem:
Mit ledc, analogWrite und digitalWrite bekomme ich keine brauchbaren Signale:
LED blinkt, aber an den getesteten GPIOs (2, 4, 8, 9, 13, 14) kommt nichts Verwertbares an
analogWrite liefert nur ~0–0.2 V statt 0–3.3 V
Auch ohne zusätzliche Libraries tritt das Problem auf
Ich vermute, du hast nicht verstanden, was PWM (PulseWeitenModulation) ist. Da kommt, je nach Pulseweite, immer die maximale Spannung (hier 3,3V) raus.
Und Hier findest du weitere Infos.
Danke für die schnelle Antwort. PWM ist mir bekannt – ich nutze sie bereits erfolgreich als einfachen DAC.
Mit einem ESP32 (nicht S3) habe ich bei 10 Bit und ~40 kHz ein stabiles Signal erzeugt, mit dem mein DFAM über ca. 3 Oktaven auf etwa ±10 Cent spielbar ist.
Mir geht es perspektivisch um höhere Auflösung (idealerweise Richtung 16 Bit), da ich das Signal später noch mit OpAmps auf größere Spannungsbereiche (z. B. 0–10 V oder ±5 V) skalieren möchte.
Der ESP32-S3 ist für mich interessant wegen USB-MIDI (läuft bereits), aber PWM scheint sich hier anders zu verhalten als beim klassischen ESP32.
Ich bin neu beim S3 – aktuell mein dritter ESP – daher die Frage, ob es hier grundlegende Unterschiede oder bekannte Einschränkungen bei PWM gibt.
Dann solltest du auch wissen, das reines PWM, ohne zusätzliche Hardware, nur 0V oder die max. Spannung ausgibt.
Was die Änderungen im ESP32-S3 betreffen, schau dir den von mir geposteten Beitrag im Link an. Da steht auch was zur Auflösung.
Und weitere findest du Hier.
ich habe festgestellt der neue S3 schafft nur 20khz. Dafür aber 2.4 Khz und 14 Bit! Glättungsfilter ist 10 uf und verstärkerwiderstand 1k Ohm. Signalchange hat 0,5 ms attack und am oszi sieht es sauber aus. Nächste woche habe ich Zeit das ganze zusammen zu bauen zu kalibrieren und in der Praxis zu testen.
Wenn es mit PWM doch nicht geht, brauche ein PCM Pin und ein PCM5102 I2S DAC Audio Board mit 16 bit und einen GP8413 DAC Op Amp. Aber das macht weniger Spass, weil weniger Eigenbau und eigener Code.
brauchbares PWM für CV (0–3.3 V) bei ESP32S3 auf Pin 19, 20, 39, 40