aiie/teensy/teensy-speaker.h

31 lines
575 B
C
Raw Normal View History

2017-02-20 18:55:16 +00:00
#ifndef __TEENSY_SPEAKER_H
#define __TEENSY_SPEAKER_H
#include "physicalspeaker.h"
2020-07-10 00:31:51 +00:00
#include <MCP492X.h>
#define SAMPLERATE 44100
2017-02-20 18:55:16 +00:00
class TeensySpeaker : public PhysicalSpeaker {
public:
2020-07-10 00:31:51 +00:00
TeensySpeaker(uint8_t sda, uint8_t scl);
2017-02-20 18:55:16 +00:00
virtual ~TeensySpeaker();
2020-07-10 00:31:51 +00:00
virtual void begin();
virtual void toggle(uint32_t c);
2020-07-10 00:31:51 +00:00
virtual void maintainSpeaker();
virtual void maintainSpeaker(uint32_t c, uint64_t microseconds);
virtual void beginMixing();
virtual void mixOutput(uint8_t v);
2017-02-20 18:55:16 +00:00
private:
bool toggleState;
2017-02-20 18:55:16 +00:00
uint32_t mixerValue;
uint8_t numMixed;
2017-02-20 18:55:16 +00:00
};
#endif