Loading...
Searching...
No Matches

Detailed Description

#include <stdint.h>
#include "periph_cpu.h"
+ Include dependency graph for pdm.h:

Go to the source code of this file.

Data Structures

struct  pdm_isr_ctx_t
 Interrupt context for a PDM device. More...
 

Macros

#define PDM_GAIN_MIN   (-20)
 Minimum PDM gain (in dB)
 
#define PDM_GAIN_MAX   (20)
 Maximum PDM gain (in dB)
 
#define PDM_BUF_SIZE   (64U)
 Default PDM sample buffer size.
 

Typedefs

typedef void(* pdm_data_cb_t) (void *arg, int16_t *buf)
 Signature for data received interrupt callback.
 

Functions

int32_t pdm_init (pdm_mode_t mode, uint32_t rate, int8_t gain, pdm_data_cb_t cb, void *arg)
 Initialize and enable the PDM peripheral.
 
void pdm_start (void)
 Start the PDM peripheral.
 
void pdm_stop (void)
 Stop the PDM peripheral.
 
void pdm_deinit (void)
 Disable the PDM peripheral.
 
enum  pdm_mode_t { PDM_MODE_MONO = 0 , PDM_MODE_STEREO }
 PDM operation modes. More...