ConOpSys V2970  P004.07
ANVILEX control operating system
DIO_P014_51_CB.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file DIO_P014_51_CB.h
3 //! @brief STM32F410CBU6 digital I/O class header file.
4 //! @copyright ANVILEX LLC
5 //! @attention No special attention requered.
6 //! $HeadURL: https://192.168.3.4:8443/svn/P004_07/ConOpSys/Hardware/P014_51_CB/SPI1_P014_51_CB.h $
7 //! $Revision: 2203 $
8 //! $Date: 2020-11-21 14:58:09 +0500 (Sa, 21 Nov 2020) $
9 //! $Author: minch $
10 //
11 // Copyright(C) 2015-2021 ANVILEX LLC
12 //
13 // Redistribution and use in source and binary forms, with or without
14 // modification, are permitted provided that the following conditions are met:
15 //
16 // 1. Redistributions of source code must retain the above copyright notice,
17 // this list of conditions and the following disclaimer.
18 //
19 // 2. Redistributions in binary form must reproduce the above copyright notice,
20 // this list of conditions and the following disclaimer in the documentation
21 // and/or other materials provided with the distribution.
22 //
23 // 3. Neither the name of ANVILEX nor the names of its contributors may be
24 // used to endorse or promote products derived from this software without
25 // specific prior written permission.
26 //
27 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
28 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
29 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
30 // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
31 // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
32 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
33 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
34 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
35 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
36 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
37 // POSSIBILITY OF SUCH DAMAGE.
38 //
39 //------------------------------------------------------------------------------
40 
41 #pragma once
42 
43 //------------------------------------------------------------------------------
44 // Include project files
45 //------------------------------------------------------------------------------
46 
47 #include "DIO_STM32F429.h"
48 
49 //------------------------------------------------------------------------------
50 // Class declarations
51 //------------------------------------------------------------------------------
52 
53 //! @brief On chip digital I/O class
55 {
56 
57  //----------------------------------------------------------------------------
58  // Public defines, methods and variables
59  //----------------------------------------------------------------------------
60 
61  public:
62 
63  //--------------------------------------------------------------------------
64  // Public methods
65  //--------------------------------------------------------------------------
66 
67  //!-------------------------------------------------------------------------
68  //! @brief Class constructor method
69  //! @note None
70  //! \par Override
71  //! Not allowed
72  //! @attention Don't call this method directly.
73  //--------------------------------------------------------------------------
74 
76 
77  //!-------------------------------------------------------------------------
78  //! @brief Class destructor method
79  //! @note None
80  //! \par Override
81  //! Not allowed
82  //! @attention Don't call this method directly.
83  //--------------------------------------------------------------------------
84 
85  virtual ~TDIO_P014_51_CB();
86 
87  //!-------------------------------------------------------------------------
88  //! @brief PIO initialisation method
89  //! @note None
90  //! @return None
91  //! \par Override
92  //! Not allowed
93  //! @attention None
94  //--------------------------------------------------------------------------
95 
96  virtual VOID PIO_Init();
97 
98  //!-------------------------------------------------------------------------
99  //! @brief PIO reinitialisation as GPIO method
100  //! @note None
101  //! @return None
102  //! \par Override
103  //! Not allowed
104  //! @attention None
105  //--------------------------------------------------------------------------
106 
107  virtual VOID PIO_Done();
108 
109  //!-------------------------------------------------------------------------
110  //! @brief Get digital input status method
111  //! @note None
112  //! @param [in] u8_Index - Digital input index
113  //! @param [out] *bool_Status - Digital input status
114  //! @return BOOL - Execution status
115  //! @retval false - Digital input not found
116  //! @retval true - Success
117  //! \par Override
118  //! Not allowed
119  //! @attention None
120  //--------------------------------------------------------------------------
121 
122  BOOL Get_Input( U8 u8_Index, BOOL *bool_Status );
123 
124  //!-------------------------------------------------------------------------
125  //! @brief Set digital output method
126  //! @note None
127  //! @param [in] u8_Index - Digital output index
128  //! @param [in] bool_Status - Digital output status to set
129  //! @return BOOL - Execution status
130  //! @retval false - Digital output not found
131  //! @retval true - Success
132  //! \par Override
133  //! Not allowed
134  //! @attention None
135  //--------------------------------------------------------------------------
136 
137  BOOL Set_Output( U8 u8_Index, BOOL bool_Status );
138 
139  //----------------------------------------------------------------------------
140  // Protected defines, methods and variables
141  //----------------------------------------------------------------------------
142 
143  protected:
144 
145  //----------------------------------------------------------------------------
146  // Private defines, methods and variables
147  //----------------------------------------------------------------------------
148 
149  private:
150 
151 };
152 
153 //------------------------------------------------------------------------------
154 // End of file
155 //------------------------------------------------------------------------------
STM32F429 digital I/O class header file.
int BOOL
Boolean datatype definition.
Definition: Defines.h:124
unsigned char U8
Binary 8-Bit unsigned integer datatype defenition.
Definition: Defines.h:183
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
On chip digital I/O class.
Definition: DIO_P014_51_CB.h:55
BOOL Set_Output(U8 u8_Index, BOOL bool_Status)
Set digital output method.
Definition: DIO_P014_51_CB.cpp:427
virtual VOID PIO_Init()
PIO initialisation method.
Definition: DIO_P014_51_CB.cpp:87
BOOL Get_Input(U8 u8_Index, BOOL *bool_Status)
Get digital input status method.
Definition: DIO_P014_51_CB.cpp:175
virtual VOID PIO_Done()
PIO reinitialisation as GPIO method.
Definition: DIO_P014_51_CB.cpp:128
virtual ~TDIO_P014_51_CB()
Class destructor method.
Definition: DIO_P014_51_CB.cpp:79
TDIO_P014_51_CB()
Class constructor method.
Definition: DIO_P014_51_CB.cpp:71
On chip digital I/O class.
Definition: DIO_STM32F429.h:53