dac.h 928 B

123456789101112131415161718192021222324252627282930313233
  1. #ifndef _DAC_H_
  2. #define _DAC_H_
  3. #define MAX_BUFFERS 1
  4. #define DAC_BUFFER_MAX_SIZE 2400
  5. extern short dac_buffer[MAX_BUFFERS][DAC_BUFFER_MAX_SIZE];
  6. extern int dac_buffer_size[MAX_BUFFERS];
  7. extern unsigned long current_srate;
  8. extern unsigned int underruns;
  9. void dac_reset(void);
  10. int dac_get_writeable_buffer(void);
  11. int dac_get_readable_buffer(void);
  12. int dac_readable_buffers(void);
  13. int dac_writeable_buffers(void);
  14. int dac_busy_buffers(void);
  15. int adc_busy_buffers(void);
  16. int dac_fill_dma(void);
  17. void dac_enable_dma(void);
  18. void dac_disable_dma(void);
  19. int dac_next_dma_empty(void);
  20. int dac_first_dma_empty(void);
  21. int adc_next_dma_empty(void);
  22. int adc_first_dma_empty(void);
  23. void dac_set_first_dma(short *buffer, int n);
  24. void dac_set_next_dma(short *buffer, int n);
  25. int dma_endtx(void);
  26. void dac_write_reg(unsigned char reg, unsigned short value);
  27. int dac_set_srate(unsigned long srate);
  28. void dac_init(void);
  29. #endif /* _DAC_H_ */