38 #include "drv_digital_out.h" 39 #include "drv_digital_in.h" 40 #include "drv_spi_master.h" 54 #define VOLTMETER_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 VOLTMETER_RETVAL uint8_t 68 #define VOLTMETER_OK 0x00 69 #define VOLTMETER_INIT_ERROR 0xFF 76 #define VOLTMETER_VALUE_5_BIT 0x001F 77 #define VOLTMETER_VALUE_12_BIT 0x0FFF 78 #define VOLTMETER_VCC_5V_COEFF_0 0 79 #define VOLTMETER_VCC_5V_COEFF_1 1 80 #define VOLTMETER_VCC_5V_COEFF_2 2 81 #define VOLTMETER_VCC_5V_COEFF_VAL 5.6487 82 #define VOLTMETER_VCC_5V_COEFFICIENT_VAL 6.1576 83 #define VOLTMETER_VCC_5V_COEFF_PIC32_VAL 10.6857 218 #endif // _VOLTMETER_H_ pin_name_t mosi
Definition: voltmeter.h:121
pin_name_t miso
Definition: voltmeter.h:120
uint8_t voltmeter_read_byte(voltmeter_t *ctx)
Generic read the byte of the data function.
digital_in_t an
Definition: voltmeter.h:104
uint16_t voltmeter_read_data(voltmeter_t *ctx)
Generic reading 16-bit data function.
VOLTMETER_RETVAL voltmeter_init(voltmeter_t *ctx, voltmeter_cfg_t *cfg)
Initialization function.
Click configuration structure definition.
Definition: voltmeter.h:116
uint8_t spi_mode
Definition: voltmeter.h:132
Click ctx object definition.
Definition: voltmeter.h:96
#define VOLTMETER_RETVAL
Definition: voltmeter.h:66
spi_master_chip_select_polarity_t cs_polarity
Definition: voltmeter.h:133
uint32_t spi_speed
Definition: voltmeter.h:131
pin_name_t sck
Definition: voltmeter.h:122
spi_master_t spi
Definition: voltmeter.h:108
void voltmeter_cfg_setup(voltmeter_cfg_t *cfg)
Config Object Initialization function.
pin_name_t cs
Definition: voltmeter.h:123
pin_name_t chip_select
Definition: voltmeter.h:109
digital_out_t cs
Definition: voltmeter.h:100
void voltmeter_write_data(voltmeter_t *ctx, uint16_t write_data)
Generic write the byte of the data function.
float voltmeter_get_voltage(voltmeter_t *ctx, float coefficient)
Voltage reading function.
pin_name_t an
Definition: voltmeter.h:127
void voltmeter_calibration(voltmeter_t *ctx)
Calibration reading function.