ConOpSys V2970  P004.07
ANVILEX control operating system
NVIC_STM32F410CBU6.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file NVIC_STM32F410CBU6.h
3 //! @brief STM32F410CBU6 on-chip NVIC module class header file.
4 //! @attention No special attention requered.
5 //! @copyright (C) 2015-2020 ANVILEX LLC
6 //! $HeadURL: https://192.168.3.4:8443/svn/P004_07/ConOpSys/Targets/STM32F410CBU6/NVIC_STM32F410CBU6.h $
7 //! $Revision: 2279 $
8 //! $Date: 2020-12-12 15:14:34 +0500 (Sa, 12 Dez 2020) $
9 //! $Author: minch $
10 //------------------------------------------------------------------------------
11 //
12 // Redistribution and use in source and binary forms, with or without
13 // modification, are permitted provided that the following conditions are met:
14 //
15 // 1. Redistributions of source code must retain the above copyright notice,
16 // this list of conditions and the following disclaimer.
17 //
18 // 2. Redistributions in binary form must reproduce the above copyright notice,
19 // this list of conditions and the following disclaimer in the documentation
20 // and/or other materials provided with the distribution.
21 //
22 // 3. Neither the name of ANVILEX nor the names of its contributors may be
23 // used to endorse or promote products derived from this software without
24 // specific prior written permission.
25 //
26 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
27 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
29 // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
30 // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
31 // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
32 // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
33 // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
34 // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
35 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
36 // POSSIBILITY OF SUCH DAMAGE.
37 //
38 //------------------------------------------------------------------------------
39 
40 #pragma once
41 
42 //------------------------------------------------------------------------------
43 // Include header files
44 //------------------------------------------------------------------------------
45 
46 #include "Defines.h"
47 
48 //------------------------------------------------------------------------------
49 // Class
50 //------------------------------------------------------------------------------
51 
53 {
54 
55  //----------------------------------------------------------------------------
56  // Public defines, methods and variables
57  //----------------------------------------------------------------------------
58 
59  public:
60 
61  //!-------------------------------------------------------------------------
62  //! @brief Class constructor method.
63  //! @note None
64  //! \par Override
65  //! Not allowed
66  //! @attention Don't call this method directly.
67  //--------------------------------------------------------------------------
68 
70 
71  //!-------------------------------------------------------------------------
72  //! @brief Class destructor method.
73  //! @note None
74  //! \par Override
75  //! Not allowed
76  //! @attention Don't call this method directly.
77  //--------------------------------------------------------------------------
78 
80 
81  //!-------------------------------------------------------------------------
82  //! @brief NVIC initialisation method.
83  //! @note None
84  //! @return None
85  //! \par Override
86  //! Not allowed
87  //! @attention None
88  //--------------------------------------------------------------------------
89 
90  VOID Init();
91 
92  //!-------------------------------------------------------------------------
93  //! @brief NVIC finalisation method.
94  //! @note None
95  //! @return None
96  //! \par Override
97  //! Not allowed
98  //! @attention None
99  //--------------------------------------------------------------------------
100 
101  VOID Done();
102 
103  //!-------------------------------------------------------------------------
104  //! @brief Enable global interrupts method.
105  //! @note None
106  //! @return None
107  //! \par Override
108  //! Not allowed
109  //! @attention None
110  //--------------------------------------------------------------------------
111 
112  VOID Enable_Interrupt(); //!< Enable interrupt method
113 
114  //!-------------------------------------------------------------------------
115  //! @brief Disable global interrupts method.
116  //! @note None
117  //! @return None
118  //! \par Override
119  //! Not allowed
120  //! @attention None
121  //--------------------------------------------------------------------------
122 
124 
125  //----------------------------------------------------------------------------
126  // Protected defines, methods and variables
127  //----------------------------------------------------------------------------
128 
129  protected:
130 
131  //----------------------------------------------------------------------------
132  // Private defines, methods and variables
133  //----------------------------------------------------------------------------
134 
135  private:
136 
137 };
138 
139 //------------------------------------------------------------------------------
140 
141 //VOID *ExceptionHandler( U32 ExceptionCode );
142 
143 extern "C" VOID Unused_Interrupt_Handler();
144 
145 extern "C" VOID NMI_Interrupt_Handler();
146 
149 extern "C" VOID Bus_Fault_Interrupt_Handler();
151 
152 extern "C" VOID SVC_Interrupt_Handler();
154 extern "C" VOID PendSV_Interrupt_Handler();
155 //extern "C" void OTG_HS_WKUP_IRQHandler();
156 //extern "C" VOID ETH_IRQHandler();
157 //extern "C" VOID PVD_IRQHandler();
158 //extern "C" VOID OTG_HS_IRQHandler();
159 //extern "C" VOID WWDG_IRQHandler();
160 
162 
163 //------------------------------------------------------------------------------
164 // End Of File
165 //------------------------------------------------------------------------------
ConOpSys data type definitions header file.
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
VOID NMI_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:85
VOID Memory_Manage_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:153
VOID Debug_Monitor_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:276
VOID SVC_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:265
VOID Bus_Fault_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:191
VOID PendSV_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:287
VOID Unused_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:74
TSystem_Interrupt_Manager object_System_Interrupt_Manager
Global interrupt manager object.
Definition: NVIC_STM32F410CBU6.cpp:68
VOID Hard_Fault_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:117
VOID Usage_Fault_Interrupt_Handler()
Definition: NVIC_STM32F410CBU6.cpp:229
System interrupt manager.
Definition: NVIC_STM32F410CBU6.h:53
VOID Disable_Interrupt()
Disable global interrupts method.
Definition: NVIC_STM32F410CBU6.cpp:432
VOID Enable_Interrupt()
Enable global interrupts method.
Definition: NVIC_STM32F410CBU6.cpp:420
~TSystem_Interrupt_Manager()
Class destructor method.
Definition: NVIC_STM32F410CBU6.cpp:359
TSystem_Interrupt_Manager()
Class constructor method.
Definition: NVIC_STM32F410CBU6.cpp:351
VOID Done()
NVIC finalisation method.
Definition: NVIC_STM32F410CBU6.cpp:409
VOID Init()
NVIC initialisation method.
Definition: NVIC_STM32F410CBU6.cpp:367