LibDriver ADXL362
Loading...
Searching...
No Matches
driver_adxl362_register_test.c
Go to the documentation of this file.
1
36
38#include <stdlib.h>
39
40static adxl362_handle_t gs_handle;
41
50{
51 uint8_t res;
52 uint8_t id;
53 uint8_t status;
54 uint8_t tim_short;
55 uint8_t tim_short_check;
56 uint16_t tim;
57 uint16_t tim_check;
58 uint16_t reg;
59 uint16_t counter;
60 uint16_t sample;
61 uint16_t sample_check;
62 uint16_t threshold;
63 uint16_t threshold_check;
64 float g;
65 float g_check;
66 float ms;
67 float ms_check;
68 adxl362_bool_t enable;
69 adxl362_info_t info;
70 adxl362_fifo_mode_t fifo_mode;
72 adxl362_range_t range;
73 adxl362_bandwidth_t bandwidth;
74 adxl362_odr_t odr;
75 adxl362_noise_mode_t noise_mode;
76 adxl362_mode_t mode;
77 adxl362_detect_mode_t detect_mode;
79
80 /* link interface function */
90
91 /* get information */
92 res = adxl362_info(&info);
93 if (res != 0)
94 {
95 adxl362_interface_debug_print("adxl362: get info failed.\n");
96
97 return 1;
98 }
99 else
100 {
101 /* print chip info */
102 adxl362_interface_debug_print("adxl362: chip is %s.\n", info.chip_name);
103 adxl362_interface_debug_print("adxl362: manufacturer is %s.\n", info.manufacturer_name);
104 adxl362_interface_debug_print("adxl362: interface is %s.\n", info.interface);
105 adxl362_interface_debug_print("adxl362: driver version is %d.%d.\n", info.driver_version / 1000, (info.driver_version % 1000) / 100);
106 adxl362_interface_debug_print("adxl362: min supply voltage is %0.1fV.\n", info.supply_voltage_min_v);
107 adxl362_interface_debug_print("adxl362: max supply voltage is %0.1fV.\n", info.supply_voltage_max_v);
108 adxl362_interface_debug_print("adxl362: max current is %0.2fmA.\n", info.max_current_ma);
109 adxl362_interface_debug_print("adxl362: max temperature is %0.1fC.\n", info.temperature_max);
110 adxl362_interface_debug_print("adxl362: min temperature is %0.1fC.\n", info.temperature_min);
111 }
112
113 /* start register test */
114 adxl362_interface_debug_print("adxl362: start register test.\n");
115
116 /* init the adxl362 */
117 res = adxl362_init(&gs_handle);
118 if (res != 0)
119 {
120 adxl362_interface_debug_print("adxl362: init failed.\n");
121
122 return 1;
123 }
124
125 /* adxl362_get_revision test */
126 adxl362_interface_debug_print("adxl362: adxl362_get_revision test.\n");
127
128 /* get revision */
129 res = adxl362_get_revision(&gs_handle, &id);
130 if (res != 0)
131 {
132 adxl362_interface_debug_print("adxl362: get revision failed.\n");
133 (void)adxl362_deinit(&gs_handle);
134
135 return 1;
136 }
137 adxl362_interface_debug_print("adxl362: revision is 0x%02X.\n", id);
138
139 /* adxl362_get_status test */
140 adxl362_interface_debug_print("adxl362: adxl362_get_status test.\n");
141
142 /* get status */
143 res = adxl362_get_status(&gs_handle, &status);
144 if (res != 0)
145 {
146 adxl362_interface_debug_print("adxl362: get status failed.\n");
147 (void)adxl362_deinit(&gs_handle);
148
149 return 1;
150 }
151 adxl362_interface_debug_print("adxl362: status is 0x%02X.\n", status);
152
153 /* adxl362_get_fifo_counter test */
154 adxl362_interface_debug_print("adxl362: adxl362_get_fifo_counter test.\n");
155
156 /* get fifo counter */
157 res = adxl362_get_fifo_counter(&gs_handle, &counter);
158 if (res != 0)
159 {
160 adxl362_interface_debug_print("adxl362: get fifo failed.\n");
161 (void)adxl362_deinit(&gs_handle);
162
163 return 1;
164 }
165 adxl362_interface_debug_print("adxl362: fifo counter %d.\n", counter);
166
167 /* adxl362_soft_reset test */
168 adxl362_interface_debug_print("adxl362: adxl362_soft_reset test.\n");
169
170 /* soft reset */
171 res = adxl362_soft_reset(&gs_handle);
172 if (res != 0)
173 {
174 adxl362_interface_debug_print("adxl362: soft reset failed.\n");
175 (void)adxl362_deinit(&gs_handle);
176
177 return 1;
178 }
179 adxl362_interface_debug_print("adxl362: check reset %s.\n", (res == 0) ? "ok" : "error");
180
181 /* adxl362_set_fifo_temperature/adxl362_get_fifo_temperature test */
182 adxl362_interface_debug_print("adxl362: adxl362_set_fifo_temperature/adxl362_get_fifo_temperature test.\n");
183
184 /* enable fifo temperature */
186 if (res != 0)
187 {
188 adxl362_interface_debug_print("adxl362: set fifo temperature failed.\n");
189 (void)adxl362_deinit(&gs_handle);
190
191 return 1;
192 }
193
194 /* enable fifo temperature */
195 adxl362_interface_debug_print("adxl362: enable fifo temperature.\n");
196
197 /* get fifo temperature */
198 res = adxl362_get_fifo_temperature(&gs_handle, &enable);
199 if (res != 0)
200 {
201 adxl362_interface_debug_print("adxl362: get fifo temperature failed.\n");
202 (void)adxl362_deinit(&gs_handle);
203
204 return 1;
205 }
206 adxl362_interface_debug_print("adxl362: check fifo temperature %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
207
208 /* disable fifo temperature */
210 if (res != 0)
211 {
212 adxl362_interface_debug_print("adxl362: set fifo temperature failed.\n");
213 (void)adxl362_deinit(&gs_handle);
214
215 return 1;
216 }
217
218 /* disable fifo temperature */
219 adxl362_interface_debug_print("adxl362: disable fifo temperature.\n");
220
221 /* get fifo temperature */
222 res = adxl362_get_fifo_temperature(&gs_handle, &enable);
223 if (res != 0)
224 {
225 adxl362_interface_debug_print("adxl362: get fifo temperature failed.\n");
226 (void)adxl362_deinit(&gs_handle);
227
228 return 1;
229 }
230 adxl362_interface_debug_print("adxl362: check fifo temperature %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
231
232 /* adxl362_set_fifo_temperature/adxl362_get_fifo_temperature test */
233 adxl362_interface_debug_print("adxl362: adxl362_set_fifo_temperature/adxl362_get_fifo_temperature test.\n");
234
235 /* set fifo triggered mode */
237 if (res != 0)
238 {
239 adxl362_interface_debug_print("adxl362: set fifo mode failed.\n");
240 (void)adxl362_deinit(&gs_handle);
241
242 return 1;
243 }
244
245 /* set fifo triggered mode */
246 adxl362_interface_debug_print("adxl362: set fifo triggered mode.\n");
247
248 /* get fifo mode */
249 res = adxl362_get_fifo_mode(&gs_handle, &fifo_mode);
250 if (res != 0)
251 {
252 adxl362_interface_debug_print("adxl362: get fifo mode failed.\n");
253 (void)adxl362_deinit(&gs_handle);
254
255 return 1;
256 }
257 adxl362_interface_debug_print("adxl362: check fifo mode %s.\n", (fifo_mode == ADXL362_FIFO_MODE_TRIGGERED) ? "ok" : "error");
258
259 /* set fifo stream mode */
261 if (res != 0)
262 {
263 adxl362_interface_debug_print("adxl362: set fifo mode failed.\n");
264 (void)adxl362_deinit(&gs_handle);
265
266 return 1;
267 }
268
269 /* set fifo stream mode */
270 adxl362_interface_debug_print("adxl362: set fifo stream mode.\n");
271
272 /* get fifo mode */
273 res = adxl362_get_fifo_mode(&gs_handle, &fifo_mode);
274 if (res != 0)
275 {
276 adxl362_interface_debug_print("adxl362: get fifo mode failed.\n");
277 (void)adxl362_deinit(&gs_handle);
278
279 return 1;
280 }
281 adxl362_interface_debug_print("adxl362: check fifo mode %s.\n", (fifo_mode == ADXL362_FIFO_MODE_STREAM) ? "ok" : "error");
282
283 /* set oldest saved mode */
285 if (res != 0)
286 {
287 adxl362_interface_debug_print("adxl362: set fifo mode failed.\n");
288 (void)adxl362_deinit(&gs_handle);
289
290 return 1;
291 }
292
293 /* set oldest saved mode */
294 adxl362_interface_debug_print("adxl362: set oldest saved mode.\n");
295
296 /* get fifo mode */
297 res = adxl362_get_fifo_mode(&gs_handle, &fifo_mode);
298 if (res != 0)
299 {
300 adxl362_interface_debug_print("adxl362: get fifo mode failed.\n");
301 (void)adxl362_deinit(&gs_handle);
302
303 return 1;
304 }
305 adxl362_interface_debug_print("adxl362: check fifo mode %s.\n", (fifo_mode == ADXL362_FIFO_MODE_OLDEST_SAVED) ? "ok" : "error");
306
307 /* set disable mode */
309 if (res != 0)
310 {
311 adxl362_interface_debug_print("adxl362: set fifo mode failed.\n");
312 (void)adxl362_deinit(&gs_handle);
313
314 return 1;
315 }
316
317 /* set disable mode */
318 adxl362_interface_debug_print("adxl362: set disable mode.\n");
319
320 /* get fifo mode */
321 res = adxl362_get_fifo_mode(&gs_handle, &fifo_mode);
322 if (res != 0)
323 {
324 adxl362_interface_debug_print("adxl362: get fifo mode failed.\n");
325 (void)adxl362_deinit(&gs_handle);
326
327 return 1;
328 }
329 adxl362_interface_debug_print("adxl362: check fifo mode %s.\n", (fifo_mode == ADXL362_FIFO_MODE_DISABLE) ? "ok" : "error");
330
331 /* adxl362_set_fifo_sample/adxl362_get_fifo_sample test */
332 adxl362_interface_debug_print("adxl362: adxl362_set_fifo_sample/adxl362_get_fifo_sample test.\n");
333
334 sample = rand() % 512;
335
336 /* set fifo sample */
337 res = adxl362_set_fifo_sample(&gs_handle, sample);
338 if (res != 0)
339 {
340 adxl362_interface_debug_print("adxl362: set fifo sample failed.\n");
341 (void)adxl362_deinit(&gs_handle);
342
343 return 1;
344 }
345 adxl362_interface_debug_print("adxl362: set fifo sample %d.\n", sample);
346
347 /* get fifo sample */
348 res = adxl362_get_fifo_sample(&gs_handle, &sample_check);
349 if (res != 0)
350 {
351 adxl362_interface_debug_print("adxl362: get fifo sample failed.\n");
352 (void)adxl362_deinit(&gs_handle);
353
354 return 1;
355 }
356 adxl362_interface_debug_print("adxl362: check fifo sample %s.\n", (sample == sample_check) ? "ok" : "error");
357
358 /* adxl362_set_interrupt_pin1_active_level/adxl362_get_interrupt_pin1_active_level test */
359 adxl362_interface_debug_print("adxl362: adxl362_set_interrupt_pin1_active_level/adxl362_get_interrupt_pin1_active_level test.\n");
360
361 /* high level */
363 if (res != 0)
364 {
365 adxl362_interface_debug_print("adxl362: set interrupt pin1 active level failed.\n");
366 (void)adxl362_deinit(&gs_handle);
367
368 return 1;
369 }
370
371 /* high level */
372 adxl362_interface_debug_print("adxl362: set interrupt pin1 active level high.\n");
373
374 /* get interrupt pin1 active level */
375 res = adxl362_get_interrupt_pin1_active_level(&gs_handle, &level);
376 if (res != 0)
377 {
378 adxl362_interface_debug_print("adxl362: get interrupt pin1 active level failed.\n");
379 (void)adxl362_deinit(&gs_handle);
380
381 return 1;
382 }
383 adxl362_interface_debug_print("adxl362: check interrupt pin1 active level %s.\n", (level == ADXL362_INTERRUPT_PIN_HIGH) ? "ok" : "error");
384
385 /* low level */
387 if (res != 0)
388 {
389 adxl362_interface_debug_print("adxl362: set interrupt pin1 active level failed.\n");
390 (void)adxl362_deinit(&gs_handle);
391
392 return 1;
393 }
394
395 /* low level */
396 adxl362_interface_debug_print("adxl362: set interrupt pin1 active level low.\n");
397
398 /* get interrupt pin1 active level */
399 res = adxl362_get_interrupt_pin1_active_level(&gs_handle, &level);
400 if (res != 0)
401 {
402 adxl362_interface_debug_print("adxl362: get interrupt pin1 active level failed.\n");
403 (void)adxl362_deinit(&gs_handle);
404
405 return 1;
406 }
407 adxl362_interface_debug_print("adxl362: check interrupt pin1 active level %s.\n", (level == ADXL362_INTERRUPT_PIN_LOW) ? "ok" : "error");
408
409 /* adxl362_set_interrupt_pin1_map/adxl362_get_interrupt_pin1_map test */
410 adxl362_interface_debug_print("adxl362: adxl362_set_interrupt_pin1_map/adxl362_get_interrupt_pin1_map test.\n");
411
412 /* awake enable */
414 if (res != 0)
415 {
416 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
417 (void)adxl362_deinit(&gs_handle);
418
419 return 1;
420 }
421 adxl362_interface_debug_print("adxl362: set interrupt pin1 map awake enable.\n");
422
423 /* get interrupt pin1 map */
425 if (res != 0)
426 {
427 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
428 (void)adxl362_deinit(&gs_handle);
429
430 return 1;
431 }
432 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
433
434 /* awake disable */
436 if (res != 0)
437 {
438 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
439 (void)adxl362_deinit(&gs_handle);
440
441 return 1;
442 }
443 adxl362_interface_debug_print("adxl362: set interrupt pin1 map awake disable.\n");
444
445 /* get interrupt pin1 map */
447 if (res != 0)
448 {
449 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
450 (void)adxl362_deinit(&gs_handle);
451
452 return 1;
453 }
454 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
455
456 /* inact enable */
458 if (res != 0)
459 {
460 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
461 (void)adxl362_deinit(&gs_handle);
462
463 return 1;
464 }
465 adxl362_interface_debug_print("adxl362: set interrupt pin1 map inact enable.\n");
466
467 /* get interrupt pin1 map */
469 if (res != 0)
470 {
471 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
472 (void)adxl362_deinit(&gs_handle);
473
474 return 1;
475 }
476 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
477
478 /* inact disable */
480 if (res != 0)
481 {
482 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
483 (void)adxl362_deinit(&gs_handle);
484
485 return 1;
486 }
487 adxl362_interface_debug_print("adxl362: set interrupt pin1 map inact disable.\n");
488
489 /* get interrupt pin1 map */
491 if (res != 0)
492 {
493 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
494 (void)adxl362_deinit(&gs_handle);
495
496 return 1;
497 }
498 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
499
500 /* act enable */
502 if (res != 0)
503 {
504 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
505 (void)adxl362_deinit(&gs_handle);
506
507 return 1;
508 }
509 adxl362_interface_debug_print("adxl362: set interrupt pin1 map act enable.\n");
510
511 /* get interrupt pin1 map */
513 if (res != 0)
514 {
515 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
516 (void)adxl362_deinit(&gs_handle);
517
518 return 1;
519 }
520 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
521
522 /* act disable */
524 if (res != 0)
525 {
526 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
527 (void)adxl362_deinit(&gs_handle);
528
529 return 1;
530 }
531 adxl362_interface_debug_print("adxl362: set interrupt pin1 map act disable.\n");
532
533 /* get interrupt pin1 map */
535 if (res != 0)
536 {
537 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
538 (void)adxl362_deinit(&gs_handle);
539
540 return 1;
541 }
542 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
543
544 /* fifo overrun enable */
546 if (res != 0)
547 {
548 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
549 (void)adxl362_deinit(&gs_handle);
550
551 return 1;
552 }
553 adxl362_interface_debug_print("adxl362: set interrupt pin1 map fifo overrun enable.\n");
554
555 /* get interrupt pin1 map */
557 if (res != 0)
558 {
559 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
560 (void)adxl362_deinit(&gs_handle);
561
562 return 1;
563 }
564 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
565
566 /* fifo overrun disable */
568 if (res != 0)
569 {
570 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
571 (void)adxl362_deinit(&gs_handle);
572
573 return 1;
574 }
575 adxl362_interface_debug_print("adxl362: set interrupt pin1 map fifo overrun disable.\n");
576
577 /* get interrupt pin1 map */
579 if (res != 0)
580 {
581 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
582 (void)adxl362_deinit(&gs_handle);
583
584 return 1;
585 }
586 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
587
588 /* fifo watermark enable */
590 if (res != 0)
591 {
592 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
593 (void)adxl362_deinit(&gs_handle);
594
595 return 1;
596 }
597 adxl362_interface_debug_print("adxl362: set interrupt pin1 map fifo watermark enable.\n");
598
599 /* get interrupt pin1 map */
601 if (res != 0)
602 {
603 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
604 (void)adxl362_deinit(&gs_handle);
605
606 return 1;
607 }
608 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
609
610 /* fifo watermark disable */
612 if (res != 0)
613 {
614 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
615 (void)adxl362_deinit(&gs_handle);
616
617 return 1;
618 }
619 adxl362_interface_debug_print("adxl362: set interrupt pin1 map fifo watermark disable.\n");
620
621 /* get interrupt pin1 map */
623 if (res != 0)
624 {
625 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
626 (void)adxl362_deinit(&gs_handle);
627
628 return 1;
629 }
630 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
631
632 /* fifo ready enable */
634 if (res != 0)
635 {
636 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
637 (void)adxl362_deinit(&gs_handle);
638
639 return 1;
640 }
641 adxl362_interface_debug_print("adxl362: set interrupt pin1 map fifo ready enable.\n");
642
643 /* get interrupt pin1 map */
645 if (res != 0)
646 {
647 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
648 (void)adxl362_deinit(&gs_handle);
649
650 return 1;
651 }
652 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
653
654 /* fifo ready disable */
656 if (res != 0)
657 {
658 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
659 (void)adxl362_deinit(&gs_handle);
660
661 return 1;
662 }
663 adxl362_interface_debug_print("adxl362: set interrupt pin1 map fifo ready disable.\n");
664
665 /* get interrupt pin1 map */
667 if (res != 0)
668 {
669 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
670 (void)adxl362_deinit(&gs_handle);
671
672 return 1;
673 }
674 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
675
676 /* data ready enable */
678 if (res != 0)
679 {
680 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
681 (void)adxl362_deinit(&gs_handle);
682
683 return 1;
684 }
685 adxl362_interface_debug_print("adxl362: set interrupt pin1 map data ready enable.\n");
686
687 /* get interrupt pin1 map */
689 if (res != 0)
690 {
691 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
692 (void)adxl362_deinit(&gs_handle);
693
694 return 1;
695 }
696 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
697
698 /* data ready disable */
700 if (res != 0)
701 {
702 adxl362_interface_debug_print("adxl362: set interrupt pin1 map failed.\n");
703 (void)adxl362_deinit(&gs_handle);
704
705 return 1;
706 }
707 adxl362_interface_debug_print("adxl362: set interrupt pin1 map data ready disable.\n");
708
709 /* get interrupt pin1 map */
711 if (res != 0)
712 {
713 adxl362_interface_debug_print("adxl362: get interrupt pin1 map failed.\n");
714 (void)adxl362_deinit(&gs_handle);
715
716 return 1;
717 }
718 adxl362_interface_debug_print("adxl362: check interrupt pin1 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
719
720 /* adxl362_set_interrupt_pin2_map/adxl362_get_interrupt_pin2_map test */
721 adxl362_interface_debug_print("adxl362: adxl362_set_interrupt_pin2_map/adxl362_get_interrupt_pin2_map test.\n");
722
723 /* awake enable */
725 if (res != 0)
726 {
727 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
728 (void)adxl362_deinit(&gs_handle);
729
730 return 1;
731 }
732 adxl362_interface_debug_print("adxl362: set interrupt pin2 map awake enable.\n");
733
734 /* get interrupt pin2 map */
736 if (res != 0)
737 {
738 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
739 (void)adxl362_deinit(&gs_handle);
740
741 return 1;
742 }
743 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
744
745 /* awake disable */
747 if (res != 0)
748 {
749 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
750 (void)adxl362_deinit(&gs_handle);
751
752 return 1;
753 }
754 adxl362_interface_debug_print("adxl362: set interrupt pin2 map awake disable.\n");
755
756 /* get interrupt pin2 map */
758 if (res != 0)
759 {
760 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
761 (void)adxl362_deinit(&gs_handle);
762
763 return 1;
764 }
765 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
766
767 /* inact enable */
769 if (res != 0)
770 {
771 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
772 (void)adxl362_deinit(&gs_handle);
773
774 return 1;
775 }
776 adxl362_interface_debug_print("adxl362: set interrupt pin2 map inact enable.\n");
777
778 /* get interrupt pin2 map */
780 if (res != 0)
781 {
782 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
783 (void)adxl362_deinit(&gs_handle);
784
785 return 1;
786 }
787 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
788
789 /* inact disable */
791 if (res != 0)
792 {
793 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
794 (void)adxl362_deinit(&gs_handle);
795
796 return 1;
797 }
798 adxl362_interface_debug_print("adxl362: set interrupt pin2 map inact disable.\n");
799
800 /* get interrupt pin2 map */
802 if (res != 0)
803 {
804 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
805 (void)adxl362_deinit(&gs_handle);
806
807 return 1;
808 }
809 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
810
811 /* act enable */
813 if (res != 0)
814 {
815 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
816 (void)adxl362_deinit(&gs_handle);
817
818 return 1;
819 }
820 adxl362_interface_debug_print("adxl362: set interrupt pin2 map act enable.\n");
821
822 /* get interrupt pin2 map */
824 if (res != 0)
825 {
826 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
827 (void)adxl362_deinit(&gs_handle);
828
829 return 1;
830 }
831 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
832
833 /* act disable */
835 if (res != 0)
836 {
837 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
838 (void)adxl362_deinit(&gs_handle);
839
840 return 1;
841 }
842 adxl362_interface_debug_print("adxl362: set interrupt pin2 map act disable.\n");
843
844 /* get interrupt pin2 map */
846 if (res != 0)
847 {
848 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
849 (void)adxl362_deinit(&gs_handle);
850
851 return 1;
852 }
853 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
854
855 /* fifo overrun enable */
857 if (res != 0)
858 {
859 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
860 (void)adxl362_deinit(&gs_handle);
861
862 return 1;
863 }
864 adxl362_interface_debug_print("adxl362: set interrupt pin2 map fifo overrun enable.\n");
865
866 /* get interrupt pin2 map */
868 if (res != 0)
869 {
870 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
871 (void)adxl362_deinit(&gs_handle);
872
873 return 1;
874 }
875 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
876
877 /* fifo overrun disable */
879 if (res != 0)
880 {
881 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
882 (void)adxl362_deinit(&gs_handle);
883
884 return 1;
885 }
886 adxl362_interface_debug_print("adxl362: set interrupt pin2 map fifo overrun disable.\n");
887
888 /* get interrupt pin2 map */
890 if (res != 0)
891 {
892 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
893 (void)adxl362_deinit(&gs_handle);
894
895 return 1;
896 }
897 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
898
899 /* fifo watermark enable */
901 if (res != 0)
902 {
903 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
904 (void)adxl362_deinit(&gs_handle);
905
906 return 1;
907 }
908 adxl362_interface_debug_print("adxl362: set interrupt pin2 map fifo watermark enable.\n");
909
910 /* get interrupt pin2 map */
912 if (res != 0)
913 {
914 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
915 (void)adxl362_deinit(&gs_handle);
916
917 return 1;
918 }
919 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
920
921 /* fifo watermark disable */
923 if (res != 0)
924 {
925 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
926 (void)adxl362_deinit(&gs_handle);
927
928 return 1;
929 }
930 adxl362_interface_debug_print("adxl362: set interrupt pin2 map fifo watermark disable.\n");
931
932 /* get interrupt pin2 map */
934 if (res != 0)
935 {
936 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
937 (void)adxl362_deinit(&gs_handle);
938
939 return 1;
940 }
941 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
942
943 /* fifo ready enable */
945 if (res != 0)
946 {
947 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
948 (void)adxl362_deinit(&gs_handle);
949
950 return 1;
951 }
952 adxl362_interface_debug_print("adxl362: set interrupt pin2 map fifo ready enable.\n");
953
954 /* get interrupt pin2 map */
956 if (res != 0)
957 {
958 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
959 (void)adxl362_deinit(&gs_handle);
960
961 return 1;
962 }
963 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
964
965 /* fifo ready disable */
967 if (res != 0)
968 {
969 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
970 (void)adxl362_deinit(&gs_handle);
971
972 return 1;
973 }
974 adxl362_interface_debug_print("adxl362: set interrupt pin2 map fifo ready disable.\n");
975
976 /* get interrupt pin2 map */
978 if (res != 0)
979 {
980 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
981 (void)adxl362_deinit(&gs_handle);
982
983 return 1;
984 }
985 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
986
987 /* data ready enable */
989 if (res != 0)
990 {
991 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
992 (void)adxl362_deinit(&gs_handle);
993
994 return 1;
995 }
996 adxl362_interface_debug_print("adxl362: set interrupt pin2 map data ready enable.\n");
997
998 /* get interrupt pin2 map */
1000 if (res != 0)
1001 {
1002 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
1003 (void)adxl362_deinit(&gs_handle);
1004
1005 return 1;
1006 }
1007 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
1008
1009 /* data ready disable */
1011 if (res != 0)
1012 {
1013 adxl362_interface_debug_print("adxl362: set interrupt pin2 map failed.\n");
1014 (void)adxl362_deinit(&gs_handle);
1015
1016 return 1;
1017 }
1018 adxl362_interface_debug_print("adxl362: set interrupt pin2 map data ready disable.\n");
1019
1020 /* get interrupt pin2 map */
1022 if (res != 0)
1023 {
1024 adxl362_interface_debug_print("adxl362: get interrupt pin2 map failed.\n");
1025 (void)adxl362_deinit(&gs_handle);
1026
1027 return 1;
1028 }
1029 adxl362_interface_debug_print("adxl362: check interrupt pin2 map %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
1030
1031 /* adxl362_set_range/adxl362_get_range test */
1032 adxl362_interface_debug_print("adxl362: adxl362_set_range/adxl362_get_range test.\n");
1033
1034 /* 2g */
1035 res = adxl362_set_range(&gs_handle, ADXL362_RANGE_2G);
1036 if (res != 0)
1037 {
1038 adxl362_interface_debug_print("adxl362: set range failed.\n");
1039 (void)adxl362_deinit(&gs_handle);
1040
1041 return 1;
1042 }
1043 adxl362_interface_debug_print("adxl362: set range 2g.\n");
1044
1045 /* get range */
1046 res = adxl362_get_range(&gs_handle, &range);
1047 if (res != 0)
1048 {
1049 adxl362_interface_debug_print("adxl362: get range failed.\n");
1050 (void)adxl362_deinit(&gs_handle);
1051
1052 return 1;
1053 }
1054 adxl362_interface_debug_print("adxl362: check range %s.\n", (range == ADXL362_RANGE_2G) ? "ok" : "error");
1055
1056 /* 4g */
1057 res = adxl362_set_range(&gs_handle, ADXL362_RANGE_4G);
1058 if (res != 0)
1059 {
1060 adxl362_interface_debug_print("adxl362: set range failed.\n");
1061 (void)adxl362_deinit(&gs_handle);
1062
1063 return 1;
1064 }
1065 adxl362_interface_debug_print("adxl362: set range 4g.\n");
1066
1067 /* get range */
1068 res = adxl362_get_range(&gs_handle, &range);
1069 if (res != 0)
1070 {
1071 adxl362_interface_debug_print("adxl362: get range failed.\n");
1072 (void)adxl362_deinit(&gs_handle);
1073
1074 return 1;
1075 }
1076 adxl362_interface_debug_print("adxl362: check range %s.\n", (range == ADXL362_RANGE_4G) ? "ok" : "error");
1077
1078 /* 8g */
1079 res = adxl362_set_range(&gs_handle, ADXL362_RANGE_8G);
1080 if (res != 0)
1081 {
1082 adxl362_interface_debug_print("adxl362: set range failed.\n");
1083 (void)adxl362_deinit(&gs_handle);
1084
1085 return 1;
1086 }
1087 adxl362_interface_debug_print("adxl362: set range 8g.\n");
1088
1089 /* get range */
1090 res = adxl362_get_range(&gs_handle, &range);
1091 if (res != 0)
1092 {
1093 adxl362_interface_debug_print("adxl362: get range failed.\n");
1094 (void)adxl362_deinit(&gs_handle);
1095
1096 return 1;
1097 }
1098 adxl362_interface_debug_print("adxl362: check range %s.\n", (range == ADXL362_RANGE_8G) ? "ok" : "error");
1099
1100 /* adxl362_set_bandwidth/adxl362_get_bandwidth test */
1101 adxl362_interface_debug_print("adxl362: adxl362_set_bandwidth/adxl362_get_bandwidth test.\n");
1102
1103 /* 1/2 odr */
1105 if (res != 0)
1106 {
1107 adxl362_interface_debug_print("adxl362: set bandwidth failed.\n");
1108 (void)adxl362_deinit(&gs_handle);
1109
1110 return 1;
1111 }
1112 adxl362_interface_debug_print("adxl362: set bandwidth 1/2 odr.\n");
1113
1114 /* get bandwidth */
1115 res = adxl362_get_bandwidth(&gs_handle, &bandwidth);
1116 if (res != 0)
1117 {
1118 adxl362_interface_debug_print("adxl362: get bandwidth failed.\n");
1119 (void)adxl362_deinit(&gs_handle);
1120
1121 return 1;
1122 }
1123 adxl362_interface_debug_print("adxl362: check bandwidth %s.\n", (bandwidth == ADXL362_BANDWIDTH_ODR_DIV_2) ? "ok" : "error");
1124
1125 /* 1/4 odr */
1127 if (res != 0)
1128 {
1129 adxl362_interface_debug_print("adxl362: set bandwidth failed.\n");
1130 (void)adxl362_deinit(&gs_handle);
1131
1132 return 1;
1133 }
1134 adxl362_interface_debug_print("adxl362: set bandwidth 1/4 odr.\n");
1135
1136 /* get bandwidth */
1137 res = adxl362_get_bandwidth(&gs_handle, &bandwidth);
1138 if (res != 0)
1139 {
1140 adxl362_interface_debug_print("adxl362: get bandwidth failed.\n");
1141 (void)adxl362_deinit(&gs_handle);
1142
1143 return 1;
1144 }
1145 adxl362_interface_debug_print("adxl362: check bandwidth %s.\n", (bandwidth == ADXL362_BANDWIDTH_ODE_DIV_4) ? "ok" : "error");
1146
1147 /* adxl362_set_interrupt_pin2_as_external_sampling_trigger/adxl362_get_interrupt_pin2_as_external_sampling_trigger test */
1148 adxl362_interface_debug_print("adxl362: adxl362_set_interrupt_pin2_as_external_sampling_trigger/adxl362_get_interrupt_pin2_as_external_sampling_trigger test.\n");
1149
1150 /* enable */
1152 if (res != 0)
1153 {
1154 adxl362_interface_debug_print("adxl362: set interrupt pin2 as external sampling trigger failed.\n");
1155 (void)adxl362_deinit(&gs_handle);
1156
1157 return 1;
1158 }
1159 adxl362_interface_debug_print("adxl362: set interrupt pin2 as external sampling trigger enable.\n");
1160
1161 /* get interrupt pin2 as external sampling trigger */
1163 if (res != 0)
1164 {
1165 adxl362_interface_debug_print("adxl362: get interrupt pin2 as external sampling trigger failed.\n");
1166 (void)adxl362_deinit(&gs_handle);
1167
1168 return 1;
1169 }
1170 adxl362_interface_debug_print("adxl362: check interrupt pin2 as external sampling trigger %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
1171
1172 /* disable */
1174 if (res != 0)
1175 {
1176 adxl362_interface_debug_print("adxl362: set interrupt pin2 as external sampling trigger failed.\n");
1177 (void)adxl362_deinit(&gs_handle);
1178
1179 return 1;
1180 }
1181 adxl362_interface_debug_print("adxl362: set interrupt pin2 as external sampling trigger disable.\n");
1182
1183 /* get interrupt pin2 as external sampling trigger */
1185 if (res != 0)
1186 {
1187 adxl362_interface_debug_print("adxl362: get interrupt pin2 as external sampling trigger failed.\n");
1188 (void)adxl362_deinit(&gs_handle);
1189
1190 return 1;
1191 }
1192 adxl362_interface_debug_print("adxl362: check interrupt pin2 as external sampling trigger %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
1193
1194 /* adxl362_set_odr/adxl362_get_odr test */
1195 adxl362_interface_debug_print("adxl362: adxl362_set_odr/adxl362_get_odr test.\n");
1196
1197 /* 12.5Hz */
1198 res = adxl362_set_odr(&gs_handle, ADXL362_ODR_12P5HZ);
1199 if (res != 0)
1200 {
1201 adxl362_interface_debug_print("adxl362: set odr failed.\n");
1202 (void)adxl362_deinit(&gs_handle);
1203
1204 return 1;
1205 }
1206 adxl362_interface_debug_print("adxl362: set odr 12.5Hz.\n");
1207
1208 /* get odr */
1209 res = adxl362_get_odr(&gs_handle, &odr);
1210 if (res != 0)
1211 {
1212 adxl362_interface_debug_print("adxl362: get odr failed.\n");
1213 (void)adxl362_deinit(&gs_handle);
1214
1215 return 1;
1216 }
1217 adxl362_interface_debug_print("adxl362: check odr %s.\n", (odr == ADXL362_ODR_12P5HZ) ? "ok" : "error");
1218
1219 /* 25Hz */
1220 res = adxl362_set_odr(&gs_handle, ADXL362_ODR_25HZ);
1221 if (res != 0)
1222 {
1223 adxl362_interface_debug_print("adxl362: set odr failed.\n");
1224 (void)adxl362_deinit(&gs_handle);
1225
1226 return 1;
1227 }
1228 adxl362_interface_debug_print("adxl362: set odr 25Hz.\n");
1229
1230 /* get odr */
1231 res = adxl362_get_odr(&gs_handle, &odr);
1232 if (res != 0)
1233 {
1234 adxl362_interface_debug_print("adxl362: get odr failed.\n");
1235 (void)adxl362_deinit(&gs_handle);
1236
1237 return 1;
1238 }
1239 adxl362_interface_debug_print("adxl362: check odr %s.\n", (odr == ADXL362_ODR_25HZ) ? "ok" : "error");
1240
1241 /* 50Hz */
1242 res = adxl362_set_odr(&gs_handle, ADXL362_ODR_50HZ);
1243 if (res != 0)
1244 {
1245 adxl362_interface_debug_print("adxl362: set odr failed.\n");
1246 (void)adxl362_deinit(&gs_handle);
1247
1248 return 1;
1249 }
1250 adxl362_interface_debug_print("adxl362: set odr 50Hz.\n");
1251
1252 /* get odr */
1253 res = adxl362_get_odr(&gs_handle, &odr);
1254 if (res != 0)
1255 {
1256 adxl362_interface_debug_print("adxl362: get odr failed.\n");
1257 (void)adxl362_deinit(&gs_handle);
1258
1259 return 1;
1260 }
1261 adxl362_interface_debug_print("adxl362: check odr %s.\n", (odr == ADXL362_ODR_50HZ) ? "ok" : "error");
1262
1263 /* 100Hz */
1264 res = adxl362_set_odr(&gs_handle, ADXL362_ODR_100HZ);
1265 if (res != 0)
1266 {
1267 adxl362_interface_debug_print("adxl362: set odr failed.\n");
1268 (void)adxl362_deinit(&gs_handle);
1269
1270 return 1;
1271 }
1272 adxl362_interface_debug_print("adxl362: set odr 100Hz.\n");
1273
1274 /* get odr */
1275 res = adxl362_get_odr(&gs_handle, &odr);
1276 if (res != 0)
1277 {
1278 adxl362_interface_debug_print("adxl362: get odr failed.\n");
1279 (void)adxl362_deinit(&gs_handle);
1280
1281 return 1;
1282 }
1283 adxl362_interface_debug_print("adxl362: check odr %s.\n", (odr == ADXL362_ODR_100HZ) ? "ok" : "error");
1284
1285 /* 200Hz */
1286 res = adxl362_set_odr(&gs_handle, ADXL362_ODR_200HZ);
1287 if (res != 0)
1288 {
1289 adxl362_interface_debug_print("adxl362: set odr failed.\n");
1290 (void)adxl362_deinit(&gs_handle);
1291
1292 return 1;
1293 }
1294 adxl362_interface_debug_print("adxl362: set odr 200Hz.\n");
1295
1296 /* get odr */
1297 res = adxl362_get_odr(&gs_handle, &odr);
1298 if (res != 0)
1299 {
1300 adxl362_interface_debug_print("adxl362: get odr failed.\n");
1301 (void)adxl362_deinit(&gs_handle);
1302
1303 return 1;
1304 }
1305 adxl362_interface_debug_print("adxl362: check odr %s.\n", (odr == ADXL362_ODR_200HZ) ? "ok" : "error");
1306
1307 /* 400Hz */
1308 res = adxl362_set_odr(&gs_handle, ADXL362_ODR_400HZ);
1309 if (res != 0)
1310 {
1311 adxl362_interface_debug_print("adxl362: set odr failed.\n");
1312 (void)adxl362_deinit(&gs_handle);
1313
1314 return 1;
1315 }
1316 adxl362_interface_debug_print("adxl362: set odr 400Hz.\n");
1317
1318 /* get odr */
1319 res = adxl362_get_odr(&gs_handle, &odr);
1320 if (res != 0)
1321 {
1322 adxl362_interface_debug_print("adxl362: get odr failed.\n");
1323 (void)adxl362_deinit(&gs_handle);
1324
1325 return 1;
1326 }
1327 adxl362_interface_debug_print("adxl362: check odr %s.\n", (odr == ADXL362_ODR_400HZ) ? "ok" : "error");
1328
1329 /* adxl362_set_interrupt_pin1_as_external_clock/adxl362_get_interrupt_pin1_as_external_clock test */
1330 adxl362_interface_debug_print("adxl362: adxl362_set_interrupt_pin1_as_external_clock/adxl362_get_interrupt_pin1_as_external_clock test.\n");
1331
1332 /* enable */
1334 if (res != 0)
1335 {
1336 adxl362_interface_debug_print("adxl362: set interrupt pin1 as external clock failed.\n");
1337 (void)adxl362_deinit(&gs_handle);
1338
1339 return 1;
1340 }
1341 adxl362_interface_debug_print("adxl362: set interrupt pin1 as external clock enable.\n");
1342
1343 /* get interrupt pin1 as external clock */
1344 res = adxl362_get_interrupt_pin1_as_external_clock(&gs_handle, &enable);
1345 if (res != 0)
1346 {
1347 adxl362_interface_debug_print("adxl362: get interrupt pin1 as external clock failed.\n");
1348 (void)adxl362_deinit(&gs_handle);
1349
1350 return 1;
1351 }
1352 adxl362_interface_debug_print("adxl362: check interrupt pin1 as external clock %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
1353
1354 /* disable */
1356 if (res != 0)
1357 {
1358 adxl362_interface_debug_print("adxl362: set interrupt pin1 as external clock failed.\n");
1359 (void)adxl362_deinit(&gs_handle);
1360
1361 return 1;
1362 }
1363 adxl362_interface_debug_print("adxl362: set interrupt pin1 as external clock disable.\n");
1364
1365 /* get interrupt pin1 as external clock */
1366 res = adxl362_get_interrupt_pin1_as_external_clock(&gs_handle, &enable);
1367 if (res != 0)
1368 {
1369 adxl362_interface_debug_print("adxl362: get interrupt pin1 as external clock failed.\n");
1370 (void)adxl362_deinit(&gs_handle);
1371
1372 return 1;
1373 }
1374 adxl362_interface_debug_print("adxl362: check interrupt pin1 as external clock %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
1375
1376 /* adxl362_set_noise_mode/adxl362_get_noise_mode test */
1377 adxl362_interface_debug_print("adxl362: adxl362_set_noise_mode/adxl362_get_noise_mode test.\n");
1378
1379 /* set noise mode */
1381 if (res != 0)
1382 {
1383 adxl362_interface_debug_print("adxl362: set noise mode failed.\n");
1384 (void)adxl362_deinit(&gs_handle);
1385
1386 return 1;
1387 }
1388 adxl362_interface_debug_print("adxl362: set noise mode normal.\n");
1389
1390 /* get noise mode */
1391 res = adxl362_get_noise_mode(&gs_handle, &noise_mode);
1392 if (res != 0)
1393 {
1394 adxl362_interface_debug_print("adxl362: get noise mode failed.\n");
1395 (void)adxl362_deinit(&gs_handle);
1396
1397 return 1;
1398 }
1399 adxl362_interface_debug_print("adxl362: check noise mode %s.\n", (noise_mode == ADXL362_NOISE_MODE_NORMAL) ? "ok" : "error");
1400
1401 /* set low noise mode */
1403 if (res != 0)
1404 {
1405 adxl362_interface_debug_print("adxl362: set noise mode failed.\n");
1406 (void)adxl362_deinit(&gs_handle);
1407
1408 return 1;
1409 }
1410 adxl362_interface_debug_print("adxl362: set noise mode low noise.\n");
1411
1412 /* get noise mode */
1413 res = adxl362_get_noise_mode(&gs_handle, &noise_mode);
1414 if (res != 0)
1415 {
1416 adxl362_interface_debug_print("adxl362: get noise mode failed.\n");
1417 (void)adxl362_deinit(&gs_handle);
1418
1419 return 1;
1420 }
1421 adxl362_interface_debug_print("adxl362: check noise mode %s.\n", (noise_mode == ADXL362_NOISE_MODE_LOW_NOISE) ? "ok" : "error");
1422
1423 /* set ultra low noise mode */
1425 if (res != 0)
1426 {
1427 adxl362_interface_debug_print("adxl362: set noise mode failed.\n");
1428 (void)adxl362_deinit(&gs_handle);
1429
1430 return 1;
1431 }
1432 adxl362_interface_debug_print("adxl362: set noise mode ultra low noise.\n");
1433
1434 /* get noise mode */
1435 res = adxl362_get_noise_mode(&gs_handle, &noise_mode);
1436 if (res != 0)
1437 {
1438 adxl362_interface_debug_print("adxl362: get noise mode failed.\n");
1439 (void)adxl362_deinit(&gs_handle);
1440
1441 return 1;
1442 }
1443 adxl362_interface_debug_print("adxl362: check noise mode %s.\n", (noise_mode == ADXL362_NOISE_MODE_ULTRA_LOW_NOISE) ? "ok" : "error");
1444
1445 /* adxl362_set_wake_up/adxl362_get_wake_up test */
1446 adxl362_interface_debug_print("adxl362: adxl362_set_wake_up/adxl362_get_wake_up test.\n");
1447
1448 /* enable */
1449 res = adxl362_set_wake_up(&gs_handle, ADXL362_BOOL_TRUE);
1450 if (res != 0)
1451 {
1452 adxl362_interface_debug_print("adxl362: set wake up failed.\n");
1453 (void)adxl362_deinit(&gs_handle);
1454
1455 return 1;
1456 }
1457 adxl362_interface_debug_print("adxl362: set wake up enable.\n");
1458
1459 /* get wake up */
1460 res = adxl362_get_wake_up(&gs_handle, &enable);
1461 if (res != 0)
1462 {
1463 adxl362_interface_debug_print("adxl362: get wake up failed.\n");
1464 (void)adxl362_deinit(&gs_handle);
1465
1466 return 1;
1467 }
1468 adxl362_interface_debug_print("adxl362: check wake up %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
1469
1470 /* disable */
1471 res = adxl362_set_wake_up(&gs_handle, ADXL362_BOOL_FALSE);
1472 if (res != 0)
1473 {
1474 adxl362_interface_debug_print("adxl362: set wake up failed.\n");
1475 (void)adxl362_deinit(&gs_handle);
1476
1477 return 1;
1478 }
1479 adxl362_interface_debug_print("adxl362: set wake up disable.\n");
1480
1481 /* get wake up */
1482 res = adxl362_get_wake_up(&gs_handle, &enable);
1483 if (res != 0)
1484 {
1485 adxl362_interface_debug_print("adxl362: get wake up failed.\n");
1486 (void)adxl362_deinit(&gs_handle);
1487
1488 return 1;
1489 }
1490 adxl362_interface_debug_print("adxl362: check wake up %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
1491
1492 /* adxl362_set_auto_sleep/adxl362_get_auto_sleep test */
1493 adxl362_interface_debug_print("adxl362: adxl362_set_auto_sleep/adxl362_get_auto_sleep test.\n");
1494
1495 /* enable */
1496 res = adxl362_set_auto_sleep(&gs_handle, ADXL362_BOOL_TRUE);
1497 if (res != 0)
1498 {
1499 adxl362_interface_debug_print("adxl362: set auto sleep failed.\n");
1500 (void)adxl362_deinit(&gs_handle);
1501
1502 return 1;
1503 }
1504 adxl362_interface_debug_print("adxl362: set auto sleep enable.\n");
1505
1506 /* get auto sleep */
1507 res = adxl362_get_auto_sleep(&gs_handle, &enable);
1508 if (res != 0)
1509 {
1510 adxl362_interface_debug_print("adxl362: get auto sleep failed.\n");
1511 (void)adxl362_deinit(&gs_handle);
1512
1513 return 1;
1514 }
1515 adxl362_interface_debug_print("adxl362: check sleep %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
1516
1517 /* disable */
1518 res = adxl362_set_auto_sleep(&gs_handle, ADXL362_BOOL_FALSE);
1519 if (res != 0)
1520 {
1521 adxl362_interface_debug_print("adxl362: set auto sleep failed.\n");
1522 (void)adxl362_deinit(&gs_handle);
1523
1524 return 1;
1525 }
1526 adxl362_interface_debug_print("adxl362: set auto sleep disable.\n");
1527
1528 /* get auto sleep */
1529 res = adxl362_get_auto_sleep(&gs_handle, &enable);
1530 if (res != 0)
1531 {
1532 adxl362_interface_debug_print("adxl362: get auto sleep failed.\n");
1533 (void)adxl362_deinit(&gs_handle);
1534
1535 return 1;
1536 }
1537 adxl362_interface_debug_print("adxl362: check sleep %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
1538
1539 /* adxl362_set_mode/adxl362_get_mode test */
1540 adxl362_interface_debug_print("adxl362: adxl362_set_mode/adxl362_get_mode test.\n");
1541
1542 /* measurement */
1543 res = adxl362_set_mode(&gs_handle, ADXL362_MODE_MEASUREMENT);
1544 if (res != 0)
1545 {
1546 adxl362_interface_debug_print("adxl362: set mode failed.\n");
1547 (void)adxl362_deinit(&gs_handle);
1548
1549 return 1;
1550 }
1551 adxl362_interface_debug_print("adxl362: set mode measurement.\n");
1552
1553 /* get mode */
1554 res = adxl362_get_mode(&gs_handle, &mode);
1555 if (res != 0)
1556 {
1557 adxl362_interface_debug_print("adxl362: get mode failed.\n");
1558 (void)adxl362_deinit(&gs_handle);
1559
1560 return 1;
1561 }
1562 adxl362_interface_debug_print("adxl362: check mode %s.\n", (mode == ADXL362_MODE_MEASUREMENT) ? "ok" : "error");
1563
1564 /* standby */
1565 res = adxl362_set_mode(&gs_handle, ADXL362_MODE_STANDBY);
1566 if (res != 0)
1567 {
1568 adxl362_interface_debug_print("adxl362: set mode failed.\n");
1569 (void)adxl362_deinit(&gs_handle);
1570
1571 return 1;
1572 }
1573 adxl362_interface_debug_print("adxl362: set mode standby.\n");
1574
1575 /* get mode */
1576 res = adxl362_get_mode(&gs_handle, &mode);
1577 if (res != 0)
1578 {
1579 adxl362_interface_debug_print("adxl362: get mode failed.\n");
1580 (void)adxl362_deinit(&gs_handle);
1581
1582 return 1;
1583 }
1584 adxl362_interface_debug_print("adxl362: check mode %s.\n", (mode == ADXL362_MODE_STANDBY) ? "ok" : "error");
1585
1586 /* adxl362_set_activity_threshold/adxl362_get_activity_threshold test */
1587 adxl362_interface_debug_print("adxl362: adxl362_set_activity_threshold/adxl362_get_activity_threshold test.\n");
1588
1589 /* set activity threshold */
1590 threshold = rand() % 0x7FF;
1591 res = adxl362_set_activity_threshold(&gs_handle, threshold);
1592 if (res != 0)
1593 {
1594 adxl362_interface_debug_print("adxl362: set activity threshold failed.\n");
1595 (void)adxl362_deinit(&gs_handle);
1596
1597 return 1;
1598 }
1599 adxl362_interface_debug_print("adxl362: set activity threshold 0x%04X.\n", threshold);
1600
1601 /* get activity threshold */
1602 res = adxl362_get_activity_threshold(&gs_handle, &threshold_check);
1603 if (res != 0)
1604 {
1605 adxl362_interface_debug_print("adxl362: get activity threshold failed.\n");
1606 (void)adxl362_deinit(&gs_handle);
1607
1608 return 1;
1609 }
1610 adxl362_interface_debug_print("adxl362: check activity threshold %s.\n", (threshold_check == threshold) ? "ok" : "error");
1611
1612 /* adxl362_activity_threshold_convert_to_register/adxl362_activity_threshold_convert_to_data test */
1613 adxl362_interface_debug_print("adxl362: adxl362_activity_threshold_convert_to_register/adxl362_activity_threshold_convert_to_data test.\n");
1614
1615 /* activity threshold convert to register */
1616 g = (float)(rand() % 100) / 1000.0f;
1617 res = adxl362_activity_threshold_convert_to_register(&gs_handle, g, &reg);
1618 if (res != 0)
1619 {
1620 adxl362_interface_debug_print("adxl362: activity threshold convert to register failed.\n");
1621 (void)adxl362_deinit(&gs_handle);
1622
1623 return 1;
1624 }
1625 adxl362_interface_debug_print("adxl362: activity threshold convert to register %0.2fg.\n", g);
1626
1627 /* activity threshold convert to data */
1628 res = adxl362_activity_threshold_convert_to_data(&gs_handle, reg, &g_check);
1629 if (res != 0)
1630 {
1631 adxl362_interface_debug_print("adxl362: activity threshold convert to data failed.\n");
1632 (void)adxl362_deinit(&gs_handle);
1633
1634 return 1;
1635 }
1636 adxl362_interface_debug_print("adxl362: check activity threshold %0.2fg.\n", g_check);
1637
1638 /* adxl362_set_activity_time/adxl362_get_activity_time test */
1639 adxl362_interface_debug_print("adxl362: adxl362_set_activity_time/adxl362_get_activity_time test.\n");
1640
1641 /* set activity time */
1642 tim_short = rand() % 256;
1643 res = adxl362_set_activity_time(&gs_handle, tim_short);
1644 if (res != 0)
1645 {
1646 adxl362_interface_debug_print("adxl362: set activity time failed.\n");
1647 (void)adxl362_deinit(&gs_handle);
1648
1649 return 1;
1650 }
1651 adxl362_interface_debug_print("adxl362: set activity time 0x%02X.\n", tim_short);
1652
1653 /* get activity time */
1654 res = adxl362_get_activity_time(&gs_handle, &tim_short_check);
1655 if (res != 0)
1656 {
1657 adxl362_interface_debug_print("adxl362: get activity time failed.\n");
1658 (void)adxl362_deinit(&gs_handle);
1659
1660 return 1;
1661 }
1662 adxl362_interface_debug_print("adxl362: check activity time %s.\n", (tim_short_check == tim_short) ? "ok" : "error");
1663
1664 /* adxl362_activity_time_convert_to_register/adxl362_activity_time_convert_to_data test */
1665 adxl362_interface_debug_print("adxl362: adxl362_activity_time_convert_to_register/adxl362_activity_time_convert_to_data test.\n");
1666
1667 /* activity time convert to register */
1668 ms = (float)(rand() % 1000) / 10.0f;
1669 res = adxl362_activity_time_convert_to_register(&gs_handle, ms, &status);
1670 if (res != 0)
1671 {
1672 adxl362_interface_debug_print("adxl362: activity time convert to register failed.\n");
1673 (void)adxl362_deinit(&gs_handle);
1674
1675 return 1;
1676 }
1677 adxl362_interface_debug_print("adxl362: activity time convert to register %0.2fms.\n", ms);
1678
1679 /* activity time convert to data */
1680 res = adxl362_activity_time_convert_to_data(&gs_handle, status, &ms_check);
1681 if (res != 0)
1682 {
1683 adxl362_interface_debug_print("adxl362: activity time convert to data failed.\n");
1684 (void)adxl362_deinit(&gs_handle);
1685
1686 return 1;
1687 }
1688 adxl362_interface_debug_print("adxl362: check activity time %0.2fms.\n", ms_check);
1689
1690 /* adxl362_set_inactivity_threshold/adxl362_get_inactivity_threshold test */
1691 adxl362_interface_debug_print("adxl362: adxl362_set_inactivity_threshold/adxl362_get_inactivity_threshold test.\n");
1692
1693 /* set inactivity threshold */
1694 threshold = rand() % 0x3FF;
1695 res = adxl362_set_inactivity_threshold(&gs_handle, threshold);
1696 if (res != 0)
1697 {
1698 adxl362_interface_debug_print("adxl362: set inactivity threshold failed.\n");
1699 (void)adxl362_deinit(&gs_handle);
1700
1701 return 1;
1702 }
1703 adxl362_interface_debug_print("adxl362: set inactivity threshold 0x%04X.\n", threshold);
1704
1705 /* get inactivity threshold */
1706 res = adxl362_get_inactivity_threshold(&gs_handle, &threshold_check);
1707 if (res != 0)
1708 {
1709 adxl362_interface_debug_print("adxl362: get inactivity threshold failed.\n");
1710 (void)adxl362_deinit(&gs_handle);
1711
1712 return 1;
1713 }
1714 adxl362_interface_debug_print("adxl362: check inactivity threshold %s.\n", (threshold_check == threshold) ? "ok" : "error");
1715
1716 /* adxl362_inactivity_threshold_convert_to_register/adxl362_inactivity_threshold_convert_to_data test */
1717 adxl362_interface_debug_print("adxl362: adxl362_inactivity_threshold_convert_to_register/adxl362_inactivity_threshold_convert_to_data test.\n");
1718
1719 /* inactivity threshold convert to register */
1720 g = (float)(rand() % 100) / 1000.0f;
1721 res = adxl362_inactivity_threshold_convert_to_register(&gs_handle, g, &reg);
1722 if (res != 0)
1723 {
1724 adxl362_interface_debug_print("adxl362: inactivity threshold convert to register failed.\n");
1725 (void)adxl362_deinit(&gs_handle);
1726
1727 return 1;
1728 }
1729 adxl362_interface_debug_print("adxl362: inactivity threshold convert to register %0.2fg.\n", g);
1730
1731 /* inactivity threshold convert to data */
1732 res = adxl362_inactivity_threshold_convert_to_data(&gs_handle, reg, &g_check);
1733 if (res != 0)
1734 {
1735 adxl362_interface_debug_print("adxl362: inactivity threshold convert to data failed.\n");
1736 (void)adxl362_deinit(&gs_handle);
1737
1738 return 1;
1739 }
1740 adxl362_interface_debug_print("adxl362: check inactivity threshold %0.2fg.\n", g_check);
1741
1742 /* adxl362_set_inactivity_time/adxl362_get_inactivity_time test */
1743 adxl362_interface_debug_print("adxl362: adxl362_set_inactivity_time/adxl362_get_inactivity_time test.\n");
1744
1745 /* set inactivity time */
1746 tim = rand() % 0xFFFFL;
1747 res = adxl362_set_inactivity_time(&gs_handle, tim);
1748 if (res != 0)
1749 {
1750 adxl362_interface_debug_print("adxl362: set inactivity time failed.\n");
1751 (void)adxl362_deinit(&gs_handle);
1752
1753 return 1;
1754 }
1755 adxl362_interface_debug_print("adxl362: set inactivity time 0x%04X.\n", tim);
1756
1757 /* get inactivity time */
1758 res = adxl362_get_inactivity_time(&gs_handle, &tim_check);
1759 if (res != 0)
1760 {
1761 adxl362_interface_debug_print("adxl362: get inactivity time failed.\n");
1762 (void)adxl362_deinit(&gs_handle);
1763
1764 return 1;
1765 }
1766 adxl362_interface_debug_print("adxl362: check inactivity time %s.\n", (tim_check == tim) ? "ok" : "error");
1767
1768 /* adxl362_inactivity_time_convert_to_register/adxl362_inactivity_time_convert_to_data test */
1769 adxl362_interface_debug_print("adxl362: adxl362_inactivity_time_convert_to_register/adxl362_inactivity_time_convert_to_data test.\n");
1770
1771 /* inactivity time convert to register */
1772 ms = (float)(rand() % 10000) / 10.0f;
1773 res = adxl362_inactivity_time_convert_to_register(&gs_handle, ms, &reg);
1774 if (res != 0)
1775 {
1776 adxl362_interface_debug_print("adxl362: inactivity time convert to register failed.\n");
1777 (void)adxl362_deinit(&gs_handle);
1778
1779 return 1;
1780 }
1781 adxl362_interface_debug_print("adxl362: inactivity time convert to register %0.2fms.\n", ms);
1782
1783 /* inactivity time convert to data */
1784 res = adxl362_inactivity_time_convert_to_data(&gs_handle, reg, &ms_check);
1785 if (res != 0)
1786 {
1787 adxl362_interface_debug_print("adxl362: inactivity time convert to data failed.\n");
1788 (void)adxl362_deinit(&gs_handle);
1789
1790 return 1;
1791 }
1792 adxl362_interface_debug_print("adxl362: check inactivity time %0.2fms.\n", ms_check);
1793
1794 /* adxl362_set_detect_mode/adxl362_get_detect_mode test */
1795 adxl362_interface_debug_print("adxl362: adxl362_set_detect_mode/adxl362_get_detect_mode test.\n");
1796
1797 /* both */
1799 if (res != 0)
1800 {
1801 adxl362_interface_debug_print("adxl362: set detect mode failed.\n");
1802 (void)adxl362_deinit(&gs_handle);
1803
1804 return 1;
1805 }
1806 adxl362_interface_debug_print("adxl362: set detect mode both.\n");
1807
1808 /* get detect mode */
1809 res = adxl362_get_detect_mode(&gs_handle, &detect_mode);
1810 if (res != 0)
1811 {
1812 adxl362_interface_debug_print("adxl362: get detect mode failed.\n");
1813 (void)adxl362_deinit(&gs_handle);
1814
1815 return 1;
1816 }
1817 adxl362_interface_debug_print("adxl362: check detect mode %s.\n", (detect_mode == ADXL362_DETECT_MODE_BOTH) ? "ok" : "error");
1818
1819 /* link */
1821 if (res != 0)
1822 {
1823 adxl362_interface_debug_print("adxl362: set detect mode failed.\n");
1824 (void)adxl362_deinit(&gs_handle);
1825
1826 return 1;
1827 }
1828 adxl362_interface_debug_print("adxl362: set detect mode link.\n");
1829
1830 /* get detect mode */
1831 res = adxl362_get_detect_mode(&gs_handle, &detect_mode);
1832 if (res != 0)
1833 {
1834 adxl362_interface_debug_print("adxl362: get detect mode failed.\n");
1835 (void)adxl362_deinit(&gs_handle);
1836
1837 return 1;
1838 }
1839 adxl362_interface_debug_print("adxl362: check detect mode %s.\n", (detect_mode == ADXL362_DETECT_MODE_LINK) ? "ok" : "error");
1840
1841 /* loop */
1843 if (res != 0)
1844 {
1845 adxl362_interface_debug_print("adxl362: set detect mode failed.\n");
1846 (void)adxl362_deinit(&gs_handle);
1847
1848 return 1;
1849 }
1850 adxl362_interface_debug_print("adxl362: set detect mode loop.\n");
1851
1852 /* get detect mode */
1853 res = adxl362_get_detect_mode(&gs_handle, &detect_mode);
1854 if (res != 0)
1855 {
1856 adxl362_interface_debug_print("adxl362: get detect mode failed.\n");
1857 (void)adxl362_deinit(&gs_handle);
1858
1859 return 1;
1860 }
1861 adxl362_interface_debug_print("adxl362: check detect mode %s.\n", (detect_mode == ADXL362_DETECT_MODE_LOOP) ? "ok" : "error");
1862
1863 /* adxl362_set_inactivity_detect_trigger/adxl362_get_inactivity_detect_trigger test */
1864 adxl362_interface_debug_print("adxl362: adxl362_set_inactivity_detect_trigger/adxl362_get_inactivity_detect_trigger test.\n");
1865
1866 /* absolute mode */
1868 if (res != 0)
1869 {
1870 adxl362_interface_debug_print("adxl362: set inactivity detect trigger failed.\n");
1871 (void)adxl362_deinit(&gs_handle);
1872
1873 return 1;
1874 }
1875 adxl362_interface_debug_print("adxl362: set inactivity detect trigger absolute mode.\n");
1876
1877 /* get inactivity detect trigger */
1878 res = adxl362_get_inactivity_detect_trigger(&gs_handle, &trigger);
1879 if (res != 0)
1880 {
1881 adxl362_interface_debug_print("adxl362: get inactivity detect trigger failed.\n");
1882 (void)adxl362_deinit(&gs_handle);
1883
1884 return 1;
1885 }
1886 adxl362_interface_debug_print("adxl362: check inactivity detect trigger %s.\n", (trigger == ADXL362_DETECT_TRIGGER_ABSOLUTE) ? "ok" : "error");
1887
1888 /* referenced mode */
1890 if (res != 0)
1891 {
1892 adxl362_interface_debug_print("adxl362: set inactivity detect trigger failed.\n");
1893 (void)adxl362_deinit(&gs_handle);
1894
1895 return 1;
1896 }
1897 adxl362_interface_debug_print("adxl362: set inactivity detect trigger referenced mode.\n");
1898
1899 /* get inactivity detect trigger */
1900 res = adxl362_get_inactivity_detect_trigger(&gs_handle, &trigger);
1901 if (res != 0)
1902 {
1903 adxl362_interface_debug_print("adxl362: get inactivity detect trigger failed.\n");
1904 (void)adxl362_deinit(&gs_handle);
1905
1906 return 1;
1907 }
1908 adxl362_interface_debug_print("adxl362: check inactivity detect trigger %s.\n", (trigger == ADXL362_DETECT_TRIGGER_REFERENCED) ? "ok" : "error");
1909
1910 /* adxl362_set_activity_detect_trigger/adxl362_get_activity_detect_trigger test */
1911 adxl362_interface_debug_print("adxl362: adxl362_set_activity_detect_trigger/adxl362_get_activity_detect_trigger test.\n");
1912
1913 /* absolute mode */
1915 if (res != 0)
1916 {
1917 adxl362_interface_debug_print("adxl362: set activity detect trigger failed.\n");
1918 (void)adxl362_deinit(&gs_handle);
1919
1920 return 1;
1921 }
1922 adxl362_interface_debug_print("adxl362: set activity detect trigger absolute mode.\n");
1923
1924 /* get activity detect trigger */
1925 res = adxl362_get_activity_detect_trigger(&gs_handle, &trigger);
1926 if (res != 0)
1927 {
1928 adxl362_interface_debug_print("adxl362: get activity detect trigger failed.\n");
1929 (void)adxl362_deinit(&gs_handle);
1930
1931 return 1;
1932 }
1933 adxl362_interface_debug_print("adxl362: check activity detect trigger %s.\n", (trigger == ADXL362_DETECT_TRIGGER_ABSOLUTE) ? "ok" : "error");
1934
1935 /* referenced mode */
1937 if (res != 0)
1938 {
1939 adxl362_interface_debug_print("adxl362: set activity detect trigger failed.\n");
1940 (void)adxl362_deinit(&gs_handle);
1941
1942 return 1;
1943 }
1944 adxl362_interface_debug_print("adxl362: set activity detect trigger referenced mode.\n");
1945
1946 /* get activity detect trigger */
1947 res = adxl362_get_activity_detect_trigger(&gs_handle, &trigger);
1948 if (res != 0)
1949 {
1950 adxl362_interface_debug_print("adxl362: get activity detect trigger failed.\n");
1951 (void)adxl362_deinit(&gs_handle);
1952
1953 return 1;
1954 }
1955 adxl362_interface_debug_print("adxl362: check activity detect trigger %s.\n", (trigger == ADXL362_DETECT_TRIGGER_REFERENCED) ? "ok" : "error");
1956
1957 /* adxl362_set_inactivity/adxl362_get_inactivity test */
1958 adxl362_interface_debug_print("adxl362: adxl362_set_inactivity/adxl362_get_inactivity test.\n");
1959
1960 /* disable */
1961 res = adxl362_set_inactivity(&gs_handle, ADXL362_BOOL_FALSE);
1962 if (res != 0)
1963 {
1964 adxl362_interface_debug_print("adxl362: set inactivity failed.\n");
1965 (void)adxl362_deinit(&gs_handle);
1966
1967 return 1;
1968 }
1969 adxl362_interface_debug_print("adxl362: set inactivity disable.\n");
1970
1971 /* get inactivity */
1972 res = adxl362_get_inactivity(&gs_handle, &enable);
1973 if (res != 0)
1974 {
1975 adxl362_interface_debug_print("adxl362: get inactivity failed.\n");
1976 (void)adxl362_deinit(&gs_handle);
1977
1978 return 1;
1979 }
1980 adxl362_interface_debug_print("adxl362: check inactivity %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
1981
1982 /* enable */
1983 res = adxl362_set_inactivity(&gs_handle, ADXL362_BOOL_TRUE);
1984 if (res != 0)
1985 {
1986 adxl362_interface_debug_print("adxl362: set inactivity failed.\n");
1987 (void)adxl362_deinit(&gs_handle);
1988
1989 return 1;
1990 }
1991 adxl362_interface_debug_print("adxl362: set inactivity enable.\n");
1992
1993 /* get inactivity */
1994 res = adxl362_get_inactivity(&gs_handle, &enable);
1995 if (res != 0)
1996 {
1997 adxl362_interface_debug_print("adxl362: get inactivity failed.\n");
1998 (void)adxl362_deinit(&gs_handle);
1999
2000 return 1;
2001 }
2002 adxl362_interface_debug_print("adxl362: check inactivity %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
2003
2004 /* adxl362_set_activity/adxl362_get_activity test */
2005 adxl362_interface_debug_print("adxl362: adxl362_set_activity/adxl362_get_activity test.\n");
2006
2007 /* disable */
2008 res = adxl362_set_activity(&gs_handle, ADXL362_BOOL_FALSE);
2009 if (res != 0)
2010 {
2011 adxl362_interface_debug_print("adxl362: set activity failed.\n");
2012 (void)adxl362_deinit(&gs_handle);
2013
2014 return 1;
2015 }
2016 adxl362_interface_debug_print("adxl362: set activity disable.\n");
2017
2018 /* get activity */
2019 res = adxl362_get_activity(&gs_handle, &enable);
2020 if (res != 0)
2021 {
2022 adxl362_interface_debug_print("adxl362: get activity failed.\n");
2023 (void)adxl362_deinit(&gs_handle);
2024
2025 return 1;
2026 }
2027 adxl362_interface_debug_print("adxl362: check activity %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
2028
2029 /* enable */
2030 res = adxl362_set_activity(&gs_handle, ADXL362_BOOL_TRUE);
2031 if (res != 0)
2032 {
2033 adxl362_interface_debug_print("adxl362: set activity failed.\n");
2034 (void)adxl362_deinit(&gs_handle);
2035
2036 return 1;
2037 }
2038 adxl362_interface_debug_print("adxl362: set activity enable.\n");
2039
2040 /* get activity */
2041 res = adxl362_get_activity(&gs_handle, &enable);
2042 if (res != 0)
2043 {
2044 adxl362_interface_debug_print("adxl362: get activity failed.\n");
2045 (void)adxl362_deinit(&gs_handle);
2046
2047 return 1;
2048 }
2049 adxl362_interface_debug_print("adxl362: check activity %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
2050
2051 /* adxl362_set_self_test/adxl362_get_self_test test */
2052 adxl362_interface_debug_print("adxl362: adxl362_set_self_test/adxl362_get_self_test test.\n");
2053
2054 /* enable */
2055 res = adxl362_set_self_test(&gs_handle, ADXL362_BOOL_TRUE);
2056 if (res != 0)
2057 {
2058 adxl362_interface_debug_print("adxl362: set self test failed.\n");
2059 (void)adxl362_deinit(&gs_handle);
2060
2061 return 1;
2062 }
2063 adxl362_interface_debug_print("adxl362: set self test enable.\n");
2064
2065 /* get self test */
2066 res = adxl362_get_self_test(&gs_handle, &enable);
2067 if (res != 0)
2068 {
2069 adxl362_interface_debug_print("adxl362: get self test failed.\n");
2070 (void)adxl362_deinit(&gs_handle);
2071
2072 return 1;
2073 }
2074 adxl362_interface_debug_print("adxl362: check self test %s.\n", (enable == ADXL362_BOOL_TRUE) ? "ok" : "error");
2075
2076 /* disable */
2077 res = adxl362_set_self_test(&gs_handle, ADXL362_BOOL_FALSE);
2078 if (res != 0)
2079 {
2080 adxl362_interface_debug_print("adxl362: set self test failed.\n");
2081 (void)adxl362_deinit(&gs_handle);
2082
2083 return 1;
2084 }
2085 adxl362_interface_debug_print("adxl362: set self test disable.\n");
2086
2087 /* get self test */
2088 res = adxl362_get_self_test(&gs_handle, &enable);
2089 if (res != 0)
2090 {
2091 adxl362_interface_debug_print("adxl362: get self test failed.\n");
2092 (void)adxl362_deinit(&gs_handle);
2093
2094 return 1;
2095 }
2096 adxl362_interface_debug_print("adxl362: check self test %s.\n", (enable == ADXL362_BOOL_FALSE) ? "ok" : "error");
2097
2098 /* finish register test */
2099 adxl362_interface_debug_print("adxl362: finish register test.\n");
2100 (void)adxl362_deinit(&gs_handle);
2101
2102 return 0;
2103}
driver adxl362 register test header file
uint8_t adxl362_get_wake_up(adxl362_handle_t *handle, adxl362_bool_t *enable)
get the chip wake up status
adxl362_detect_mode_t
adxl362 detect mode enumeration definition
uint8_t adxl362_get_interrupt_pin1_map(adxl362_handle_t *handle, adxl362_interrupt_map_t map, adxl362_bool_t *enable)
get the interrupt pin1 map
uint8_t adxl362_inactivity_threshold_convert_to_data(adxl362_handle_t *handle, uint16_t reg, float *g)
convert the register raw data to the inactivity threshold
adxl362_fifo_mode_t
adxl362 fifo mode enumeration definition
uint8_t adxl362_set_range(adxl362_handle_t *handle, adxl362_range_t range)
set the measurement range
uint8_t adxl362_get_self_test(adxl362_handle_t *handle, adxl362_bool_t *enable)
get the self test status
uint8_t adxl362_set_interrupt_pin2_map(adxl362_handle_t *handle, adxl362_interrupt_map_t map, adxl362_bool_t enable)
set the interrupt pin2 map
uint8_t adxl362_get_noise_mode(adxl362_handle_t *handle, adxl362_noise_mode_t *mode)
get the noise mode
uint8_t adxl362_get_fifo_mode(adxl362_handle_t *handle, adxl362_fifo_mode_t *mode)
get the fifo mode
adxl362_bandwidth_t
adxl362 bandwidth enumeration definition
uint8_t adxl362_get_fifo_sample(adxl362_handle_t *handle, uint16_t *sample)
get the fifo sample
uint8_t adxl362_inactivity_time_convert_to_data(adxl362_handle_t *handle, uint16_t reg, float *ms)
convert the register raw data to the inactivity time
uint8_t adxl362_set_inactivity_detect_trigger(adxl362_handle_t *handle, adxl362_detect_trigger_t trigger)
set the inactivity detect trigger mode
uint8_t adxl362_set_fifo_sample(adxl362_handle_t *handle, uint16_t sample)
set the fifo sample
uint8_t adxl362_set_inactivity_time(adxl362_handle_t *handle, uint16_t tim)
set the inactivity time
struct adxl362_info_s adxl362_info_t
adxl362 information structure definition
uint8_t adxl362_set_fifo_mode(adxl362_handle_t *handle, adxl362_fifo_mode_t mode)
set the fifo mode
uint8_t adxl362_get_detect_mode(adxl362_handle_t *handle, adxl362_detect_mode_t *mode)
get the detect mode
uint8_t adxl362_info(adxl362_info_t *info)
get chip's information
adxl362_odr_t
adxl362 odr enumeration definition
uint8_t adxl362_set_self_test(adxl362_handle_t *handle, adxl362_bool_t enable)
enable or disable the self test
adxl362_mode_t
adxl362 mode enumeration definition
uint8_t adxl362_init(adxl362_handle_t *handle)
initialize the chip
uint8_t adxl362_set_detect_mode(adxl362_handle_t *handle, adxl362_detect_mode_t mode)
set the detect mode
uint8_t adxl362_get_activity_time(adxl362_handle_t *handle, uint8_t *tim)
get the activity time
struct adxl362_handle_s adxl362_handle_t
adxl362 handle structure definition
uint8_t adxl362_get_odr(adxl362_handle_t *handle, adxl362_odr_t *odr)
get the output data rate
uint8_t adxl362_set_wake_up(adxl362_handle_t *handle, adxl362_bool_t enable)
enable or disable chip wake up
uint8_t adxl362_get_inactivity_threshold(adxl362_handle_t *handle, uint16_t *threshold)
get the inactivity threshold
uint8_t adxl362_set_inactivity_threshold(adxl362_handle_t *handle, uint16_t threshold)
set the inactivity threshold
uint8_t adxl362_get_bandwidth(adxl362_handle_t *handle, adxl362_bandwidth_t *bandwidth)
get the filter bandwidth
uint8_t adxl362_get_inactivity(adxl362_handle_t *handle, adxl362_bool_t *enable)
get the inactivity status
uint8_t adxl362_set_interrupt_pin1_map(adxl362_handle_t *handle, adxl362_interrupt_map_t map, adxl362_bool_t enable)
set the interrupt pin1 map
uint8_t adxl362_get_inactivity_detect_trigger(adxl362_handle_t *handle, adxl362_detect_trigger_t *trigger)
get the inactivity detect trigger mode
uint8_t adxl362_set_noise_mode(adxl362_handle_t *handle, adxl362_noise_mode_t mode)
set the noise mode
uint8_t adxl362_set_activity_threshold(adxl362_handle_t *handle, uint16_t threshold)
set the activity threshold
uint8_t adxl362_activity_threshold_convert_to_register(adxl362_handle_t *handle, float g, uint16_t *reg)
convert the activity threshold to the register raw data
uint8_t adxl362_set_activity_time(adxl362_handle_t *handle, uint8_t tim)
set the activity time
uint8_t adxl362_get_mode(adxl362_handle_t *handle, adxl362_mode_t *mode)
get the chip mode
uint8_t adxl362_get_auto_sleep(adxl362_handle_t *handle, adxl362_bool_t *enable)
get the auto sleep status
adxl362_noise_mode_t
adxl362 noise mode enumeration definition
uint8_t adxl362_set_interrupt_pin1_active_level(adxl362_handle_t *handle, adxl362_interrupt_pin_level_t level)
set the interrupt pin1 active level
uint8_t adxl362_get_fifo_counter(adxl362_handle_t *handle, uint16_t *counter)
get the fifo counter
uint8_t adxl362_get_fifo_temperature(adxl362_handle_t *handle, adxl362_bool_t *enable)
get the fifo temperature status
uint8_t adxl362_get_activity_detect_trigger(adxl362_handle_t *handle, adxl362_detect_trigger_t *trigger)
get the activity detect trigger mode
uint8_t adxl362_get_revision(adxl362_handle_t *handle, uint8_t *id)
get the chip revision
uint8_t adxl362_inactivity_time_convert_to_register(adxl362_handle_t *handle, float ms, uint16_t *reg)
convert the inactivity time to the register raw data
uint8_t adxl362_set_fifo_temperature(adxl362_handle_t *handle, adxl362_bool_t enable)
enable or disable saving temperature data to fifo
uint8_t adxl362_get_inactivity_time(adxl362_handle_t *handle, uint16_t *tim)
get the inactivity time
adxl362_bool_t
adxl362 bool enumeration definition
uint8_t adxl362_set_activity_detect_trigger(adxl362_handle_t *handle, adxl362_detect_trigger_t trigger)
set the activity detect trigger mode
adxl362_range_t
adxl362 range enumeration definition
uint8_t adxl362_set_interrupt_pin1_as_external_clock(adxl362_handle_t *handle, adxl362_bool_t enable)
enable or disable interrupt pin1 as the external clock
adxl362_detect_trigger_t
adxl362 detect trigger enumeration definition
uint8_t adxl362_set_mode(adxl362_handle_t *handle, adxl362_mode_t mode)
set the chip mode
uint8_t adxl362_get_interrupt_pin1_active_level(adxl362_handle_t *handle, adxl362_interrupt_pin_level_t *level)
get the interrupt pin1 active level
uint8_t adxl362_get_activity(adxl362_handle_t *handle, adxl362_bool_t *enable)
get the activity status
uint8_t adxl362_set_inactivity(adxl362_handle_t *handle, adxl362_bool_t enable)
enable or disable inactivity
adxl362_interrupt_pin_level_t
adxl362 interrupt pin level enumeration definition
uint8_t adxl362_activity_time_convert_to_register(adxl362_handle_t *handle, float ms, uint8_t *reg)
convert the activity time to the register raw data
uint8_t adxl362_get_interrupt_pin1_as_external_clock(adxl362_handle_t *handle, adxl362_bool_t *enable)
get the interrupt pin1 as the external clock status
uint8_t adxl362_inactivity_threshold_convert_to_register(adxl362_handle_t *handle, float g, uint16_t *reg)
convert the inactivity threshold to the register raw data
uint8_t adxl362_get_interrupt_pin2_as_external_sampling_trigger(adxl362_handle_t *handle, adxl362_bool_t *enable)
get the interrupt pin2 as the external sampling trigger status
uint8_t adxl362_set_interrupt_pin2_as_external_sampling_trigger(adxl362_handle_t *handle, adxl362_bool_t enable)
enable or disable interrupt pin2 as the external sampling trigger
uint8_t adxl362_get_status(adxl362_handle_t *handle, uint8_t *status)
get the chip status
uint8_t adxl362_set_activity(adxl362_handle_t *handle, adxl362_bool_t enable)
enable or disable activity
uint8_t adxl362_soft_reset(adxl362_handle_t *handle)
soft reset
uint8_t adxl362_set_auto_sleep(adxl362_handle_t *handle, adxl362_bool_t enable)
enable or disable auto sleep
uint8_t adxl362_get_range(adxl362_handle_t *handle, adxl362_range_t *range)
get the measurement range
uint8_t adxl362_get_activity_threshold(adxl362_handle_t *handle, uint16_t *threshold)
get the activity threshold
uint8_t adxl362_get_interrupt_pin2_map(adxl362_handle_t *handle, adxl362_interrupt_map_t map, adxl362_bool_t *enable)
get the interrupt pin2 map
uint8_t adxl362_activity_threshold_convert_to_data(adxl362_handle_t *handle, uint16_t reg, float *g)
convert the register raw data to the activity threshold
uint8_t adxl362_set_bandwidth(adxl362_handle_t *handle, adxl362_bandwidth_t bandwidth)
set the filter bandwidth
uint8_t adxl362_deinit(adxl362_handle_t *handle)
close the chip
uint8_t adxl362_activity_time_convert_to_data(adxl362_handle_t *handle, uint8_t reg, float *ms)
convert the register raw data to the activity time
uint8_t adxl362_set_odr(adxl362_handle_t *handle, adxl362_odr_t odr)
set the output data rate
@ ADXL362_DETECT_MODE_LINK
@ ADXL362_DETECT_MODE_LOOP
@ ADXL362_DETECT_MODE_BOTH
@ ADXL362_FIFO_MODE_OLDEST_SAVED
@ ADXL362_FIFO_MODE_DISABLE
@ ADXL362_FIFO_MODE_TRIGGERED
@ ADXL362_FIFO_MODE_STREAM
@ ADXL362_BANDWIDTH_ODR_DIV_2
@ ADXL362_BANDWIDTH_ODE_DIV_4
@ ADXL362_ODR_50HZ
@ ADXL362_ODR_12P5HZ
@ ADXL362_ODR_25HZ
@ ADXL362_ODR_200HZ
@ ADXL362_ODR_100HZ
@ ADXL362_ODR_400HZ
@ ADXL362_INTERRUPT_MAP_FIFO_READY
@ ADXL362_INTERRUPT_MAP_ACT
@ ADXL362_INTERRUPT_MAP_FIFO_OVERRUN
@ ADXL362_INTERRUPT_MAP_FIFO_WATERMARK
@ ADXL362_INTERRUPT_MAP_DATA_READY
@ ADXL362_INTERRUPT_MAP_AWAKE
@ ADXL362_INTERRUPT_MAP_INACT
@ ADXL362_MODE_MEASUREMENT
@ ADXL362_MODE_STANDBY
@ ADXL362_NOISE_MODE_LOW_NOISE
@ ADXL362_NOISE_MODE_ULTRA_LOW_NOISE
@ ADXL362_NOISE_MODE_NORMAL
@ ADXL362_BOOL_FALSE
@ ADXL362_BOOL_TRUE
@ ADXL362_RANGE_4G
@ ADXL362_RANGE_8G
@ ADXL362_RANGE_2G
@ ADXL362_DETECT_TRIGGER_ABSOLUTE
@ ADXL362_DETECT_TRIGGER_REFERENCED
@ ADXL362_INTERRUPT_PIN_LOW
@ ADXL362_INTERRUPT_PIN_HIGH
uint8_t adxl362_interface_spi_read(uint8_t reg, uint8_t *buf, uint16_t len)
interface spi bus read
uint8_t adxl362_interface_spi_deinit(void)
interface spi bus deinit
uint8_t adxl362_interface_spi_init(void)
interface spi bus init
void adxl362_interface_delay_ms(uint32_t ms)
interface delay ms
uint8_t adxl362_interface_spi_write_address16(uint16_t addr, uint8_t *buf, uint16_t len)
interface spi bus write
void adxl362_interface_debug_print(const char *const fmt,...)
interface print format data
void adxl362_interface_receive_callback(uint8_t type)
interface receive callback
uint8_t adxl362_interface_spi_read_address16(uint16_t addr, uint8_t *buf, uint16_t len)
interface spi bus read
uint8_t adxl362_register_test(void)
register test
uint32_t driver_version
char manufacturer_name[32]