caffeine-sal 0.1.17
Header-only polymorphic middleware services layer for the Caffeine Framework
Loading...
Searching...
No Matches
cfn_sal_dev_gyroscope.h
Go to the documentation of this file.
1
6#ifndef CAFFEINE_SAL_DEV_GYROSCOPE_H
7#define CAFFEINE_SAL_DEV_GYROSCOPE_H
8
9#ifdef __cplusplus
10extern "C"
11{
12#endif
13
14/* Includes ---------------------------------------------------------*/
15#include "cfn_sal.h"
16
17/* Defines ----------------------------------------------------------*/
18
19#define CFN_SAL_DEV_TYPE_GYROSCOPE CFN_SAL_TYPE('G', 'Y', 'R')
20
21/* Types Enums ------------------------------------------------------*/
22
29
37
46
58
64
72
78
84
90
91/* Types Structs ----------------------------------------------------*/
92
99
100typedef struct
101{
102 int32_t x;
103 int32_t y;
104 int32_t z;
106
119
120typedef struct cfn_sal_dev_gyroscope_s cfn_sal_dev_gyroscope_t;
122
124 uint32_t event,
125 uint32_t error,
126 void *user_arg);
127
132{
133 cfn_hal_api_base_t base;
134
135 /* Measurement Operations */
136 cfn_hal_error_code_t (*read_xyz_mdps)(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_data_t *data_out);
137 cfn_hal_error_code_t (*read_xyz_raw)(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_data_t *data_out);
138
139 /* Feature Data Retrieval */
140 cfn_hal_error_code_t (*read_fifo)(cfn_sal_dev_gyroscope_t *driver,
142 size_t *count);
143 cfn_hal_error_code_t (*get_status)(cfn_sal_dev_gyroscope_t *driver, uint32_t *status_flags);
144 cfn_hal_error_code_t (*get_id)(cfn_sal_dev_gyroscope_t *driver, uint32_t *id_out);
145
147};
148
150
156
157/* Functions inline ------------------------------------------------- */
158
160 uint32_t peripheral_id,
161 void *dependency,
163 const cfn_sal_phy_t *phy,
164 const cfn_sal_dev_gyroscope_config_t *config,
166 void *user_arg)
167{
168 CFN_HAL_POPULATE_DRIVER(
169 driver, CFN_SAL_DEV_TYPE_GYROSCOPE, peripheral_id, NULL, dependency, api, phy, config, callback, user_arg);
170}
171
173 const cfn_sal_dev_gyroscope_config_t *config,
174 const cfn_sal_phy_t *phy,
175 void *dependency,
177 void *user_arg);
179
180CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_init(cfn_sal_dev_gyroscope_t *driver)
181{
182 if (!driver)
183 {
184 return CFN_HAL_ERROR_BAD_PARAM;
185 }
186 driver->base.vmt = (const struct cfn_hal_api_base_s *) driver->api;
187 return cfn_hal_base_init(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE);
188}
189
190CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_deinit(cfn_sal_dev_gyroscope_t *driver)
191{
192 if (!driver)
193 {
194 return CFN_HAL_ERROR_BAD_PARAM;
195 }
196 return cfn_hal_base_deinit(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE);
197}
198
199CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_config_set(cfn_sal_dev_gyroscope_t *driver,
200 const cfn_sal_dev_gyroscope_config_t *config)
201{
202 if (!driver)
203 {
204 return CFN_HAL_ERROR_BAD_PARAM;
205 }
206 driver->config = config;
207 return cfn_hal_base_config_set(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, (const void *) config);
208}
209
210CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_config_get(cfn_sal_dev_gyroscope_t *driver,
212{
213 if (!driver || !config || !driver->config)
214 {
215 return CFN_HAL_ERROR_BAD_PARAM;
216 }
217 *config = *(driver->config);
218 return CFN_HAL_ERROR_OK;
219}
220
221CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_callback_register(cfn_sal_dev_gyroscope_t *driver,
223 void *user_arg)
224{
225 if (!driver)
226 {
227 return CFN_HAL_ERROR_BAD_PARAM;
228 }
229 driver->cb = callback;
230 driver->cb_user_arg = user_arg;
231 return cfn_hal_base_callback_register(
232 &driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, (cfn_hal_callback_t) callback, user_arg);
233}
234
235CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_power_state_set(cfn_sal_dev_gyroscope_t *driver,
236 cfn_hal_power_state_t state)
237{
238 if (!driver)
239 {
240 return CFN_HAL_ERROR_BAD_PARAM;
241 }
242 return cfn_hal_power_state_set(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, state);
243}
244
245CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_event_enable(cfn_sal_dev_gyroscope_t *driver,
246 uint32_t event_mask)
247{
248 if (!driver)
249 {
250 return CFN_HAL_ERROR_BAD_PARAM;
251 }
252 return cfn_hal_base_event_enable(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, event_mask);
253}
254
255CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_event_disable(cfn_sal_dev_gyroscope_t *driver,
256 uint32_t event_mask)
257{
258 if (!driver)
259 {
260 return CFN_HAL_ERROR_BAD_PARAM;
261 }
262 return cfn_hal_base_event_disable(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, event_mask);
263}
264
265CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_event_get(cfn_sal_dev_gyroscope_t *driver,
266 uint32_t *event_mask)
267{
268 if (!driver)
269 {
270 return CFN_HAL_ERROR_BAD_PARAM;
271 }
272 return cfn_hal_base_event_get(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, event_mask);
273}
274
275CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_error_enable(cfn_sal_dev_gyroscope_t *driver,
276 uint32_t error_mask)
277{
278 if (!driver)
279 {
280 return CFN_HAL_ERROR_BAD_PARAM;
281 }
282 return cfn_hal_base_error_enable(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, error_mask);
283}
284
285CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_error_disable(cfn_sal_dev_gyroscope_t *driver,
286 uint32_t error_mask)
287{
288 if (!driver)
289 {
290 return CFN_HAL_ERROR_BAD_PARAM;
291 }
292 return cfn_hal_base_error_disable(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, error_mask);
293}
294
295CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_error_get(cfn_sal_dev_gyroscope_t *driver,
296 uint32_t *error_mask)
297{
298 if (!driver)
299 {
300 return CFN_HAL_ERROR_BAD_PARAM;
301 }
302 return cfn_hal_base_error_get(&driver->base, CFN_SAL_DEV_TYPE_GYROSCOPE, error_mask);
303}
304
305/* Service Specific Functions --------------------------------------- */
306
307CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_read_xyz_mdps(cfn_sal_dev_gyroscope_t *driver,
309{
310 cfn_hal_error_code_t error = CFN_HAL_ERROR_OK;
311 CFN_HAL_CHECK_AND_CALL_FUNC_VARG(CFN_SAL_DEV_TYPE_GYROSCOPE, read_xyz_mdps, driver, error, data_out);
312 return error;
313}
314
315CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_read_xyz_raw(cfn_sal_dev_gyroscope_t *driver,
317{
318 cfn_hal_error_code_t error = CFN_HAL_ERROR_OK;
319 CFN_HAL_CHECK_AND_CALL_FUNC_VARG(CFN_SAL_DEV_TYPE_GYROSCOPE, read_xyz_raw, driver, error, data_out);
320 return error;
321}
322
323CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_read_fifo(cfn_sal_dev_gyroscope_t *driver,
325 size_t *count)
326{
327 cfn_hal_error_code_t error = CFN_HAL_ERROR_OK;
328 CFN_HAL_CHECK_AND_CALL_FUNC_VARG(CFN_SAL_DEV_TYPE_GYROSCOPE, read_fifo, driver, error, data, count);
329 return error;
330}
331
332CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_get_status(cfn_sal_dev_gyroscope_t *driver,
333 uint32_t *status_flags)
334{
335 cfn_hal_error_code_t error = CFN_HAL_ERROR_OK;
336 CFN_HAL_CHECK_AND_CALL_FUNC_VARG(CFN_SAL_DEV_TYPE_GYROSCOPE, get_status, driver, error, status_flags);
337 return error;
338}
339
340CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_get_id(cfn_sal_dev_gyroscope_t *driver, uint32_t *id_out)
341{
342 cfn_hal_error_code_t error = CFN_HAL_ERROR_OK;
343 CFN_HAL_CHECK_AND_CALL_FUNC_VARG(CFN_SAL_DEV_TYPE_GYROSCOPE, get_id, driver, error, id_out);
344 return error;
345}
346
348{
349 if (driver && driver->base.type == CFN_SAL_DEV_TYPE_GYROSCOPE && driver->api)
350 {
351 if (driver->api->handle_interrupt)
352 {
353 driver->api->handle_interrupt(driver);
354 }
355 }
356}
357
358#ifdef __cplusplus
359}
360#endif
361
362#endif /* CAFFEINE_SAL_DEV_GYROSCOPE_H */
Core definitions and macros for Caffeine SAL.
#define CFN_SAL_CREATE_DRIVER_TYPE(prefix, config_type, api_type, phy_type, cb_type)
Definition cfn_sal.h:38
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_deinit(cfn_sal_dev_gyroscope_t *driver)
Definition cfn_sal_dev_gyroscope.h:190
#define CFN_SAL_DEV_TYPE_GYROSCOPE
Definition cfn_sal_dev_gyroscope.h:19
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_config_set(cfn_sal_dev_gyroscope_t *driver, const cfn_sal_dev_gyroscope_config_t *config)
Definition cfn_sal_dev_gyroscope.h:199
cfn_hal_error_code_t cfn_sal_dev_gyroscope_construct(cfn_sal_dev_gyroscope_t *driver, const cfn_sal_dev_gyroscope_config_t *config, const cfn_sal_phy_t *phy, void *dependency, cfn_sal_dev_gyroscope_callback_t callback, void *user_arg)
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_read_fifo(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_data_t *data, size_t *count)
Definition cfn_sal_dev_gyroscope.h:323
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_error_enable(cfn_sal_dev_gyroscope_t *driver, uint32_t error_mask)
Definition cfn_sal_dev_gyroscope.h:275
cfn_sal_dev_gyroscope_int_level_t
Definition cfn_sal_dev_gyroscope.h:86
@ CFN_SAL_DEV_GYROSCOPE_INT_LEVEL_ACTIVE_HIGH
Definition cfn_sal_dev_gyroscope.h:88
@ CFN_SAL_DEV_GYROSCOPE_INT_LEVEL_ACTIVE_LOW
Definition cfn_sal_dev_gyroscope.h:87
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_init(cfn_sal_dev_gyroscope_t *driver)
Definition cfn_sal_dev_gyroscope.h:180
cfn_sal_dev_gyroscope_event_t
Definition cfn_sal_dev_gyroscope.h:24
@ CFN_SAL_DEV_GYROSCOPE_EVENT_NONE
Definition cfn_sal_dev_gyroscope.h:25
@ CFN_SAL_DEV_GYROSCOPE_EVENT_WAKEUP
Definition cfn_sal_dev_gyroscope.h:27
@ CFN_SAL_DEV_GYROSCOPE_EVENT_DATA_READY
Definition cfn_sal_dev_gyroscope.h:26
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_get_id(cfn_sal_dev_gyroscope_t *driver, uint32_t *id_out)
Definition cfn_sal_dev_gyroscope.h:340
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_config_get(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_config_t *config)
Definition cfn_sal_dev_gyroscope.h:210
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_read_xyz_raw(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_data_t *data_out)
Definition cfn_sal_dev_gyroscope.h:315
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_callback_register(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_callback_t callback, void *user_arg)
Definition cfn_sal_dev_gyroscope.h:221
cfn_sal_dev_gyroscope_bw_t
Definition cfn_sal_dev_gyroscope.h:60
@ CFN_SAL_DEV_GYROSCOPE_BW_ODR_DIV_2
Definition cfn_sal_dev_gyroscope.h:61
@ CFN_SAL_DEV_GYROSCOPE_BW_ODR_DIV_4
Definition cfn_sal_dev_gyroscope.h:62
cfn_hal_error_code_t cfn_sal_dev_gyroscope_destruct(cfn_sal_dev_gyroscope_t *driver)
cfn_sal_dev_gyroscope_mode_t
Definition cfn_sal_dev_gyroscope.h:31
@ CFN_SAL_DEV_GYROSCOPE_MODE_LOW_POWER
Definition cfn_sal_dev_gyroscope.h:33
@ CFN_SAL_DEV_GYROSCOPE_MODE_POWER_DOWN
Definition cfn_sal_dev_gyroscope.h:35
@ CFN_SAL_DEV_GYROSCOPE_MODE_NORMAL
Definition cfn_sal_dev_gyroscope.h:32
@ CFN_SAL_DEV_GYROSCOPE_MODE_STANDBY
Definition cfn_sal_dev_gyroscope.h:34
cfn_sal_dev_gyroscope_int_mode_t
Definition cfn_sal_dev_gyroscope.h:80
@ CFN_SAL_DEV_GYROSCOPE_INT_MODE_OPEN_DRAIN
Definition cfn_sal_dev_gyroscope.h:82
@ CFN_SAL_DEV_GYROSCOPE_INT_MODE_PUSH_PULL
Definition cfn_sal_dev_gyroscope.h:81
cfn_sal_dev_gyroscope_range_t
Definition cfn_sal_dev_gyroscope.h:39
@ CFN_SAL_DEV_GYROSCOPE_RANGE_250DPS
Definition cfn_sal_dev_gyroscope.h:41
@ CFN_SAL_DEV_GYROSCOPE_RANGE_500DPS
Definition cfn_sal_dev_gyroscope.h:42
@ CFN_SAL_DEV_GYROSCOPE_RANGE_1000DPS
Definition cfn_sal_dev_gyroscope.h:43
@ CFN_SAL_DEV_GYROSCOPE_RANGE_125DPS
Definition cfn_sal_dev_gyroscope.h:40
@ CFN_SAL_DEV_GYROSCOPE_RANGE_2000DPS
Definition cfn_sal_dev_gyroscope.h:44
void(* cfn_sal_dev_gyroscope_callback_t)(cfn_sal_dev_gyroscope_t *driver, uint32_t event, uint32_t error, void *user_arg)
Definition cfn_sal_dev_gyroscope.h:123
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_event_get(cfn_sal_dev_gyroscope_t *driver, uint32_t *event_mask)
Definition cfn_sal_dev_gyroscope.h:265
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_get_status(cfn_sal_dev_gyroscope_t *driver, uint32_t *status_flags)
Definition cfn_sal_dev_gyroscope.h:332
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_power_state_set(cfn_sal_dev_gyroscope_t *driver, cfn_hal_power_state_t state)
Definition cfn_sal_dev_gyroscope.h:235
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_read_xyz_mdps(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_data_t *data_out)
Definition cfn_sal_dev_gyroscope.h:307
cfn_sal_dev_gyroscope_odr_t
Definition cfn_sal_dev_gyroscope.h:48
@ CFN_SAL_DEV_GYROSCOPE_ODR_50_HZ
Definition cfn_sal_dev_gyroscope.h:52
@ CFN_SAL_DEV_GYROSCOPE_ODR_1000_HZ
Definition cfn_sal_dev_gyroscope.h:56
@ CFN_SAL_DEV_GYROSCOPE_ODR_1_HZ
Definition cfn_sal_dev_gyroscope.h:49
@ CFN_SAL_DEV_GYROSCOPE_ODR_10_HZ
Definition cfn_sal_dev_gyroscope.h:50
@ CFN_SAL_DEV_GYROSCOPE_ODR_200_HZ
Definition cfn_sal_dev_gyroscope.h:54
@ CFN_SAL_DEV_GYROSCOPE_ODR_400_HZ
Definition cfn_sal_dev_gyroscope.h:55
@ CFN_SAL_DEV_GYROSCOPE_ODR_100_HZ
Definition cfn_sal_dev_gyroscope.h:53
@ CFN_SAL_DEV_GYROSCOPE_ODR_25_HZ
Definition cfn_sal_dev_gyroscope.h:51
CFN_HAL_VMT_CHECK(struct cfn_sal_dev_gyroscope_api_s)
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_error_get(cfn_sal_dev_gyroscope_t *driver, uint32_t *error_mask)
Definition cfn_sal_dev_gyroscope.h:295
CFN_HAL_INLINE void cfn_sal_dev_gyroscope_handle_interrupt(cfn_sal_dev_gyroscope_t *driver)
Definition cfn_sal_dev_gyroscope.h:347
struct cfn_sal_dev_gyroscope_s cfn_sal_dev_gyroscope_t
Definition cfn_sal_dev_gyroscope.h:120
cfn_sal_dev_gyroscope_int_pin_t
Definition cfn_sal_dev_gyroscope.h:74
@ CFN_SAL_DEV_GYROSCOPE_INT_PIN_1
Definition cfn_sal_dev_gyroscope.h:75
@ CFN_SAL_DEV_GYROSCOPE_INT_PIN_2
Definition cfn_sal_dev_gyroscope.h:76
cfn_sal_dev_gyroscope_fifo_mode_t
Definition cfn_sal_dev_gyroscope.h:66
@ CFN_SAL_DEV_GYROSCOPE_FIFO_MODE_STREAM
Definition cfn_sal_dev_gyroscope.h:69
@ CFN_SAL_DEV_GYROSCOPE_FIFO_MODE_BYPASS
Definition cfn_sal_dev_gyroscope.h:67
@ CFN_SAL_DEV_GYROSCOPE_FIFO_MODE_FIFO
Definition cfn_sal_dev_gyroscope.h:68
@ CFN_SAL_DEV_GYROSCOPE_FIFO_MODE_TRIGGER
Definition cfn_sal_dev_gyroscope.h:70
CFN_HAL_INLINE void cfn_sal_dev_gyroscope_populate(cfn_sal_dev_gyroscope_t *driver, uint32_t peripheral_id, void *dependency, const cfn_sal_dev_gyroscope_api_t *api, const cfn_sal_phy_t *phy, const cfn_sal_dev_gyroscope_config_t *config, cfn_sal_dev_gyroscope_callback_t callback, void *user_arg)
Definition cfn_sal_dev_gyroscope.h:159
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_event_disable(cfn_sal_dev_gyroscope_t *driver, uint32_t event_mask)
Definition cfn_sal_dev_gyroscope.h:255
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_event_enable(cfn_sal_dev_gyroscope_t *driver, uint32_t event_mask)
Definition cfn_sal_dev_gyroscope.h:245
CFN_HAL_INLINE cfn_hal_error_code_t cfn_sal_dev_gyroscope_error_disable(cfn_sal_dev_gyroscope_t *driver, uint32_t error_mask)
Definition cfn_sal_dev_gyroscope.h:285
Gyroscope Sensor Virtual Method Table (VMT).
Definition cfn_sal_dev_gyroscope.h:132
cfn_hal_error_code_t(* read_fifo)(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_data_t *data, size_t *count)
Definition cfn_sal_dev_gyroscope.h:140
void(* handle_interrupt)(cfn_sal_dev_gyroscope_t *driver)
Definition cfn_sal_dev_gyroscope.h:146
cfn_hal_error_code_t(* get_id)(cfn_sal_dev_gyroscope_t *driver, uint32_t *id_out)
Definition cfn_sal_dev_gyroscope.h:144
cfn_hal_error_code_t(* read_xyz_mdps)(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_data_t *data_out)
Definition cfn_sal_dev_gyroscope.h:136
cfn_hal_api_base_t base
Definition cfn_sal_dev_gyroscope.h:133
cfn_hal_error_code_t(* read_xyz_raw)(cfn_sal_dev_gyroscope_t *driver, cfn_sal_dev_gyroscope_data_t *data_out)
Definition cfn_sal_dev_gyroscope.h:137
cfn_hal_error_code_t(* get_status)(cfn_sal_dev_gyroscope_t *driver, uint32_t *status_flags)
Definition cfn_sal_dev_gyroscope.h:143
Definition cfn_sal_dev_gyroscope.h:108
uint8_t fifo_watermark
Definition cfn_sal_dev_gyroscope.h:114
cfn_sal_dev_gyroscope_range_t range
Definition cfn_sal_dev_gyroscope.h:112
cfn_sal_dev_gyroscope_int_config_t int2_config
Definition cfn_sal_dev_gyroscope.h:116
cfn_sal_dev_gyroscope_bw_t bandwidth
Definition cfn_sal_dev_gyroscope.h:111
cfn_sal_dev_gyroscope_mode_t mode
Definition cfn_sal_dev_gyroscope.h:109
cfn_sal_dev_gyroscope_fifo_mode_t fifo_mode
Definition cfn_sal_dev_gyroscope.h:113
cfn_sal_dev_gyroscope_odr_t odr
Definition cfn_sal_dev_gyroscope.h:110
void * custom
Definition cfn_sal_dev_gyroscope.h:117
cfn_sal_dev_gyroscope_int_config_t int1_config
Definition cfn_sal_dev_gyroscope.h:115
Definition cfn_sal_dev_gyroscope.h:101
int32_t y
Definition cfn_sal_dev_gyroscope.h:103
int32_t z
Definition cfn_sal_dev_gyroscope.h:104
int32_t x
Definition cfn_sal_dev_gyroscope.h:102
Definition cfn_sal_dev_gyroscope.h:94
cfn_sal_dev_gyroscope_int_mode_t mode
Definition cfn_sal_dev_gyroscope.h:95
cfn_sal_dev_gyroscope_int_level_t level
Definition cfn_sal_dev_gyroscope.h:96
uint32_t event_mask
Definition cfn_sal_dev_gyroscope.h:97
Generic physical mapping for services.
Definition cfn_sal_types.h:26