You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
42 lines
1.2 KiB
42 lines
1.2 KiB
5 years ago
|
// Adafruit Circuit Playground microphone library
|
||
|
// by Phil Burgess / Paint Your Dragon.
|
||
|
// Fast Fourier transform section is derived from
|
||
|
// ELM-ChaN FFT library (see comments in ffft.S).
|
||
|
|
||
|
#ifndef ADAFRUIT_CPLAY_MIC_H
|
||
|
#define ADAFRUIT_CPLAY_MIC_H
|
||
|
|
||
|
#ifdef __GNUC__
|
||
|
#define DEPRECATED(func) func __attribute__ ((deprecated))
|
||
|
#elif defined(_MSC_VER)
|
||
|
#define DEPRECATED(func) __declspec(deprecated) func
|
||
|
#else
|
||
|
#pragma message("WARNING: You need to implement DEPRECATED for this compiler")
|
||
|
#define DEPRECATED(func) func
|
||
|
#endif
|
||
|
|
||
|
#include "Adafruit_ZeroPDM.h"
|
||
|
|
||
|
|
||
|
/**************************************************************************/
|
||
|
/*!
|
||
|
@brief Class that stores state and functions for the microphone on CircuitPlayground boards
|
||
|
*/
|
||
|
/**************************************************************************/
|
||
|
class Adafruit_CPlay_Mic {
|
||
|
public:
|
||
|
Adafruit_CPlay_Mic(void) {}; // Empty constructor
|
||
|
int peak(uint16_t ms) __attribute__ ((deprecated));
|
||
|
void capture(int16_t *buf, uint16_t nSamples),
|
||
|
fft(uint16_t *spectrum);
|
||
|
|
||
|
float soundPressureLevel(uint16_t ms);
|
||
|
|
||
|
private:
|
||
|
#if defined(ARDUINO_ARCH_SAMD)
|
||
|
static Adafruit_ZeroPDM pdm;
|
||
|
#endif
|
||
|
};
|
||
|
|
||
|
#endif // ADAFRUIT_CPLAY_MIC_H
|