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