/* * AnalogFault.h * * Author: Aleksey Gerasimenko * gerasimenko.aleksey.n@gmail.com */ #include #include #include "DSP28335/GPIO.h" #include "PERIPHERY/PeripheryMap.h" #include "RUDRIVEFRAMEWORK/DataType.h" #include "RUDRIVEFRAMEWORK/SystemDefinitions.h" #ifndef PERIPHERY_ANALOGFAULT_H_ #define PERIPHERY_ANALOGFAULT_H_ namespace PERIPHERY { struct AnaloFaultSetup { pGPIO_FUNCTION p_gpio_analog_fault_setup; pGPIO_FUNCTION_UINT p_analog_fault_read; void set_default() { p_gpio_analog_fault_setup = &DSP28335::GPIO::gpio_analog_fault_setup; p_analog_fault_read = &DSP28335::GPIO::gpio_analog_fault_read; }; AnaloFaultSetup(): p_gpio_analog_fault_setup(&DSP28335::GPIO::gpio_analog_fault_setup), p_analog_fault_read(&DSP28335::GPIO::gpio_analog_fault_read) {} };//AnaloFaultSetup class AnalogFault { private: uint16_t m_fault; public: AnalogFault(); public: void setup(const AnaloFaultSetup& setup); void get_hard_code_setup(AnaloFaultSetup& hsetup); public: void get_fault(uint16_t& analog_fault); private: void (*_gpio_analog_fault_setup)(); void (*_analog_fault_read)(uint16_t& data); }; } /* namespace PERIPHERY */ #endif /* PERIPHERY_ANALOGFAULT_H_ */