2018-03-16 14:03:06 +00:00
|
|
|
#ifndef DEF_NGFMDMASYNC
|
|
|
|
#define DEF_NGFMDMASYNC
|
|
|
|
|
|
|
|
#include "stdint.h"
|
|
|
|
#include "dma.h"
|
|
|
|
#include "gpio.h"
|
|
|
|
|
|
|
|
class ngfmdmasync:public bufferdma,public clkgpio,public pwmgpio,public pcmgpio
|
|
|
|
{
|
|
|
|
protected:
|
|
|
|
uint64_t tunefreq;
|
|
|
|
bool syncwithpwm;
|
2018-03-21 09:44:43 +00:00
|
|
|
uint32_t SampleRate;
|
2018-03-16 14:03:06 +00:00
|
|
|
public:
|
2018-11-09 09:34:56 +00:00
|
|
|
ngfmdmasync(uint64_t TuneFrequency,uint32_t SR,int Channel,uint32_t FifoSize,bool UsePwm=false);
|
2018-03-16 14:03:06 +00:00
|
|
|
~ngfmdmasync();
|
|
|
|
void SetDmaAlgo();
|
|
|
|
|
|
|
|
void SetPhase(bool inversed);
|
2018-03-21 09:54:30 +00:00
|
|
|
void SetFrequencySample(uint32_t Index,float Frequency);
|
|
|
|
void SetFrequencySamples(float *sample,size_t Size);
|
2018-03-16 14:03:06 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|