Go to the documentation of this file.
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
238 #endif // _VOLTMETER_H_
spi_master_t spi
Definition: voltmeter.h:108
void voltmeter_calibration(voltmeter_t *ctx)
Calibration reading function.
pin_name_t an
Definition: voltmeter.h:127
pin_name_t mosi
Definition: voltmeter.h:121
pin_name_t miso
Definition: voltmeter.h:120
digital_out_t cs
Definition: voltmeter.h:100
uint16_t voltmeter_read_data(voltmeter_t *ctx)
Generic reading 16-bit data function.
digital_in_t an
Definition: voltmeter.h:104
float voltmeter_get_voltage(voltmeter_t *ctx, uint8_t coefficient)
Voltage reading function.
uint8_t voltmeter_read_byte(voltmeter_t *ctx)
Generic read the byte of the data function.
void voltmeter_generic_transfer(voltmeter_t *ctx, uint8_t *wr_buf, uint16_t wr_len, uint8_t *rd_buf, uint16_t rd_len)
Generic transfer function.
pin_name_t cs
Definition: voltmeter.h:123
pin_name_t sck
Definition: voltmeter.h:122
#define VOLTMETER_RETVAL
Definition: voltmeter.h:66
uint8_t spi_mode
Definition: voltmeter.h:132
pin_name_t chip_select
Definition: voltmeter.h:109
VOLTMETER_RETVAL voltmeter_init(voltmeter_t *ctx, voltmeter_cfg_t *cfg)
Initialization function.
void voltmeter_cfg_setup(voltmeter_cfg_t *cfg)
Config Object Initialization function.
Click ctx object definition.
Definition: voltmeter.h:96
uint32_t spi_speed
Definition: voltmeter.h:131
void voltmeter_write_data(voltmeter_t *ctx, uint16_t write_data)
Generic write the byte of the data function.
Click configuration structure definition.
Definition: voltmeter.h:116
spi_master_chip_select_polarity_t cs_polarity
Definition: voltmeter.h:133