Go to the documentation of this file.
39 #ifdef PREINIT_SUPPORTED
43 #ifdef MikroCCoreVersion
44 #if MikroCCoreVersion >= 1
49 #include "drv_digital_out.h"
50 #include "drv_digital_in.h"
51 #include "drv_i2c_master.h"
52 #include "drv_spi_master.h"
75 #define VCPMONITOR3_REG_GPIOSTATCL 0x67
76 #define VCPMONITOR3_REG_STATUS 0x80
77 #define VCPMONITOR3_REG_STATVT 0x81
78 #define VCPMONITOR3_REG_STATIP 0x82
79 #define VCPMONITOR3_REG_STATC 0x83
80 #define VCPMONITOR3_REG_STATE 0x84
81 #define VCPMONITOR3_REG_STATCEOF 0x85
82 #define VCPMONITOR3_REG_STATTB 0x86
83 #define VCPMONITOR3_REG_STATVDVCC 0x87
84 #define VCPMONITOR3_REG_STATUSM 0x88
85 #define VCPMONITOR3_REG_STATVTM 0x89
86 #define VCPMONITOR3_REG_STATIPM 0x8A
87 #define VCPMONITOR3_REG_STATCM 0x8B
88 #define VCPMONITOR3_REG_STATEM 0x8C
89 #define VCPMONITOR3_REG_STATCEOFM 0x8D
90 #define VCPMONITOR3_REG_STATTBM 0x8E
91 #define VCPMONITOR3_REG_STATVDVCCM 0x8F
92 #define VCPMONITOR3_REG_ACCICTL 0xE1
93 #define VCPMONITOR3_REG_ACCGPCTL 0xE3
94 #define VCPMONITOR3_REG_ACCIDB 0xE4
95 #define VCPMONITOR3_REG_ALERTBCTL 0xE8
96 #define VCPMONITOR3_REG_TBCTL 0xE9
97 #define VCPMONITOR3_REG_OPCTL 0xF0
98 #define VCPMONITOR3_REG_PGCTL 0xFF
104 #define VCPMONITOR3_REG_C1_47_40 0x00
105 #define VCPMONITOR3_REG_C1_39_32 0x01
106 #define VCPMONITOR3_REG_C1_31_24 0x02
107 #define VCPMONITOR3_REG_C1_23_16 0x03
108 #define VCPMONITOR3_REG_C1_15_8 0x04
109 #define VCPMONITOR3_REG_C1_7_0 0x05
110 #define VCPMONITOR3_REG_E1_47_40 0x06
111 #define VCPMONITOR3_REG_E1_39_32 0x07
112 #define VCPMONITOR3_REG_E1_31_24 0x08
113 #define VCPMONITOR3_REG_E1_23_16 0x09
114 #define VCPMONITOR3_REG_E1_15_8 0x0A
115 #define VCPMONITOR3_REG_E1_7_0 0x0B
116 #define VCPMONITOR3_REG_TB1_31_24 0x0C
117 #define VCPMONITOR3_REG_TB1_23_16 0x0D
118 #define VCPMONITOR3_REG_TB1_15_8 0x0E
119 #define VCPMONITOR3_REG_TB1_7_0 0x0F
120 #define VCPMONITOR3_REG_C2_47_40 0x10
121 #define VCPMONITOR3_REG_C2_39_32 0x11
122 #define VCPMONITOR3_REG_C2_31_24 0x12
123 #define VCPMONITOR3_REG_C2_23_16 0x13
124 #define VCPMONITOR3_REG_C2_15_8 0x14
125 #define VCPMONITOR3_REG_C2_7_0 0x15
126 #define VCPMONITOR3_REG_E2_47_40 0x16
127 #define VCPMONITOR3_REG_E2_39_32 0x17
128 #define VCPMONITOR3_REG_E2_31_24 0x18
129 #define VCPMONITOR3_REG_E2_23_16 0x19
130 #define VCPMONITOR3_REG_E2_15_8 0x1A
131 #define VCPMONITOR3_REG_E2_7_0 0x1B
132 #define VCPMONITOR3_REG_TB2_31_24 0x1C
133 #define VCPMONITOR3_REG_TB2_23_16 0x1D
134 #define VCPMONITOR3_REG_TB2_15_8 0x1E
135 #define VCPMONITOR3_REG_TB2_7_0 0x1F
136 #define VCPMONITOR3_REG_IMAX_15_8 0x40
137 #define VCPMONITOR3_REG_IMAX_7_0 0x41
138 #define VCPMONITOR3_REG_IMIN_15_8 0x42
139 #define VCPMONITOR3_REG_IMIN_7_0 0x43
140 #define VCPMONITOR3_REG_PMAX_15_8 0x44
141 #define VCPMONITOR3_REG_PMAX_7_0 0x45
142 #define VCPMONITOR3_REG_PMIN_15_8 0x46
143 #define VCPMONITOR3_REG_PMIN_7_0 0x47
144 #define VCPMONITOR3_REG_VMAX_15_8 0x50
145 #define VCPMONITOR3_REG_VMAX_7_0 0x51
146 #define VCPMONITOR3_REG_VMIN_15_8 0x52
147 #define VCPMONITOR3_REG_VMIN_7_0 0x53
148 #define VCPMONITOR3_REG_TEMPMAX_15_8 0x54
149 #define VCPMONITOR3_REG_TEMPMAX_7_0 0x55
150 #define VCPMONITOR3_REG_TEMPMIN_15_8 0x56
151 #define VCPMONITOR3_REG_TEMPMIN_7_0 0x57
152 #define VCPMONITOR3_REG_VDVCCMAX_15_8 0x58
153 #define VCPMONITOR3_REG_VDVCCMAX_7_0 0x59
154 #define VCPMONITOR3_REG_VDVCCMIN_15_8 0x5A
155 #define VCPMONITOR3_REG_VDVCCMIN_7_0 0x5B
156 #define VCPMONITOR3_REG_I_23_16 0x90
157 #define VCPMONITOR3_REG_I_15_8 0x91
158 #define VCPMONITOR3_REG_I_7_0 0x92
159 #define VCPMONITOR3_REG_P_23_16 0x93
160 #define VCPMONITOR3_REG_P_15_8 0x94
161 #define VCPMONITOR3_REG_P_7_0 0x95
162 #define VCPMONITOR3_REG_V_15_8 0xA0
163 #define VCPMONITOR3_REG_V_7_0 0xA1
164 #define VCPMONITOR3_REG_TEMP_15_8 0xA2
165 #define VCPMONITOR3_REG_TEMP_7_0 0xA3
166 #define VCPMONITOR3_REG_VDVCC_15_8 0xA4
167 #define VCPMONITOR3_REG_VDVCC_7_0 0xA5
168 #define VCPMONITOR3_REG_IH1_23_16 0xB0
169 #define VCPMONITOR3_REG_IH1_15_8 0xB1
170 #define VCPMONITOR3_REG_IH1_7_0 0xB2
171 #define VCPMONITOR3_REG_IH2_23_16 0xB3
172 #define VCPMONITOR3_REG_IH2_15_8 0xB4
173 #define VCPMONITOR3_REG_IH2_7_0 0xB5
174 #define VCPMONITOR3_REG_IH3_23_16 0xB6
175 #define VCPMONITOR3_REG_IH3_15_8 0xB7
176 #define VCPMONITOR3_REG_IH3_7_0 0xB8
177 #define VCPMONITOR3_REG_IH4_23_16 0xB9
178 #define VCPMONITOR3_REG_IH4_15_8 0xBA
179 #define VCPMONITOR3_REG_IH4_7_0 0xBB
180 #define VCPMONITOR3_REG_IH5_23_16 0xBC
181 #define VCPMONITOR3_REG_IH5_15_8 0xBD
182 #define VCPMONITOR3_REG_IH5_7_0 0xBE
188 #define VCPMONITOR3_REG_C1TH_47_40 0x00
189 #define VCPMONITOR3_REG_C1TH_39_32 0x01
190 #define VCPMONITOR3_REG_C1TH_31_24 0x02
191 #define VCPMONITOR3_REG_C1TH_23_16 0x03
192 #define VCPMONITOR3_REG_C1TH_15_8 0x04
193 #define VCPMONITOR3_REG_C1TH_7_0 0x05
194 #define VCPMONITOR3_REG_C1TL_47_40 0x06
195 #define VCPMONITOR3_REG_C1TL_39_32 0x07
196 #define VCPMONITOR3_REG_C1TL_31_24 0x08
197 #define VCPMONITOR3_REG_C1TL_23_16 0x09
198 #define VCPMONITOR3_REG_C1TL_15_8 0x0A
199 #define VCPMONITOR3_REG_C1TL_7_0 0x0B
200 #define VCPMONITOR3_REG_TB1TH_31_24 0x0C
201 #define VCPMONITOR3_REG_TB1TH_23_16 0x0D
202 #define VCPMONITOR3_REG_TB1TH_15_8 0x0E
203 #define VCPMONITOR3_REG_TB1TH_7_0 0x0F
204 #define VCPMONITOR3_REG_E1TH_47_40 0x10
205 #define VCPMONITOR3_REG_E1TH_39_32 0x11
206 #define VCPMONITOR3_REG_E1TH_31_24 0x12
207 #define VCPMONITOR3_REG_E1TH_23_16 0x13
208 #define VCPMONITOR3_REG_E1TH_15_8 0x14
209 #define VCPMONITOR3_REG_E1TH_7_0 0x15
210 #define VCPMONITOR3_REG_E1TL_47_40 0x16
211 #define VCPMONITOR3_REG_E1TL_39_32 0x17
212 #define VCPMONITOR3_REG_E1TL_31_24 0x18
213 #define VCPMONITOR3_REG_E1TL_23_16 0x19
214 #define VCPMONITOR3_REG_E1TL_15_8 0x1A
215 #define VCPMONITOR3_REG_E1TL_7_0 0x1B
216 #define VCPMONITOR3_REG_C2TH_47_40 0x20
217 #define VCPMONITOR3_REG_C2TH_39_32 0x21
218 #define VCPMONITOR3_REG_C2TH_31_24 0x22
219 #define VCPMONITOR3_REG_C2TH_23_16 0x23
220 #define VCPMONITOR3_REG_C2TH_15_8 0x24
221 #define VCPMONITOR3_REG_C2TH_7_0 0x25
222 #define VCPMONITOR3_REG_C2TL_47_40 0x26
223 #define VCPMONITOR3_REG_C2TL_39_32 0x27
224 #define VCPMONITOR3_REG_C2TL_31_24 0x28
225 #define VCPMONITOR3_REG_C2TL_23_16 0x29
226 #define VCPMONITOR3_REG_C2TL_15_8 0x2A
227 #define VCPMONITOR3_REG_C2TL_7_0 0x2B
228 #define VCPMONITOR3_REG_TB2TH_31_24 0x2C
229 #define VCPMONITOR3_REG_TB2TH_23_16 0x2D
230 #define VCPMONITOR3_REG_TB2TH_15_8 0x2E
231 #define VCPMONITOR3_REG_TB2TH_7_0 0x2F
232 #define VCPMONITOR3_REG_E2TH_47_40 0x30
233 #define VCPMONITOR3_REG_E2TH_39_32 0x31
234 #define VCPMONITOR3_REG_E2TH_31_24 0x32
235 #define VCPMONITOR3_REG_E2TH_23_16 0x33
236 #define VCPMONITOR3_REG_E2TH_15_8 0x34
237 #define VCPMONITOR3_REG_E2TH_7_0 0x35
238 #define VCPMONITOR3_REG_E2TL_47_40 0x36
239 #define VCPMONITOR3_REG_E2TL_39_32 0x37
240 #define VCPMONITOR3_REG_E2TL_31_24 0x38
241 #define VCPMONITOR3_REG_E2TL_23_16 0x39
242 #define VCPMONITOR3_REG_E2TL_15_8 0x3A
243 #define VCPMONITOR3_REG_E2TL_7_0 0x3B
244 #define VCPMONITOR3_REG_ITH_15_8 0x80
245 #define VCPMONITOR3_REG_ITH_7_0 0x81
246 #define VCPMONITOR3_REG_ITL_15_8 0x82
247 #define VCPMONITOR3_REG_ITL_7_0 0x83
248 #define VCPMONITOR3_REG_PTH_15_8 0x84
249 #define VCPMONITOR3_REG_PTH_7_0 0x85
250 #define VCPMONITOR3_REG_PTL_15_8 0x86
251 #define VCPMONITOR3_REG_PTL_7_0 0x87
252 #define VCPMONITOR3_REG_VTH_15_8 0x90
253 #define VCPMONITOR3_REG_VTH_7_0 0x91
254 #define VCPMONITOR3_REG_VTL_15_8 0x92
255 #define VCPMONITOR3_REG_VTL_7_0 0x93
256 #define VCPMONITOR3_REG_TEMPTH_15_8 0x94
257 #define VCPMONITOR3_REG_TEMPTH_7_0 0x95
258 #define VCPMONITOR3_REG_TEMPTL_15_8 0x96
259 #define VCPMONITOR3_REG_TEMPTL_7_0 0x97
260 #define VCPMONITOR3_REG_VDVCCTH_15_8 0x98
261 #define VCPMONITOR3_REG_VDVCCTH_7_0 0x99
262 #define VCPMONITOR3_REG_VDVCCTL_15_8 0x9A
263 #define VCPMONITOR3_REG_VDVCCTL_7_0 0x9B
264 #define VCPMONITOR3_REG_TEMPTFANH_15_8 0x9C
265 #define VCPMONITOR3_REG_TEMPTFANH_7_0 0x9D
266 #define VCPMONITOR3_REG_TEMPTFANL_15_8 0x9E
267 #define VCPMONITOR3_REG_TEMPTFANL_7_0 0x9F
289 #define VCPMONITOR3_VAL_C1 0x00
290 #define VCPMONITOR3_VAL_E1 0x06
291 #define VCPMONITOR3_VAL_TB1 0x0C
292 #define VCPMONITOR3_VAL_C2 0x10
293 #define VCPMONITOR3_VAL_E2 0x16
294 #define VCPMONITOR3_VAL_TB2 0x1C
295 #define VCPMONITOR3_VAL_IMAX 0x40
296 #define VCPMONITOR3_VAL_IMIN 0x42
297 #define VCPMONITOR3_VAL_PMAX 0x44
298 #define VCPMONITOR3_VAL_PMIN 0x46
299 #define VCPMONITOR3_VAL_VMAX 0x50
300 #define VCPMONITOR3_VAL_VMIN 0x52
301 #define VCPMONITOR3_VAL_TEMPMAX 0x54
302 #define VCPMONITOR3_VAL_TEMPMIN 0x56
303 #define VCPMONITOR3_VAL_VDVCCMAX 0x58
304 #define VCPMONITOR3_VAL_VDVCCMIN 0x5A
305 #define VCPMONITOR3_VAL_I 0x90
306 #define VCPMONITOR3_VAL_P 0x93
307 #define VCPMONITOR3_VAL_V 0xA0
308 #define VCPMONITOR3_VAL_TEMP 0xA2
309 #define VCPMONITOR3_VAL_VDVCC 0xA4
310 #define VCPMONITOR3_VAL_IH1 0xB0
311 #define VCPMONITOR3_VAL_IH2 0xB3
312 #define VCPMONITOR3_VAL_IH3 0xB6
313 #define VCPMONITOR3_VAL_IH4 0xB9
314 #define VCPMONITOR3_VAL_IH5 0xBC
321 #define VCPMONITOR3_VAL_C1TH 0x00
322 #define VCPMONITOR3_VAL_C1TL 0x06
323 #define VCPMONITOR3_VAL_TB1TH 0x0C
324 #define VCPMONITOR3_VAL_E1TH 0x10
325 #define VCPMONITOR3_VAL_E1TL 0x16
326 #define VCPMONITOR3_VAL_C2TH 0x20
327 #define VCPMONITOR3_VAL_C2TL 0x26
328 #define VCPMONITOR3_VAL_TB2TH 0x2C
329 #define VCPMONITOR3_VAL_E2TH 0x30
330 #define VCPMONITOR3_VAL_E2TL 0x36
331 #define VCPMONITOR3_VAL_ITH 0x80
332 #define VCPMONITOR3_VAL_ITL 0x82
333 #define VCPMONITOR3_VAL_PTH 0x84
334 #define VCPMONITOR3_VAL_PTL 0x86
335 #define VCPMONITOR3_VAL_VTH 0x90
336 #define VCPMONITOR3_VAL_VTL 0x92
337 #define VCPMONITOR3_VAL_TEMPTH 0x94
338 #define VCPMONITOR3_VAL_TEMPTL 0x96
339 #define VCPMONITOR3_VAL_VDVCCTH 0x98
340 #define VCPMONITOR3_VAL_VDVCCTL 0x9A
341 #define VCPMONITOR3_VAL_TEMPTFANH 0x9C
342 #define VCPMONITOR3_VAL_TEMPTFANL 0x9E
348 #define VCPMONITOR3_LSB_IMAX 12.0
349 #define VCPMONITOR3_LSB_IMIN 12.0
350 #define VCPMONITOR3_LSB_PMAX 200.0
351 #define VCPMONITOR3_LSB_PMIN 200.0
352 #define VCPMONITOR3_LSB_VMAX 2.0
353 #define VCPMONITOR3_LSB_VMIN 2.0
354 #define VCPMONITOR3_LSB_TEMPMAX 0.204
355 #define VCPMONITOR3_OFFS_TEMPMAX 5.5
356 #define VCPMONITOR3_LSB_TEMPMIN 0.204
357 #define VCPMONITOR3_OFFS_TEMPMIN 5.5
358 #define VCPMONITOR3_LSB_VDVCCMAX 145.0
359 #define VCPMONITOR3_LSB_VDVCCMIN 145.0
360 #define VCPMONITOR3_LSB_I 3.0
361 #define VCPMONITOR3_LSB_P 50.0
362 #define VCPMONITOR3_LSB_V 2.0
363 #define VCPMONITOR3_LSB_TEMP 0.204
364 #define VCPMONITOR3_OFFS_TEMP 5.5
365 #define VCPMONITOR3_LSB_VDVCC 145.0
366 #define VCPMONITOR3_LSB_IH1 3.0
367 #define VCPMONITOR3_LSB_IH2 3.0
368 #define VCPMONITOR3_LSB_IH3 3.0
369 #define VCPMONITOR3_LSB_IH4 3.0
370 #define VCPMONITOR3_LSB_IH5 3.0
371 #define VCPMONITOR3_LSB_C1 0.0000011933326
372 #define VCPMONITOR3_LSB_E1 0.000019888856
373 #define VCPMONITOR3_LSB_TB1 0.0003977765
374 #define VCPMONITOR3_LSB_C2 0.0000011933326
375 #define VCPMONITOR3_LSB_E2 0.000019888856
376 #define VCPMONITOR3_LSB_TB2 0.0003977765
382 #define VCPMONITOR3_NORM_OP 0x00
383 #define VCPMONITOR3_SHDN 0x01
384 #define VCPMONITOR3_CLR 0x02
385 #define VCPMONITOR3_SSHOT 0x04
386 #define VCPMONITOR3_CONT 0x08
387 #define VCPMONITOR3_RST 0x80
393 #define VCPMONITOR3_UVLOA 0x01
394 #define VCPMONITOR3_PORA 0x02
395 #define VCPMONITOR3_UVLOSTBY 0x04
396 #define VCPMONITOR3_UVLOD 0x08
397 #define VCPMONITOR3_UPDATE 0x10
398 #define VCPMONITOR3_ADCERR 0x20
399 #define VCPMONITOR3_TBERR 0x40
405 #define VCPMONITOR3_SPI_RD_CMD 0x01
406 #define VCPMONITOR3_SPI_WR_CMD 0x00
408 #define VCPMONITOR3_PAGE_0 0x00
409 #define VCPMONITOR3_PAGE_1 0x01
416 #define VCPMONITOR3_I2C_ADR_L_L 0x5C
417 #define VCPMONITOR3_I2C_ADR_L_H 0x5D
418 #define VCPMONITOR3_I2C_ADR_L_R 0x5E
419 #define VCPMONITOR3_I2C_ADR_R_L 0x64
420 #define VCPMONITOR3_I2C_ADR_R_H 0x65
421 #define VCPMONITOR3_I2C_ADR_R_R 0x66
431 #define VCPMONITOR3_SET_DATA_SAMPLE_EDGE SET_SPI_DATA_SAMPLE_EDGE
432 #define VCPMONITOR3_SET_DATA_SAMPLE_MIDDLE SET_SPI_DATA_SAMPLE_MIDDLE
450 #define VCPMONITOR3_MAP_MIKROBUS( cfg, mikrobus ) \
451 cfg.scl = MIKROBUS( mikrobus, MIKROBUS_SCL ); \
452 cfg.sda = MIKROBUS( mikrobus, MIKROBUS_SDA ); \
453 cfg.miso = MIKROBUS( mikrobus, MIKROBUS_MISO ); \
454 cfg.mosi = MIKROBUS( mikrobus, MIKROBUS_MOSI ); \
455 cfg.sck = MIKROBUS( mikrobus, MIKROBUS_SCK ); \
456 cfg.cs = MIKROBUS( mikrobus, MIKROBUS_CS ); \
457 cfg.gpio = MIKROBUS( mikrobus, MIKROBUS_PWM ); \
458 cfg.alr = MIKROBUS( mikrobus, MIKROBUS_INT )
785 #endif // VCPMONITOR3_H
pin_name_t sck
Definition: vcpmonitor3.h:511
spi_master_chip_select_polarity_t cs_polarity
Definition: vcpmonitor3.h:521
vcpmonitor3_return_value_t
VCP Monitor 3 Click return value data.
Definition: vcpmonitor3.h:532
err_t vcpmonitor3_generic_write(vcpmonitor3_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
VCP Monitor 3 data writing function.
spi_master_t spi
Definition: vcpmonitor3.h:490
vcpmonitor3_drv_t drv_sel
Definition: vcpmonitor3.h:494
pin_name_t sda
Definition: vcpmonitor3.h:508
@ VCPMONITOR3_OK
Definition: vcpmonitor3.h:533
vcpmonitor3_drv_t
VCP Monitor 3 Click driver selector.
Definition: vcpmonitor3.h:468
@ VCPMONITOR3_DRV_SEL_I2C
Definition: vcpmonitor3.h:470
@ VCPMONITOR3_DRV_SEL_SPI
Definition: vcpmonitor3.h:469
This file contains SPI specific macros, functions, etc.
err_t vcpmonitor3_init(vcpmonitor3_t *ctx, vcpmonitor3_cfg_t *cfg)
VCP Monitor 3 initialization function.
vcpmonitor3_master_io_t write_f
Definition: vcpmonitor3.h:496
float vcpmonitor3_read_tb(vcpmonitor3_t *ctx, uint8_t accu_set1)
Read Time in Seconds function.
err_t(* vcpmonitor3_master_io_t)(struct vcpmonitor3_s *, uint8_t, uint8_t *, uint8_t)
VCP Monitor 3 Click driver interface.
Definition: vcpmonitor3.h:478
i2c_master_t i2c
Definition: vcpmonitor3.h:489
void vcpmonitor3_set_op_mode(vcpmonitor3_t *ctx, uint8_t op_mode)
Set Operation Mode function.
pin_name_t cs
Definition: vcpmonitor3.h:512
pin_name_t scl
Definition: vcpmonitor3.h:507
float vcpmonitor3_read_c(vcpmonitor3_t *ctx, uint8_t accu_set1)
Read Charge in Coulombs function.
uint32_t i2c_speed
Definition: vcpmonitor3.h:516
pin_name_t miso
Definition: vcpmonitor3.h:509
err_t vcpmonitor3_generic_read(vcpmonitor3_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
VCP Monitor 3 data reading function.
err_t vcpmonitor3_default_cfg(vcpmonitor3_t *ctx)
VCP Monitor 3 default configuration function.
spi_master_mode_t spi_mode
Definition: vcpmonitor3.h:520
void vcpmonitor3_wr_page_1(vcpmonitor3_t *ctx, uint8_t reg, uint8_t *wr_data, uint8_t n_bytes)
Write Data To Page 1 function.
@ VCPMONITOR3_ERROR
Definition: vcpmonitor3.h:534
vcpmonitor3_drv_t drv_sel
Definition: vcpmonitor3.h:523
void vcpmonitor3_rd_page_0(vcpmonitor3_t *ctx, uint8_t reg, uint8_t *rd_data, uint8_t n_bytes)
Read Data From Page 0 function.
float vcpmonitor3_read_e(vcpmonitor3_t *ctx, uint8_t accu_set1)
Read Energy in Joules function.
void vcpmonitor3_drv_interface_selection(vcpmonitor3_cfg_t *cfg, vcpmonitor3_drv_t drv_sel)
VCP Monitor 3 driver interface setup function.
float vcpmonitor3_read_p(vcpmonitor3_t *ctx)
Read Power in Watts function.
float vcpmonitor3_read_vcc(vcpmonitor3_t *ctx)
Read Voltage at DVCC in Volts function.
pin_name_t alr
Definition: vcpmonitor3.h:514
uint8_t slave_address
Definition: vcpmonitor3.h:492
pin_name_t gpio
Definition: vcpmonitor3.h:513
uint8_t vcpmonitor3_get_int(vcpmonitor3_t *ctx)
Get Interrupt state function.
VCP Monitor 3 Click context object.
Definition: vcpmonitor3.h:485
digital_out_t gpio
Definition: vcpmonitor3.h:486
void vcpmonitor3_cfg_setup(vcpmonitor3_cfg_t *cfg)
VCP Monitor 3 configuration object setup function.
VCP Monitor 3 Click configuration object.
Definition: vcpmonitor3.h:506
pin_name_t mosi
Definition: vcpmonitor3.h:510
uint32_t spi_speed
Definition: vcpmonitor3.h:519
void vcpmonitor3_rd_page_1(vcpmonitor3_t *ctx, uint8_t reg, uint8_t *rd_data, uint8_t n_bytes)
Read Data From Page 1 function.
vcpmonitor3_master_io_t read_f
Definition: vcpmonitor3.h:497
struct vcpmonitor3_s vcpmonitor3_t
VCP Monitor 3 Click context object.
digital_in_t alr
Definition: vcpmonitor3.h:487
uint8_t i2c_address
Definition: vcpmonitor3.h:517
pin_name_t chip_select
Definition: vcpmonitor3.h:493
void vcpmonitor3_wr_page_0(vcpmonitor3_t *ctx, uint8_t reg, uint8_t *wr_data, uint8_t n_bytes)
Write Data To Page 0 function.
float vcpmonitor3_read_v(vcpmonitor3_t *ctx)
Read Voltage in Volts function.
float vcpmonitor3_read_i(vcpmonitor3_t *ctx)
Read Current in Amps function.
float vcpmonitor3_read_temp(vcpmonitor3_t *ctx)
Read Die Temperature in degrees Centigrade function.