luat_i2s.h 652 B

1234567891011121314151617181920212223242526
  1. #ifndef LUAT_I2S_H
  2. #define LUAT_I2S_H
  3. typedef struct luat_i2s_conf
  4. {
  5. uint8_t id;
  6. uint8_t mode;
  7. uint32_t sample_rate;
  8. uint8_t bits_per_sample;
  9. uint8_t channel_format;
  10. uint8_t communication_format;
  11. uint8_t mclk;
  12. //uint8_t intr_alloc_flags;
  13. // uint8_t dma_buf_count;
  14. // uint8_t dma_buf_len;
  15. // uint8_t use_apll;
  16. // uint8_t tx_desc_auto_clear;
  17. }luat_i2s_conf_t;
  18. int luat_i2s_setup(luat_i2s_conf_t *conf);
  19. int luat_i2s_send(uint8_t id, char* buff, size_t len);
  20. int luat_i2s_recv(uint8_t id, char* buff, size_t len);
  21. int luat_i2s_close(uint8_t id);
  22. int32_t luat_i2s_rx_cb(void *pdata, void *param);
  23. #endif