38 #include "drv_digital_out.h" 39 #include "drv_digital_in.h" 40 #include "drv_spi_master.h" 54 #define ACCURRENT_MAP_MIKROBUS( cfg, mikrobus ) \ 55 cfg.miso = MIKROBUS( mikrobus, MIKROBUS_MISO ); \ 56 cfg.mosi = MIKROBUS( mikrobus, MIKROBUS_MOSI ); \ 57 cfg.sck = MIKROBUS( mikrobus, MIKROBUS_SCK ); \ 58 cfg.cs = MIKROBUS( mikrobus, MIKROBUS_CS ); \ 59 cfg.an = MIKROBUS( mikrobus, MIKROBUS_AN ); 66 #define ACCURRENT_RETVAL uint8_t 68 #define ACCURRENT_OK 0x00 69 #define ACCURRENT_INIT_ERROR 0xFF 76 #define ACCURRENT_ADC_12_BIT 12 77 #define ACCURRENT_ADC_10_BIT 10 78 #define ACCURRENT_ADC_8_BIT 8 80 #define ACCURRENT_ADC_12_BIT_MSB_MASK 0x1F 81 #define ACCURRENT_ADC_10_BIT_MSB_MASK 0x03 82 #define ACCURRENT_ADC_8_BIT_MSB_MASK 0x00 84 #define ACCURRENT_ADC_ITERATIONS 10 86 #define ACCURRENT_ADC_CONVERSION_SIZE ACCURRENT_ADC_12_BIT 87 #define ACCURRENT_ADC_ITERATION_SIZE ACCURRENT_ADC_ITERATIONS 202 #endif // _ACCURRENT_H_ #define ACCURRENT_RETVAL
Definition: accurrent.h:66
hal_spi_mode_t spi_mode
Definition: accurrent.h:137
pin_name_t mosi
Definition: accurrent.h:126
void accurrent_cfg_setup(accurrent_cfg_t *cfg)
Config Object Initialization function.
float accurrent_get_ma(accurrent_t *ctx)
Gets current value of AC Current in mA.
pin_name_t an
Definition: accurrent.h:132
Click ctx object definition.
Definition: accurrent.h:103
float accurrent_get_a(accurrent_t *ctx)
Gets current value of AC Current in A.
Click configuration structure definition.
Definition: accurrent.h:121
pin_name_t miso
Definition: accurrent.h:125
hal_spi_speed_t spi_speed
Definition: accurrent.h:136
void accurrent_generic_transfer(accurrent_t *ctx, spi_master_transfer_data_t *block)
Generic transfer function.
digital_in_t an
Definition: accurrent.h:109
pin_name_t sck
Definition: accurrent.h:127
pin_name_t cs
Definition: accurrent.h:128
ACCURRENT_RETVAL accurrent_init(accurrent_t *ctx, accurrent_cfg_t *cfg)
Initialization function.
spi_master_t spi
Definition: accurrent.h:114