Go to the documentation of this file.
37 #include "mikrosdk_version.h"
40 #if mikroSDK_GET_VERSION < 20800ul
41 #include "rcu_delays.h"
47 #include "drv_digital_out.h"
48 #include "drv_analog_in.h"
49 #include "drv_spi_master.h"
60 #define RMETER_MAP_MIKROBUS( cfg, mikrobus ) \
61 cfg.miso = MIKROBUS( mikrobus, MIKROBUS_MISO ); \
62 cfg.mosi = MIKROBUS( mikrobus, MIKROBUS_MOSI ); \
63 cfg.sck = MIKROBUS( mikrobus, MIKROBUS_SCK ) ; \
64 cfg.cs = MIKROBUS( mikrobus, MIKROBUS_CS ) ; \
65 cfg.an = MIKROBUS( mikrobus, MIKROBUS_AN ) ; \
66 cfg.s3 = MIKROBUS( mikrobus, MIKROBUS_RST ) ; \
67 cfg.s2 = MIKROBUS( mikrobus, MIKROBUS_INT ) ; \
68 cfg.s1 = MIKROBUS( mikrobus, MIKROBUS_PWM )
76 #define RMETER_INIT_ERROR (-1)
void(* rmeter_callback_t)(char *)
Click callback handler definition.
Definition: rmeter.h:89
spi_master_chip_select_polarity_t cs_polarity
Definition: rmeter.h:145
pin_name_t an
Definition: rmeter.h:136
err_t rmeter_calculate_resistance(rmeter_t *ctx, float *data_out, uint16_t data_in)
Resistance Calculation function.
void rmeter_set_callback_handler(rmeter_t *ctx, rmeter_callback_t handler)
Callback Handler Setup function.
pin_name_t sck
Definition: rmeter.h:131
pin_name_t s2
Definition: rmeter.h:138
pin_name_t s1
Definition: rmeter.h:139
void rmeter_set_range_up_to_1k9_ohms(rmeter_t *ctx)
Range Setup Up To 1k9 Ohms function.
rmeter_callback_t callback
Definition: rmeter.h:118
float ifb
Definition: rmeter.h:114
pin_name_t cs
Definition: rmeter.h:132
err_t rmeter_read_an_voltage(rmeter_t *ctx, float *data_out)
AN Voltage Level Reading function.
digital_out_t s3
Definition: rmeter.h:98
void rmeter_cfg_setup(rmeter_cfg_t *cfg)
Config Object Setup function.
spi_master_t spi
Definition: rmeter.h:108
err_t rmeter_read_an(rmeter_t *ctx, uint16_t *data_out)
AN Pin Reading function.
pin_name_t s3
Definition: rmeter.h:137
uint32_t spi_speed
Definition: rmeter.h:143
analog_in_t an
Definition: rmeter.h:104
pin_name_t chip_select
Definition: rmeter.h:110
Click configuration structure definition.
Definition: rmeter.h:126
digital_out_t s2
Definition: rmeter.h:99
err_t rmeter_init(rmeter_t *ctx, rmeter_cfg_t *cfg)
Initialization function.
err_t rmeter_read_measurement(rmeter_t *ctx, uint16_t *data_out)
Measurement Reading function.
void rmeter_set_range_up_to_17k_ohms(rmeter_t *ctx)
Range Setup Up To 17k Ohms function.
Click ctx object definition.
Definition: rmeter.h:95
pin_name_t miso
Definition: rmeter.h:129
float adc_vref
Definition: rmeter.h:150
spi_master_mode_t spi_mode
Definition: rmeter.h:144
analog_in_resolution_t adc_resolution
Definition: rmeter.h:149
digital_out_t s1
Definition: rmeter.h:100
pin_name_t mosi
Definition: rmeter.h:130
uint16_t rmeter_auto_scale_range_execution(rmeter_t *ctx)
Auto Scale Range Execution function.
void rmeter_set_range_up_to_1M9_ohms(rmeter_t *ctx)
Range Setup Up To 1M9 Ohms function.