zephyr/samples/sensor/i3g4250d
Keith Packard 0b90fd5adf samples, tests, boards: Switch main return type from void to int
As both C and C++ standards require applications running under an OS to
return 'int', adapt that for Zephyr to align with those standard. This also
eliminates errors when building with clang when not using -ffreestanding,
and reduces the need for compiler flags to silence warnings for both clang
and gcc.

Most of these changes were automated using coccinelle with the following
script:

@@
@@
- void
+ int
main(...) {
	...
-	return;
+	return 0;
	...
}

Approximately 40 files had to be edited by hand as coccinelle was unable to
fix them.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-04-14 07:49:41 +09:00
..
src samples, tests, boards: Switch main return type from void to int 2023-04-14 07:49:41 +09:00
CMakeLists.txt samples: sensors: add sample for i3g4250d gyro 2021-09-28 19:44:26 -04:00
prj.conf sensors: Remove unnecessary Kconfig setting of sensors 2022-07-25 15:18:56 +02:00
README.rst samples: sensors: add sample for i3g4250d gyro 2021-09-28 19:44:26 -04:00
sample.yaml samples: sensors: add sample for i3g4250d gyro 2021-09-28 19:44:26 -04:00

.. _i3g4250d:

I3G4250D: 3-axis digital output gyroscope
#########################################

Description
***********

This sample application configures the gyroscope with a fixed
sampling rate and polls the measurements with the same rate and
displays the measurements along with a timestamp since startup.

Requirements
************

This sample application uses the I3G4250D sensor connected via
SPI interface. This is the case for example for stm32f3_disco@E
board devicetree.

Building and Running
********************

To build the application a board with I3G4250D on SPI interface
has to be chosen, or a custom devicetree overlay has to be provided.
Here STM32F3 discovery board is used.

.. zephyr-app-commands::
   :zephyr-app: samples/sensor/i3g4250d
   :board: stm32f3_disco@E
   :goals: build flash

Sample Output
*************

.. code-block:: console

   *** Booting Zephyr OS build zephyr-v2.6.0-1897-ga09838064f26  ***
   Set sensor sampling frequency to 200.000000 Hz.
   Polling at 200.000000 Hz
   12 ms: x 2454.031430 , y 2336.015410 , z -1800.030108
   22 ms: x -248.003106 , y -268.979704 , z 6.018390
   32 ms: x -214.989906 , y -237.023468 , z 6.013926
   41 ms: x -193.978308 , y -205.032232 , z 2.000356
   51 ms: x -158.986716 , y -171.014568 , z 3.969998
   60 ms: x -138.979582 , y -153.003326 , z 3.978748
   70 ms: x -120.981554 , y -129.982800 , z -13.971422
   80 ms: x -106.984060 , y -112.967272 , z -80.006572