LibDriver AS5600
Loading...
Searching...
No Matches
driver_as5600_basic.c
Go to the documentation of this file.
1
36
37#include "driver_as5600_basic.h"
38
39static as5600_handle_t gs_handle;
40
48uint8_t as5600_basic_init(void)
49{
50 uint8_t res;
51
52 /* link interface function */
60
61 /* as5600 init */
62 res = as5600_init(&gs_handle);
63 if (res != 0)
64 {
65 as5600_interface_debug_print("as5600: init failed.\n");
66
67 return 1;
68 }
69
70 return 0;
71}
72
81uint8_t as5600_basic_read(float *angle)
82{
83 uint8_t res;
84 uint16_t angle_raw;
85
86 /* read data */
87 res = as5600_read(&gs_handle, &angle_raw, angle);
88 if (res != 0)
89 {
90 as5600_interface_debug_print("as5600: read failed.\n");
91
92 return 1;
93 }
94
95 return 0;
96}
97
106{
107 /* close as5600 */
108 if (as5600_deinit(&gs_handle) != 0)
109 {
110 return 1;
111 }
112 else
113 {
114 return 0;
115 }
116}
driver as5600 basic header file
uint8_t as5600_read(as5600_handle_t *handle, uint16_t *angle_raw, float *deg)
read the magnetic angle
struct as5600_handle_s as5600_handle_t
as5600 handle structure definition
uint8_t as5600_init(as5600_handle_t *handle)
initialize the chip
uint8_t as5600_deinit(as5600_handle_t *handle)
close the chip
uint8_t as5600_basic_read(float *angle)
basic example read
uint8_t as5600_basic_init(void)
basic example init
uint8_t as5600_basic_deinit(void)
basic example deinit
uint8_t as5600_interface_iic_deinit(void)
interface iic bus deinit
uint8_t as5600_interface_iic_init(void)
interface iic bus init
void as5600_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t as5600_interface_iic_write(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus write
void as5600_interface_debug_print(const char *const fmt,...)
interface print format data
uint8_t as5600_interface_iic_read(uint8_t addr, uint8_t reg, uint8_t *buf, uint16_t len)
interface iic bus read