Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: ST_INTERFACES X_NUCLEO_COMMON
Fork of X_NUCLEO_IHM01A1 by
Diff: Components/Interfaces/Motor_class.h
- Revision:
- 4:83a1eb397a65
- Parent:
- 1:b38ebb8ea286
- Child:
- 5:d3c78f12a78d
diff -r b38ebb8ea286 -r 83a1eb397a65 Components/Interfaces/Motor_class.h
--- a/Components/Interfaces/Motor_class.h Fri Oct 16 13:30:06 2015 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,121 +0,0 @@
-/**
- ******************************************************************************
- * @file Motor_class.h
- * @author AST / EST
- * @version V0.0.1
- * @date 13-April-2015
- * @brief This file contains the abstract class describing the interface of a
- * motor component.
- ******************************************************************************
- * @attention
- *
- * <h2><center>© COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
- *
- * Redistribution and use in source and binary forms, with or without modification,
- * are permitted provided that the following conditions are met:
- * 1. Redistributions of source code must retain the above copyright notice,
- * this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright notice,
- * this list of conditions and the following disclaimer in the documentation
- * and/or other materials provided with the distribution.
- * 3. Neither the name of STMicroelectronics nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
- * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- *
- ******************************************************************************
- */
-
-
-/* Generated with Stm32CubeTOO -----------------------------------------------*/
-
-
-/* Revision ------------------------------------------------------------------*/
-/*
- Repository: http://svn.x-nucleodev.codex.cro.st.com/svnroot/X-NucleoDev
- Branch/Trunk/Tag: trunk
- Based on: X-CUBE-SPN1/trunk/Drivers/BSP/Components/Common/motor.h
- Revision: 0
-*/
-
-
-/* Define to prevent from recursive inclusion --------------------------------*/
-
-#ifndef __MOTOR_CLASS_H
-#define __MOTOR_CLASS_H
-
-
-/* Includes ------------------------------------------------------------------*/
-
-#include <Component_class.h>
-
-
-/* Classes ------------------------------------------------------------------*/
-
-/** An abstract class for Motor components.
- */
-class Motor : public Component
-{
-public:
- /* ACTION 1 --------------------------------------------------------------*
- * Declare here the interface's methods. *
- * They should be: *
- * + Methods with the same name of the C component's virtual table *
- * (and extended virtual table, if any)'s functions, provided that *
- * the component's driver implements them (i.e.: the corresponding *
- * pointer to function is not "0"). *
- * *
- * Example: *
- * virtual int GetValue(float *pfData) = 0; *
- *------------------------------------------------------------------------*/
- virtual uint16_t GetAcceleration(void) = 0;
- virtual uint16_t GetCurrentSpeed(void) = 0;
- virtual uint16_t GetDeceleration(void) = 0;
- virtual motorState_t GetDeviceState(void) = 0;
- virtual uint8_t GetFwVersion(void) = 0;
- virtual int32_t GetMark(void) = 0;
- virtual uint16_t GetMaxSpeed(void) = 0;
- virtual uint16_t GetMinSpeed(void) = 0;
- virtual int32_t GetPosition(void) = 0;
- virtual void GoHome(void) = 0;
- virtual void GoMark(void) = 0;
- virtual void GoTo(int32_t targetPosition) = 0;
- virtual void HardStop(void) = 0;
- virtual void Move(motorDir_t direction, uint32_t stepCount) = 0;
- virtual void Run(motorDir_t direction) = 0;
- virtual bool SetAcceleration(uint16_t newAcc) = 0;
- virtual bool SetDeceleration(uint16_t newDec) = 0;
- virtual void SetHome(void) = 0;
- virtual void SetMark(void) = 0;
- virtual bool SetMaxSpeed(uint16_t newMaxSpeed) = 0;
- virtual bool SetMinSpeed(uint16_t newMinSpeed) = 0;
- virtual bool SoftStop(void) = 0;
- virtual void StepClockHandler(void) = 0;
- virtual void WaitWhileActive(void) = 0;
- virtual void CmdDisable(void) = 0;
- virtual void CmdEnable(void) = 0;
- virtual uint32_t CmdGetParam(uint32_t param) = 0;
- virtual uint16_t CmdGetStatus(void) = 0;
- virtual void CmdNop(void) = 0;
- virtual void CmdSetParam(uint32_t param, uint32_t value) = 0;
- virtual uint16_t ReadStatusRegister(void) = 0;
- virtual void ReleaseReset(void) = 0;
- virtual void Reset(void) = 0;
- virtual void SelectStepMode(motorStepMode_t stepMod) = 0;
- virtual void SetDirection(motorDir_t direction) = 0;
- virtual void ErrorHandler(uint16_t error) = 0;
-};
-
-#endif /* __MOTOR_CLASS_H */
-
-/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
