i2s.h
bool i2s_is_empty()
uint16_t i2s_write_buffer_nb(int16_t *frames, uint16_t frame_count)
uint16_t i2s_write_buffer(int16_t *frames, uint16_t frame_count)
bool i2s_rxtx_begin(bool enableRx, bool enableTx)
bool i2s_rx_is_empty()
bool i2s_write_sample(uint32_t sample)
32bit sample with channels being upper and lower 16 bits (blocking when DMA is full)
Definition: i2s.h:103
void i2s_set_callback(void(*callback)(void))
bool i2s_write_sample_nb(uint32_t sample)
Same as above but does not block when DMA is full and returns false instead.
Definition: i2s.h:111
uint16_t i2s_rx_available()
uint16_t i2s_available()
uint16_t i2s_write_buffer_mono(int16_t *frames, uint16_t frame_count)
Writes a buffer of frames into the DMA memory, returns the amount of frames written.
bool i2s_is_full()
void i2s_rx_set_callback(void(*callback)(void))
bool i2s_rx_is_full()
uint16_t i2s_write_buffer_mono_nb(int16_t *frames, uint16_t frame_count)
bool i2s_write_lr(int16_t left, int16_t right)
bool i2s_read_sample(int16_t *left, int16_t *right, bool blocking)