Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

32 lines
697B

  1. #ifndef input_i2s_h_
  2. #define _input_i2sh_
  3. #include "AudioStream.h"
  4. class AudioInputI2S : public AudioStream
  5. {
  6. public:
  7. AudioInputI2S(void) : AudioStream(0, NULL) { begin(); }
  8. virtual void update(void);
  9. void begin(void);
  10. friend void dma_ch1_isr(void);
  11. protected:
  12. AudioInputI2S(int dummy): AudioStream(0, NULL) {} // to be used only inside AudioInputI2Sslave !!
  13. static bool update_responsibility;
  14. private:
  15. static audio_block_t *block_left;
  16. static audio_block_t *block_right;
  17. static uint16_t block_offset;
  18. };
  19. class AudioInputI2Sslave : public AudioInputI2S
  20. {
  21. public:
  22. AudioInputI2Sslave(void) : AudioInputI2S(0) { begin(); }
  23. void begin(void);
  24. friend void dma_ch1_isr(void);
  25. };
  26. #endif