X_NUCLEO_IKS01A3 sensor board modified library
Dependencies: STTS751 LPS22HH LIS2MDL HTS221 LIS2DW12 LSM6DSO
Dependents: LELEC2811_LPS22HH_Altimeter LELEC2811_LISDW12_Accelerometer LELEC2811_LIS2MDL_Magnetometer LELEC2811_IKS01A3_Multisensors
Revision 5:463962d6f485, committed 2019-07-24
- Comitter:
- cparata
- Date:
- Wed Jul 24 14:20:51 2019 +0000
- Parent:
- 4:40a48140855d
- Child:
- 6:1ebdf8ec9e8b
- Commit message:
- Format with Astyle
Changed in this revision
--- a/Components/HTS221.lib Mon Jun 03 09:25:14 2019 +0000 +++ b/Components/HTS221.lib Wed Jul 24 14:20:51 2019 +0000 @@ -1,1 +1,1 @@ -https://developer.mbed.org/teams/ST/code/HTS221/#9f317607860e +https://developer.mbed.org/teams/ST/code/HTS221/#ccf7f36492ae
--- a/Components/LIS2DW12.lib Mon Jun 03 09:25:14 2019 +0000 +++ b/Components/LIS2DW12.lib Wed Jul 24 14:20:51 2019 +0000 @@ -1,1 +1,1 @@ -https://os.mbed.com/teams/ST/code/LIS2DW12/#111317ba9301 +https://os.mbed.com/teams/ST/code/LIS2DW12/#94c5d5546161
--- a/Components/LIS2MDL.lib Mon Jun 03 09:25:14 2019 +0000 +++ b/Components/LIS2MDL.lib Wed Jul 24 14:20:51 2019 +0000 @@ -1,1 +1,1 @@ -https://os.mbed.com/teams/ST/code/LIS2MDL/#671edf39d961 +https://os.mbed.com/teams/ST/code/LIS2MDL/#8562ae1a0534
--- a/Components/LPS22HH.lib Mon Jun 03 09:25:14 2019 +0000 +++ b/Components/LPS22HH.lib Wed Jul 24 14:20:51 2019 +0000 @@ -1,1 +1,1 @@ -https://os.mbed.com/teams/ST/code/LPS22HH/#c761bc6186e8 +https://os.mbed.com/teams/ST/code/LPS22HH/#978cae936ddb
--- a/Components/LSM6DSO.lib Mon Jun 03 09:25:14 2019 +0000 +++ b/Components/LSM6DSO.lib Wed Jul 24 14:20:51 2019 +0000 @@ -1,1 +1,1 @@ -https://os.mbed.com/teams/ST/code/LSM6DSO/#4d14e9edf37e +https://os.mbed.com/teams/ST/code/LSM6DSO/#4274d9103f1d
--- a/Components/STTS751.lib Mon Jun 03 09:25:14 2019 +0000 +++ b/Components/STTS751.lib Wed Jul 24 14:20:51 2019 +0000 @@ -1,1 +1,1 @@ -https://os.mbed.com/teams/ST/code/STTS751/#128dae13c732 +https://os.mbed.com/teams/ST/code/STTS751/#5859badee052
--- a/XNucleoIKS01A3.cpp Mon Jun 03 09:25:14 2019 +0000
+++ b/XNucleoIKS01A3.cpp Wed Jul 24 14:20:51 2019 +0000
@@ -33,8 +33,8 @@
* OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
******************************************************************************
-*/
-
+*/
+
/* Includes ------------------------------------------------------------------*/
#include "mbed.h"
#include "XNucleoIKS01A3.h"
@@ -54,13 +54,13 @@
pt_sensor(new LPS22HHSensor(dev_i2c, LPS22HH_I2C_ADD_H, lps22hh_int)),
acc_gyro(new LSM6DSOSensor(dev_i2c, LSM6DSO_I2C_ADD_H, lsm6dso_int1, lsm6dso_int2)),
t_sensor(new STTS751Sensor(dev_i2c, STTS751_1xxxx_ADD_7K5, stts751_int))
-{
- ht_sensor->init(NULL);
- magnetometer->init(NULL);
- accelerometer->init(NULL);
- pt_sensor->init(NULL);
- acc_gyro->init(NULL);
- t_sensor->init(NULL);
+{
+ ht_sensor->init(NULL);
+ magnetometer->init(NULL);
+ accelerometer->init(NULL);
+ pt_sensor->init(NULL);
+ acc_gyro->init(NULL);
+ t_sensor->init(NULL);
}
/**
@@ -68,7 +68,7 @@
* @return a pointer to the initialized singleton instance of class XNucleoIKS01A3.
* A return value of NULL indicates an out of memory situation.
* @param[in] ext_i2c (optional) pointer to an instance of DevI2C to be used
- * for communication on the expansion board.
+ * for communication on the expansion board.
* Defaults to NULL.
* Taken into account only on the very first call of one of the 'Instance' functions.
* If not provided a new DevI2C will be created with standard
@@ -90,13 +90,16 @@
* Taken into account only on the very first call of one of the 'Instance' functions.
* It maps the INT pin for STTS751. Defaults to IKS01A3_PIN_STTS751_INT.
*/
-XNucleoIKS01A3 *XNucleoIKS01A3::instance(DevI2C *ext_i2c, PinName lsm6dso_int1, PinName lsm6dso_int2, PinName lis2dw12_int1, PinName lps22hh_int, PinName stts751_int) {
- if(_instance == NULL) {
- if(ext_i2c == NULL)
+XNucleoIKS01A3 *XNucleoIKS01A3::instance(DevI2C *ext_i2c, PinName lsm6dso_int1, PinName lsm6dso_int2, PinName lis2dw12_int1, PinName lps22hh_int, PinName stts751_int)
+{
+ if (_instance == NULL) {
+ if (ext_i2c == NULL) {
ext_i2c = new DevI2C(IKS01A3_PIN_I2C_SDA, IKS01A3_PIN_I2C_SCL);
+ }
- if(ext_i2c != NULL)
+ if (ext_i2c != NULL) {
_instance = new XNucleoIKS01A3(ext_i2c, lsm6dso_int1, lsm6dso_int2, lis2dw12_int1, lps22hh_int, stts751_int);
+ }
}
return _instance;
@@ -130,12 +133,14 @@
* Taken into account only on the very first call of one of the 'Instance' functions.
* It maps the INT pin for STTS751. Defaults to IKS01A3_PIN_STTS751_INT.
*/
-XNucleoIKS01A3 *XNucleoIKS01A3::instance(PinName sda, PinName scl, PinName lsm6dso_int1, PinName lsm6dso_int2, PinName lis2dw12_int1, PinName lps22hh_int, PinName stts751_int) {
- if(_instance == NULL) {
+XNucleoIKS01A3 *XNucleoIKS01A3::instance(PinName sda, PinName scl, PinName lsm6dso_int1, PinName lsm6dso_int2, PinName lis2dw12_int1, PinName lps22hh_int, PinName stts751_int)
+{
+ if (_instance == NULL) {
DevI2C *ext_i2c = new DevI2C(sda, scl);
- if(ext_i2c != NULL)
+ if (ext_i2c != NULL) {
_instance = new XNucleoIKS01A3(ext_i2c, lsm6dso_int1, lsm6dso_int2, lis2dw12_int1, lps22hh_int, stts751_int);
+ }
}
return _instance;
--- a/XNucleoIKS01A3.h Mon Jun 03 09:25:14 2019 +0000
+++ b/XNucleoIKS01A3.h Wed Jul 24 14:20:51 2019 +0000
@@ -58,7 +58,7 @@
)
/* Classes -------------------------------------------------------------------*/
-/** Class XNucleoIKS01A3 is intended to represent the MEMS Inertial & Environmental
+/** Class XNucleoIKS01A3 is intended to represent the MEMS Inertial & Environmental
* Nucleo Expansion Board with the same name.
*
* The expansion board is featuring basically four IPs:\n
@@ -70,30 +70,30 @@
* -# and a LSM6DSO 3D Acceleromenter and 3D Gyroscope\n
*
* The expansion board features also a DIL 24-pin socket which makes it possible
- * to add further MEMS adapters and other sensors (e.g. UV index).
+ * to add further MEMS adapters and other sensors (e.g. UV index).
*
* It is intentionally implemented as a singleton because only one
* X_NUCLEO_IKS01A3 at a time might be deployed in a HW component stack.\n
- * In order to get the singleton instance you have to call class method `Instance()`,
+ * In order to get the singleton instance you have to call class method `Instance()`,
* e.g.:
* @code
* // Inertial & Environmental expansion board singleton instance
* static X_NUCLEO_IKS01A3 *<TODO>_expansion_board = X_NUCLEO_IKS01A3::Instance();
* @endcode
*/
-class XNucleoIKS01A3
-{
- protected:
+class XNucleoIKS01A3 {
+protected:
XNucleoIKS01A3(DevI2C *ext_i2c, PinName lsm6dso_int1, PinName lsm6dso_int2, PinName lis2dw12_int1, PinName lps22hh_int, PinName stts751_int);
- ~XNucleoIKS01A3(void) {
+ ~XNucleoIKS01A3(void)
+ {
/* should never be called */
error("Trial to delete XNucleoIKS01A3 singleton!\n");
}
- public:
- static XNucleoIKS01A3* instance(DevI2C *ext_i2c = NULL, PinName lsm6dso_int1 = IKS01A3_PIN_LSM6DSO_INT1, PinName lsm6dso_int2 = IKS01A3_PIN_LSM6DSO_INT2, PinName lis2dw12_int1 = IKS01A3_PIN_LIS2DW12_INT1, PinName lps22hh_int = IKS01A3_PIN_LPS22HH_INT, PinName stts751_int = IKS01A3_PIN_STTS751_INT);
- static XNucleoIKS01A3* instance(PinName sda, PinName scl, PinName lsm6dso_int1 = IKS01A3_PIN_LSM6DSO_INT1, PinName lsm6dso_int2 = IKS01A3_PIN_LSM6DSO_INT2, PinName lis2dw12_int1 = IKS01A3_PIN_LIS2DW12_INT1, PinName lps22hh_int = IKS01A3_PIN_LPS22HH_INT, PinName stts751_int = IKS01A3_PIN_STTS751_INT);
+public:
+ static XNucleoIKS01A3 *instance(DevI2C *ext_i2c = NULL, PinName lsm6dso_int1 = IKS01A3_PIN_LSM6DSO_INT1, PinName lsm6dso_int2 = IKS01A3_PIN_LSM6DSO_INT2, PinName lis2dw12_int1 = IKS01A3_PIN_LIS2DW12_INT1, PinName lps22hh_int = IKS01A3_PIN_LPS22HH_INT, PinName stts751_int = IKS01A3_PIN_STTS751_INT);
+ static XNucleoIKS01A3 *instance(PinName sda, PinName scl, PinName lsm6dso_int1 = IKS01A3_PIN_LSM6DSO_INT1, PinName lsm6dso_int2 = IKS01A3_PIN_LSM6DSO_INT2, PinName lis2dw12_int1 = IKS01A3_PIN_LIS2DW12_INT1, PinName lps22hh_int = IKS01A3_PIN_LPS22HH_INT, PinName stts751_int = IKS01A3_PIN_STTS751_INT);
DevI2C *dev_i2c;
@@ -104,7 +104,7 @@
LSM6DSOSensor *acc_gyro;
STTS751Sensor *t_sensor;
- private:
+private:
static XNucleoIKS01A3 *_instance;
};
--- a/x_nucleo_iks01a3_targets.h Mon Jun 03 09:25:14 2019 +0000 +++ b/x_nucleo_iks01a3_targets.h Wed Jul 24 14:20:51 2019 +0000 @@ -4,7 +4,7 @@ * @author SRA * @version V1.0.0 * @date 5-March-2019 - * @brief This header file is intended to manage the differences between + * @brief This header file is intended to manage the differences between * the different supported base-boards which might mount the * X_NUCLEO_IKS01A3 MEMS Inertial & Environmental Nucleo Expansion Board. ****************************************************************************** @@ -35,7 +35,7 @@ * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * ****************************************************************************** - */ + */ /* Define to prevent from recursive inclusion --------------------------------*/ #ifndef _X_NUCLEO_IKS01A3_TARGETS_H_