ConOpSys V2970  P004.07
ANVILEX control operating system
WDT_STM32F429.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file WDT_STM32F429.h
3 //! @brief STM32F429 on-chip WTD 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/STM32F429/WDT_STM32F429.h $
7 //! $Revision: 2831 $
8 //! $Date: 2021-08-01 02:23:07 +0500 (So, 01 Aug 2021) $
9 //! $Author: ggavrituhin $
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 //------------------------------------------------------------------------------
41 // Protecting header files from mutual, recursive inclusion.
42 //------------------------------------------------------------------------------
43 
44 #pragma once
45 
46 //------------------------------------------------------------------------------
47 // Include standard libraries header files
48 //------------------------------------------------------------------------------
49 
50 //------------------------------------------------------------------------------
51 // Include thrid party header files
52 //------------------------------------------------------------------------------
53 
54 //------------------------------------------------------------------------------
55 // Include ConOpSys header files
56 //------------------------------------------------------------------------------
57 
58 #include "Watchdog_Timer_Base.h"
59 
60 //------------------------------------------------------------------------------
61 // Include ConOpSys application header files
62 //------------------------------------------------------------------------------
63 
64 //------------------------------------------------------------------------------
65 // Class definitions
66 //------------------------------------------------------------------------------
67 
68 //! @brief STM32F429 on-chip WDT module class.
70 {
71 
72  //----------------------------------------------------------------------------
73  // Public defines, methods and variables
74  //----------------------------------------------------------------------------
75 
76  public:
77 
78  //--------------------------------------------------------------------------
79  // Public methods
80  //--------------------------------------------------------------------------
81 
82  //!-------------------------------------------------------------------------
83  //! @brief Set period of watchdog timer method.
84  //! @note None
85  //! @param [in] f32_New_Period - WDT period in seconds.
86  //! @return None
87  //! \par Override
88  //! Not allowed
89  //! @attention None
90  //--------------------------------------------------------------------------
91 
92  BOOL Set_Period( F32 f32_New_Period );
93 
94  //!-------------------------------------------------------------------------
95  //! @brief Start watchdog timer operation method.
96  //! @note None
97  //! @return None
98  //! \par Override
99  //! Not allowed
100  //! @attention None
101  //--------------------------------------------------------------------------
102 
103  virtual VOID Start();
104 
105  //!-------------------------------------------------------------------------
106  //! @brief Stop watchdog timer operation method.
107  //! @note None
108  //! @return None
109  //! \par Override
110  //! Not allowed
111  //! @attention None
112  //--------------------------------------------------------------------------
113 
114  virtual VOID Stop();
115 
116  //!-------------------------------------------------------------------------
117  //! @brief Reset watchdog timer counter method.
118  //! @note None
119  //! @return None
120  //! \par Override
121  //! Not allowed
122  //! @attention None
123  //--------------------------------------------------------------------------
124 
125  virtual VOID Reset();
126 
127  //!-------------------------------------------------------------------------
128  //! @brief Return maximum time for WDT reset method.
129  //! @note None
130  //! @return U64 - Maximum time for WDT reset
131  //! \par Override
132  //! Not allowed
133  //! @attention None
134  //--------------------------------------------------------------------------
135 
137 
138  //----------------------------------------------------------------------------
139  // Protected defines, methods and variables
140  //----------------------------------------------------------------------------
141 
142  protected:
143 
144  //----------------------------------------------------------------------------
145  // Private defines, methods and variables
146  //----------------------------------------------------------------------------
147 
148  private:
149 
150  //! @bref previous time stamp for reset time
152 
153  //! @bref Maximum time for WDT reset
155 
156 };
157 
158 //------------------------------------------------------------------------------
159 // End of file
160 //------------------------------------------------------------------------------
int BOOL
Boolean datatype definition.
Definition: Defines.h:124
unsigned long long U64
Binary 64-Bit unsigned integer datatype defenition.
Definition: Defines.h:213
void VOID
Datatypesess datatype definition.
Definition: Defines.h:105
float F32
IEEE-754 32-Bit single presession floating point numbers datatype defenition.
Definition: Defines.h:324
Watchdog timer base class header file.
STM32F429 on-chip WDT module class.
Definition: WDT_STM32F429.h:70
virtual VOID Reset()
Reset watchdog timer counter method.
Definition: WDT_STM32F429.cpp:148
U64 u64_Previous_Time_Stamp
@bref previous time stamp for reset time
Definition: WDT_STM32F429.h:151
virtual VOID Stop()
Stop watchdog timer operation method.
Definition: WDT_STM32F429.cpp:137
virtual VOID Start()
Start watchdog timer operation method.
Definition: WDT_STM32F429.cpp:125
U64 Get_Max_WDT_Reset_Time()
Return maximum time for WDT reset method.
Definition: WDT_STM32F429.cpp:175
U64 u64_Max_WDT_Reset_Time
@bref Maximum time for WDT reset
Definition: WDT_STM32F429.h:154
BOOL Set_Period(F32 f32_New_Period)
Set period of watchdog timer method.
Definition: WDT_STM32F429.cpp:70
System watchdog timer base class.
Definition: Watchdog_Timer_Base.h:66