mbed library for STMicroelectronics' X-NUCLEO-IKA01A1 expansion board.
Dependents: HelloWorld_IKA01A1
Fork of X_NUCLEO_IKA01A1 by
Library for STMicroelectronics' X-NUCLEO-IKA01A1 multifunctional expansion board based on operational amplifiers.
Diff: x_nucleo_ika01a1_class.h
- Revision:
- 2:19d1dcef0c0e
- Child:
- 13:9cecc8d66cc1
diff -r 7fbcb56cc096 -r 19d1dcef0c0e x_nucleo_ika01a1_class.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/x_nucleo_ika01a1_class.h Wed Mar 02 12:58:02 2016 +0000 @@ -0,0 +1,147 @@ +/** + ****************************************************************************** + * @file x_nucleo_ika01a1_class.h + * @author AST / Software Platforms and Cloud + * @version V1.0 + * @date October 1st, 2015 + * @brief Class header file for the X_NUCLEO_IKA01A1 expansion board. + ****************************************************************************** + * @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 -----------------------------------------------*/ + + +/* Define to prevent recursive inclusion -------------------------------------*/ + +#ifndef __X_NUCLEO_IKA01A1_CLASS_H +#define __X_NUCLEO_IKA01A1_CLASS_H + + +/* Includes ------------------------------------------------------------------*/ + +/* ACTION 1 ------------------------------------------------------------------* + * Include here platform specific header files. * + *----------------------------------------------------------------------------*/ +#include "mbed.h" +/* ACTION 2 ------------------------------------------------------------------* + * Include here expansion board configuration's header files. * + *----------------------------------------------------------------------------*/ +#include "x_nucleo_ika01a1_config.h" +/* ACTION 3 ------------------------------------------------------------------* + * Include here expansion board's components' header files. * + * * + * Example: * + * #include "component_1_class.h" * + * #include "component_2_class.h" * + *----------------------------------------------------------------------------*/ +#include "tsz124_class.h" +#include "tsu104_class.h" +#include "tsv734_class.h" + + +/* Classes -------------------------------------------------------------------*/ + +/** Class representing a X_NUCLEO_IKA01A1 board. + */ +class X_NUCLEO_IKA01A1 +{ +public: + + /*** Instance, Initialization and Destructor Methods ***/ + + /** + * @brief Getting a singleton instance of X_NUCLEO_IKA01A1 class. + * @retval a singleton instance of X_NUCLEO_IKA01A1 class. + */ + static X_NUCLEO_IKA01A1 *Instance(void); + + /** + * @brief Initializing the X_NUCLEO_IKA01A1 board. + * @retval true if initialization is successful, false otherwise. + */ + bool Init(void); + + /** + * @brief Destructor. + */ + ~X_NUCLEO_IKA01A1(void) {} + + + /*** Public Expansion Board Related Attributes ***/ + + /* ACTION 4 --------------------------------------------------------------* + * Declare here a public attribute for each expansion board's component. * + * You will have to call these attributes' public methods within your * + * main program. * + * * + * Example: * + * COMPONENT_1 *component_1; * + * COMPONENT_2 *component_2; * + *------------------------------------------------------------------------*/ + TSZ124 *tsz124; + TSU104 *tsu104; + TSV734 *tsv734; + + +protected: + + /*** Protected Constructor Method ***/ + + /** + * @brief Constructor. + */ + X_NUCLEO_IKA01A1(void); + + + /*** Protected Expansion Board Related Initialization Methods ***/ + + /* ACTION 5 --------------------------------------------------------------* + * Declare here a protected initialization method for each expansion * + * board's component. * + * * + * Example: * + * bool Init_COMPONENT_1(void); * + * bool Init_COMPONENT_2(void); * + *------------------------------------------------------------------------*/ + bool Init_TSZ124(void); + bool Init_TSU104(void); + bool Init_TSV734(void); + + + /*** Component's Instance Variables ***/ + + /* Singleton instance of X_NUCLEO_IKA01A1 class. */ + static X_NUCLEO_IKA01A1 *_instance; +}; + +#endif /* __X_NUCLEO_IKA01A1_CLASS_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ \ No newline at end of file