From 971f34f1b3519d7747fcf5f5a9adef22161c119a Mon Sep 17 00:00:00 2001 From: Stephen Crane Date: Fri, 9 Nov 2018 07:25:13 +0000 Subject: [PATCH] esp8266 pwm sound --- hw/esp8266-pwm.h | 15 ++++++++------- sound_pwm.cpp | 8 ++++++++ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/hw/esp8266-pwm.h b/hw/esp8266-pwm.h index 6b1f8ae..651906c 100644 --- a/hw/esp8266-pwm.h +++ b/hw/esp8266-pwm.h @@ -3,12 +3,11 @@ //must define these in Makefile (or platformio) //#define USER_SETUP_LOADED //#define ILI9163_DRIVER -//#define TFT_CS 5 -//#define TFT_DC 2 -//#define TFT_MOSI 23 -//#define TFT_MISO -1 -//#define TFT_SCLK 18 -//#define TFT_RST -1 +//#define TFT_CS PIN_D6 +//#define TFT_DC PIN_D8 +//#define TFT_WIDTH 240 +//#define TFT_HEIGHT 320 +//#define TFT_RST -1 //#define SPI_FREQUENCY 40000000 //#define LOAD_GLCD @@ -21,7 +20,9 @@ // "tape" storage... #undef SD_CS +#undef USE_SPIFFS // sound -#define PWM_SOUND 25 +#define PWM_SOUND D2 #define PWM_DUTY 20 // 20/1024 -> volume +#define PWM_TOP 1024 diff --git a/sound_pwm.cpp b/sound_pwm.cpp index 580d59e..d4905a6 100644 --- a/sound_pwm.cpp +++ b/sound_pwm.cpp @@ -1,3 +1,4 @@ +#include #include "sound_pwm.h" #include "hardware.h" @@ -40,15 +41,22 @@ void PWM::set_freq(unsigned freq) { } #else +static unsigned pin; + void PWM::begin(unsigned gpio) { + pin = gpio; + analogWriteRange(PWM_TOP); } void PWM::set_duty(unsigned duty) { + analogWrite(pin, duty); } void PWM::stop() { + analogWrite(pin, 0); } void PWM::set_freq(unsigned freq) { + analogWriteFreq(freq); } #endif