Go to the documentation of this file.
38 #include "mikrosdk_version.h"
41 #if mikroSDK_GET_VERSION < 20800ul
42 #include "rcu_delays.h"
48 #include "drv_digital_out.h"
49 #include "drv_digital_in.h"
50 #include "drv_spi_master.h"
64 #define MAGNETO4_MAP_MIKROBUS( cfg, mikrobus ) \
65 cfg.miso = MIKROBUS( mikrobus, MIKROBUS_MISO ); \
66 cfg.mosi = MIKROBUS( mikrobus, MIKROBUS_MOSI ); \
67 cfg.sck = MIKROBUS( mikrobus, MIKROBUS_SCK ); \
68 cfg.cs = MIKROBUS( mikrobus, MIKROBUS_CS ); \
69 cfg.a = MIKROBUS( mikrobus, MIKROBUS_AN ); \
70 cfg.b = MIKROBUS( mikrobus, MIKROBUS_RST ); \
71 cfg.ind = MIKROBUS( mikrobus, MIKROBUS_INT )
78 #define MAGNETO4_RETVAL uint8_t
80 #define MAGNETO4_OK 0x00
81 #define MAGNETO4_INIT_ERROR 0xFF
88 #define MAGNETO4_ENCODER_TO_ZERO_POSITION 0
95 #define MAGNETO4_MAX_MAGNETIC_FIELD_VALUE 3000
355 #endif // _MAGNETO4_H_
uint32_t magneto4_start_measurement(magneto4_t *ctx)
Measurement function.
digital_in_t b
Definition: magneto4.h:115
uint8_t dec_val
Definition: magneto4.h:166
pin_name_t sck
Definition: magneto4.h:143
void magneto4_cfg_setup(magneto4_cfg_t *cfg)
Config Object Initialization function.
pin_name_t pwm
Definition: magneto4.h:150
uint8_t magneto4_get_out_a(magneto4_t *ctx)
Get A ( AN ) pin status.
uint8_t b_edge
Definition: magneto4.h:128
Click magnetic status structure definition.
Definition: magneto4.h:165
pin_name_t cs
Definition: magneto4.h:144
digital_in_t pwm
Definition: magneto4.h:116
uint8_t magneto4_get_magnetic_status(magneto4_t *ctx, mag_status_t *mag_status)
Get Magnetic measurement status.
spi_master_chip_select_polarity_t cs_polarity
Definition: magneto4.h:157
int32_t encoder_position
Definition: magneto4.h:126
digital_out_t cs
Definition: magneto4.h:110
spi_master_t spi
Definition: magneto4.h:121
void magneto4_get_encoder_position(magneto4_t *ctx)
Encoder position.
digital_in_t a
Definition: magneto4.h:114
uint8_t a_edge
Definition: magneto4.h:127
void magneto4_generic_transfer(magneto4_t *ctx, uint8_t *rd_buf, uint16_t rd_len)
Generic transfer function.
pin_name_t mosi
Definition: magneto4.h:142
uint8_t ocf_val
Definition: magneto4.h:170
uint8_t magneto4_get_encoder_direction(magneto4_t *ctx)
Encoder direction.
Click configuration structure definition.
Definition: magneto4.h:138
#define MAGNETO4_RETVAL
Definition: magneto4.h:78
uint8_t state_b
Definition: magneto4.h:130
pin_name_t ind
Definition: magneto4.h:151
uint8_t inc_val
Definition: magneto4.h:167
uint32_t spi_speed
Definition: magneto4.h:155
digital_in_t ind
Definition: magneto4.h:117
uint8_t spi_mode
Definition: magneto4.h:156
pin_name_t b
Definition: magneto4.h:149
void magneto4_default_cfg(magneto4_t *ctx)
Click Default Configuration function.
uint8_t lin_val
Definition: magneto4.h:168
void magneto4_set_start_position(magneto4_t *ctx, int32_t encoder_pos)
Set start encoder position.
uint16_t magneto4_get_magnetic_field(magneto4_t *ctx)
Measurement Field.
uint8_t magneto4_get_out_b(magneto4_t *ctx)
Get B ( RST ) pin status.
pin_name_t a
Definition: magneto4.h:148
uint8_t cof_val
Definition: magneto4.h:169
pin_name_t chip_select
Definition: magneto4.h:122
uint8_t magneto4_get_index(magneto4_t *ctx)
Get IND ( interrupt ) pin status.
Click ctx object definition.
Definition: magneto4.h:109
MAGNETO4_RETVAL magneto4_init(magneto4_t *ctx, magneto4_cfg_t *cfg)
Initialization function.
pin_name_t miso
Definition: magneto4.h:141
uint8_t state_a
Definition: magneto4.h:129