adc
Diff: ADE7912.h
- Revision:
- 3:1d62b3be52e8
- Parent:
- 2:f480200c8600
diff -r f480200c8600 -r 1d62b3be52e8 ADE7912.h --- a/ADE7912.h Tue Oct 27 13:23:41 2020 +0000 +++ b/ADE7912.h Wed Oct 28 15:35:08 2020 +0000 @@ -4,7 +4,6 @@ #include "stm32h7xx_hal.h" #include "stdlib.h" - // ADE7912 registers addresses #define ADE7912_IWV_REG_ADDRESS 0x00 #define ADE7912_V1WV_REG_ADDRESS 0x08 @@ -58,61 +57,68 @@ #define ADE7912_IWV_TRANSLATE_COEF 5.87344e-9f #define ADE7912_VWV_TRANSLATE_COEF 9.39369e-8f -struct ADE7912_BrushRead_Data { - int32_t IWV; - int32_t V1WV; - int32_t V2WV; - uint16_t ADC_CRC; - uint8_t STATUS0; - uint16_t CNT_SNAPSHOT; +struct ADE7912_BrushRead_Data +{ + int32_t IWV; + int32_t V1WV; + int32_t V2WV; + uint16_t ADC_CRC; + uint8_t STATUS0; + uint16_t CNT_SNAPSHOT; }; -struct ADE7912_Inst { - SPI_HandleTypeDef *spi; - uint8_t phasesEnable[4]; - GPIO_TypeDef *CS_ports[4]; - uint16_t CS_pins[4]; - struct ADE7912_BrushRead_Data *phasesData[4]; - uint8_t version[4]; - float tempos[4]; - float tempGain[4]; - GPIO_TypeDef *DReadyPort; - uint16_t DReadyPin; - IRQn_Type EXTIinterrupt; +struct ADE7912_Inst +{ + SPI_HandleTypeDef *spi; + uint8_t phasesEnable[4]; + GPIO_TypeDef *CS_ports[4]; + uint16_t CS_pins[4]; + struct ADE7912_BrushRead_Data *phasesData[4]; + uint8_t version[4]; + float tempos[4]; + float tempGain[4]; + GPIO_TypeDef *DReadyPort; + uint16_t DReadyPin; + IRQn_Type EXTIinterrupt; }; -enum ADE7912_Phases { - PHASE_A = 0, - PHASE_B, - PHASE_C, - COM +enum ADE7912_Phases +{ + PHASE_A = 0, + PHASE_B, + PHASE_C, + COM }; -enum ADE7912_DataUpdateFreq { - F_8KHZ, - F_4KHZ, - F_2KHZ, - F_1KHZ +enum ADE7912_DataUpdateFreq +{ + F_8KHZ, + F_4KHZ, + F_2KHZ, + F_1KHZ }; -enum ADE7912_Bandwidths { - BW_3K3HZ, - BW_2KHZ +enum ADE7912_Bandwidths +{ + BW_3K3HZ, + BW_2KHZ }; -enum ADE7912_CLKOUT_Functionality { - CLKOUT, - DREADY +enum ADE7912_CLKOUT_Functionality +{ + CLKOUT, + DREADY }; -struct ADE7912_Phase_Settings { - GPIO_TypeDef *CS_port; - uint16_t CS_pin; - enum ADE7912_DataUpdateFreq freq; - enum ADE7912_Bandwidths bandwidth; - enum ADE7912_CLKOUT_Functionality clkoutFunc; +struct ADE7912_Phase_Settings +{ + GPIO_TypeDef *CS_port; + uint16_t CS_pin; + enum ADE7912_DataUpdateFreq freq; + enum ADE7912_Bandwidths bandwidth; + enum ADE7912_CLKOUT_Functionality clkoutFunc; }; @@ -140,10 +146,4 @@ float ADE7912_GetCurrent(struct ADE7912_Inst *ade, enum ADE7912_Phases phase); float ADE7912_GetTemp(struct ADE7912_Inst *ade, enum ADE7912_Phases phase); -void ADE7912_WriteToReg(struct ADE7912_Inst *ade, enum ADE7912_Phases phase, uint8_t addr, uint8_t *buf, uint8_t length); -void ADE7912_ReadFromReg(struct ADE7912_Inst *ade, enum ADE7912_Phases phase, uint8_t addr, uint8_t *buf, uint8_t length); -uint8_t ADE7912_ReadADCVersionFromReg(struct ADE7912_Inst *ade, enum ADE7912_Phases phase); -uint8_t ADE7912_ReadTemposFromReg(struct ADE7912_Inst *ade, enum ADE7912_Phases phase); -//void ADE7912_InitEXTIForDReady(struct ADE7912_Inst *ade, GPIO_TypeDef *port, uint16_t pin); - #endif