Finished project.

Dependencies:   X_NUCLEO_COMMON

Fork of ReferredCoursework2016 by Stage-1 Students SoCEM

Revision:
54:2a676c734b30
Parent:
52:54553fd15b50
Child:
57:04563dd74269
--- a/Components/lsm6ds3/lsm6ds3_class.h	Wed Jun 10 16:44:54 2015 +0200
+++ b/Components/lsm6ds3/lsm6ds3_class.h	Wed Jun 10 18:03:42 2015 +0200
@@ -51,7 +51,8 @@
 class LSM6DS3 : public GyroSensor, public MotionSensor {
  public:
 	/** Constructor
-	 * @param i2c device I2C to be used for communication
+	 * @param[in] i2c device I2C to be used for communication
+	 * @param[in] irq_pin pin name for free fall detection interrupt
 	 */
         LSM6DS3(DevI2C &i2c, PinName irq_pin) : GyroSensor(), MotionSensor(), 
 		dev_i2c(i2c), free_fall(irq_pin) {
@@ -127,21 +128,35 @@
 	}
 
 	/* Additional Public Methods */
+	/**
+	 * @brief  Enable free fall detection
+	 * @return IMU_6AXES_OK in case of success, an error code otherwise
+	 */
 	IMU_6AXES_StatusTypeDef Enable_Free_Fall_Detection(void) {
 		return LSM6DS3_Enable_Free_Fall_Detection();
 	}
 
+	/**
+	 * @brief  Disable free fall detection
+	 * @return IMU_6AXES_OK in case of success, an error code otherwise
+	 */
 	IMU_6AXES_StatusTypeDef Disable_Free_Fall_Detection(void) {
 		return LSM6DS3_Disable_Free_Fall_Detection();
 	}
 
+	/**
+	 * @brief       Get status of free fall detection
+	 * @param[out]  status the pointer where the status of free fall detection is stored; 
+	 *              0 means no detection, 1 means detection happened
+	 * @return      IMU_6AXES_OK in case of success, an error code otherwise
+	 */
 	IMU_6AXES_StatusTypeDef Get_Status_Free_Fall_Detection(uint8_t *status) {
 		return LSM6DS3_Get_Status_Free_Fall_Detection(status);
 	}
 	
 	/** Attach a function to call when a free fall is detected
 	 *
-	 *  @param fptr A pointer to a void function, or 0 to set as none
+	 *  @param[in] fptr A pointer to a void function, or 0 to set as none
 	 */
 	void Attach_Free_Fall_Detection_IRQ(void (*fptr)(void)) {
 		free_fall.mode(PullNone); /* be precise about pin mode */
@@ -188,8 +203,6 @@
 
 	/**
 	 * @brief  Configures LSM6DS3 interrupt lines for NUCLEO boards
-	 * @param  None
-	 * @retval None
 	 */
 	void LSM6DS3_IO_ITConfig(void)
 	{
@@ -198,7 +211,6 @@
 
 	/**
 	 * @brief  Configures LSM6DS3 I2C interface
-	 * @param  None
 	 * @retval IMU_6AXES_OK in case of success, an error code otherwise
 	 */
 	IMU_6AXES_StatusTypeDef LSM6DS3_IO_Init(void)
@@ -207,11 +219,12 @@
 	}
 
 	/**
-	 * @brief utility function to read data from STC3115
-	 * @param  pBuffer: pointer to data to be read.
-	 * @param  RegisterAddr: specifies internal address register to read from.
-	 * @param  NumByteToRead: number of bytes to be read.
-	 * @retval IMU_6AXES_OK if ok, IMU_6AXES_ERROR if an I2C error has occured
+	 * @brief  Utility function to read data from LSM6DS3
+	 * @param  pBuffer pointer to the byte-array to read data in to
+	 * @param  RegisterAddr specifies internal address register to read from.
+	 * @param  NumByteToRead number of bytes to be read.
+	 * @retval IMU_6AXES_OK if ok, 
+	 * @retval IMU_6AXES_ERROR if an I2C error has occured
 	 */
 	IMU_6AXES_StatusTypeDef LSM6DS3_IO_Read(uint8_t* pBuffer, 
 					      uint8_t RegisterAddr, uint16_t NumByteToRead)
@@ -227,11 +240,12 @@
 	}
 	
 	/**
-	 * @brief utility function to write data to STC3115
-	 * @param  pBuffer: pointer to buffer to be filled.
-	 * @param  RegisterAddr: specifies internal address register to read from.
-	 * @param  NumByteToWrite: number of bytes to write.
-	 * @retval 0 if ok, -1 if an I2C error has occured
+	 * @brief  Utility function to write data to LSM6DS3
+	 * @param  pBuffer pointer to the byte-array data to send
+	 * @param  RegisterAddr specifies internal address register to read from.
+	 * @param  NumByteToWrite number of bytes to write.
+	 * @retval IMU_6AXES_OK if ok, 
+	 * @retval IMU_6AXES_ERROR if an I2C error has occured
 	 */
 	IMU_6AXES_StatusTypeDef LSM6DS3_IO_Write(uint8_t* pBuffer, 
 					       uint8_t RegisterAddr, uint16_t NumByteToWrite)