/* * SPIBase.h * * Author: Aleksey Gerasimenko * gerasimenko.aleksey.n@gmail.com */ #include "F28335/DSP28x_Project.h" #include "DSP28335/GPIO.h" #include "RUDRIVEFRAMEWORK/DataType.h" #include "RUDRIVEFRAMEWORK/SystemDefinitions.h" #ifndef DSP28335_SPIBASE_H_ #define DSP28335_SPIBASE_H_ namespace DSP28335 { struct SPIConfiguration { SPIConfiguration(){} };// struct SPISetup { pGPIO_FUNCTION gpio_setup; SPISetup(): gpio_setup(&DSP28335::GPIO::gpio_spia_setup) {} };//SPISetup class SPIBase { public: SPIBase(); public: virtual void setup() = 0; virtual void setup(DSP28335::SPISetup& setup) = 0; virtual void get_default_configuration(DSP28335::SPIConfiguration& config) = 0; virtual void get_configuration(DSP28335::SPIConfiguration& config) = 0; virtual void set_configuration(DSP28335::SPIConfiguration& config) = 0; protected: virtual void _configure(DSP28335::SPIConfiguration& config) = 0; }; } /* namespace DSP28335 */ #endif /* DSP28335_SPIBASE_H_ */