motor control
Fork of X_NUCLEO_IHM01A1 by
Diff: Components/Interfaces/StepperMotor_class.h
- Revision:
- 8:42e0b00b1e4d
- Parent:
- 7:f7e0c3621f77
- Child:
- 10:c3824af0caf4
--- a/Components/Interfaces/StepperMotor_class.h Fri Nov 20 18:00:03 2015 +0000 +++ b/Components/Interfaces/StepperMotor_class.h Mon Nov 23 11:10:54 2015 +0000 @@ -5,7 +5,7 @@ * @version V1.0.0 * @date November 12th, 2015 * @brief This file contains the abstract class describing the interface of a - * steppermotor component. + * stepper-motor component. ****************************************************************************** * @attention * @@ -63,91 +63,180 @@ } direction_t; /** - * @brief Getting the status. + * @brief Getting the status. * @param None. - * @retval None. + * @retval The status. */ virtual unsigned int GetStatus(void) = 0; - /** + /** * @brief Getting a parameter. - * @param parameter register adress. - * @retval a register value. + * @param parameter The parameter's identifier (or its register address). + * @retval The parameter's value. */ virtual unsigned int GetParameter(unsigned int parameter) = 0; - /* Return the current position. */ + /** + * @brief Getting the position. + * @param None. + * @retval The position. + */ virtual signed int GetPosition(void) = 0; - /* Return the mark position. */ + /** + * @brief Getting the marked position. + * @param None. + * @retval The marked position. + */ virtual signed int GetMark(void) = 0; - /* Return the current speed in pps. */ + /** + * @brief Getting the current speed in pps. + * @param None. + * @retval The current speed in pps. + */ virtual unsigned int GetSpeed(void) = 0; - /* Return the maximum speed in pps. */ + /** + * @brief Getting the maximum speed in pps. + * @param None. + * @retval The maximum speed in pps. + */ virtual unsigned int GetMaxSpeed(void) = 0; - /* Return the minimum speed in pps. */ + /** + * @brief Getting the minimum speed in pps. + * @param None. + * @retval The minimum speed in pps. + */ virtual unsigned int GetMinSpeed(void) = 0; - /* Return the acceleration in pps^2. */ + /** + * @brief Getting the acceleration in pps^2. + * @param None. + * @retval The acceleration in pps^2. + */ virtual unsigned int GetAcceleration(void) = 0; - /* Return the deceleration in pps^2. */ + /** + * @brief Getting the deceleration in pps^2. + * @param None. + * @retval The deceleration in pps^2. + */ virtual unsigned int GetDeceleration(void) = 0; - /* Get the current direction of rotation. */ + /** + * @brief Getting the direction of rotation. + * @param None. + * @retval The direction of rotation. + */ virtual direction_t GetDirection(void) = 0; /** * @brief Setting a parameter. - * @param parameter register adress. - * @param value value to be set. + * @param parameter The parameter's identifier (or its register address). + * @param value The parameter's value. * @retval None. */ virtual void SetParameter(unsigned int parameter, unsigned int value) = 0; - /* Set the current position to be the home position. */ + /** + * @brief Setting the current position to be the home position. + * @param None. + * @retval None. + */ virtual void SetHome(void) = 0; - /* Set the current position to be the mark position. */ + /** + * @brief Setting the current position to be the marked position. + * @param None. + * @retval None. + */ virtual void SetMark(void) = 0; - /* Set the maximum speed in pps. */ + /** + * @brief Setting the maximum speed in pps. + * @param speed The maximum speed in pps. + * @retval None. + */ virtual void SetMaxSpeed(unsigned int speed) = 0; - /* Set the minimum speed in pps. */ + /** + * @brief Setting the minimum speed in pps. + * @param speed The minimum speed in pps. + * @retval None. + */ virtual void SetMinSpeed(unsigned int speed) = 0; - /* Set the acceleration in pps^2. */ + /** + * @brief Setting the acceleration in pps^2. + * @param acceleration The acceleration in pps^2. + * @retval None. + */ virtual void SetAcceleration(unsigned int acceleration) = 0; - /* Set the deceleration in pps^2. */ + /** + * @brief Setting the deceleration in pps^2. + * @param deceleration The deceleration in pps^2. + * @retval None. + */ virtual void SetDeceleration(unsigned int deceleration) = 0; - /* Go to the specified position. */ + /** + * @brief Going to a specified position. + * @param position The desired position. + * @retval None. + */ virtual void GoTo(signed int position) = 0; - /* Go to the home position. */ + /** + * @brief Going to the home position. + * @param None. + * @retval None. + */ virtual void GoHome(void) = 0; - /* Go to the marked position. */ + /** + * @brief Going to the marked position. + * @param None. + * @retval None. + */ virtual void GoMark(void) = 0; - /* Run the motor towards a specified direction. */ + /** + * @brief Running the motor towards a specified direction. + * @param direction The direction of rotation. + * @retval None. + */ virtual void Run(direction_t direction) = 0; - /* Run the motor towards a specified direction for a specified number of steps. */ + /** + * @brief Moving the motor towards a specified direction for a certain number of steps. + * @param direction The direction of rotation. + * @param steps The desired number of steps. + * @retval None. + */ virtual void Move(direction_t direction, unsigned int steps) = 0; - /* Stop the motor. */ + /** + * @brief Stopping the motor. + * @param None. + * @retval None. + */ virtual void SoftStop(void) = 0; - /* Stop the motor and disable the power bridge. */ + /** + * @brief Stopping the motor and disabling the power bridge. + * @param None. + * @retval None. + */ virtual void HardStop(void) = 0; - /* Wait while the motor is active. */ + /** + * @brief Waiting while the motor is active. + * @param None. + * @retval None. + */ virtual void WaitWhileActive(void) = 0; };