Fast SPI-based serial interface to AD9850 clock generator. Has same interface as (bit-banging based) AD9850 library, but more than x100 faster in frequency update speed. Can sweep 1KHz to 30MHz in 1KHz step in a few seconds.

Committer:
tyamadajp
Date:
Thu Jan 09 16:48:45 2020 +0000
Revision:
0:4aaced3b219c
Child:
4:c60c1caa2593
Uploaded AD9850SPI, SPI-based serial interface for AD9850 signal generator.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tyamadajp 0:4aaced3b219c 1 /**
tyamadajp 0:4aaced3b219c 2 * Fast AD9850 serial interface over SPI
tyamadajp 0:4aaced3b219c 3 */
tyamadajp 0:4aaced3b219c 4
tyamadajp 0:4aaced3b219c 5 #include <mbed.h>
tyamadajp 0:4aaced3b219c 6
tyamadajp 0:4aaced3b219c 7 class AD9850SPI {
tyamadajp 0:4aaced3b219c 8
tyamadajp 0:4aaced3b219c 9 public:
tyamadajp 0:4aaced3b219c 10 AD9850SPI(SPI &spi, PinName fq_ud, PinName reset);
tyamadajp 0:4aaced3b219c 11 ~AD9850SPI();
tyamadajp 0:4aaced3b219c 12
tyamadajp 0:4aaced3b219c 13 void reset_spi();
tyamadajp 0:4aaced3b219c 14 void reset();
tyamadajp 0:4aaced3b219c 15 void setFrequency(int freq, int powerdown=0, int phase=0);
tyamadajp 0:4aaced3b219c 16
tyamadajp 0:4aaced3b219c 17 private:
tyamadajp 0:4aaced3b219c 18 SPI &_spi;
tyamadajp 0:4aaced3b219c 19 DigitalOut _fq_ud;
tyamadajp 0:4aaced3b219c 20 DigitalOut _reset;
tyamadajp 0:4aaced3b219c 21 };
tyamadajp 0:4aaced3b219c 22