ConOpSys V2970  P004.07
ANVILEX control operating system
STM32F411_WDT.h
Go to the documentation of this file.
1 //------------------------------------------------------------------------------
2 //! @file STM32F411_WDT.h
3 //! @author ANVILEX GmbH
4 //! @version V1.0
5 //! @date 23.02.2016
6 //! @brief STM32F411 watchdog timer class header file.
7 //! @attention
8 //!
9 //! COPYRIGHT(C) 2016-2020 ANVILEX GmbH
10 //!
11 //! Redistribution and use in source and binary forms, with or without
12 //! modification, are permitted provided that the following conditions are met:
13 //!
14 //! 1. Redistributions of source code must retain the above copyright notice,
15 //! this list of conditions and the following disclaimer.
16 //!
17 //! 2. Redistributions in binary form must reproduce the above copyright notice,
18 //! this list of conditions and the following disclaimer in the documentation
19 //! and/or other materials provided with the distribution.
20 //!
21 //! 3. Neither the name of ANVILEX nor the names of its contributors may be
22 //! used to endorse or promote products derived from this software without
23 //! specific prior written permission.
24 //!
25 //! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
26 //! AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
27 //! IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
28 //! ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
29 //! LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
30 //! CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
31 //! SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
32 //! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
33 //! CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
34 //! ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 //! POSSIBILITY OF SUCH DAMAGE.
36 //------------------------------------------------------------------------------
37 
38 //------------------------------------------------------------------------------
39 // Protecting header files from mutual, recursive inclusion.
40 //------------------------------------------------------------------------------
41 
42 #pragma once
43 
44 //------------------------------------------------------------------------------
45 // Include standard libraries header files
46 //------------------------------------------------------------------------------
47 
48 //------------------------------------------------------------------------------
49 // Include thrid party header files
50 //------------------------------------------------------------------------------
51 
52 //------------------------------------------------------------------------------
53 // Include ConOpSys header files
54 //------------------------------------------------------------------------------
55 
56 #include "Watchdog_Timer_Base.h"
57 
58 //------------------------------------------------------------------------------
59 // Include ConOpSys application header files
60 //------------------------------------------------------------------------------
61 
62 //------------------------------------------------------------------------------
63 // Macros
64 //------------------------------------------------------------------------------
65 
66 //!------------------------------------------------------------------------------
67 //! @brief System watchdog timer class
68 //------------------------------------------------------------------------------
69 
71 {
72 
73  //----------------------------------------------------------------------------
74  // Public defines, methods and variables
75  //----------------------------------------------------------------------------
76 
77  public:
78 
79  // Constructor and destructor
80  TWatchdog_Timer_STM32F411(); //!< Constructor methods
81  ~TWatchdog_Timer_STM32F411(); //!< Destructor methods
82 
83  // Initialization and finalisation
84  BOOL Set_Period( F32 f32_Period ); //!< Set watchdog timer period
85 
86  // Timer control methods
87  virtual VOID Start(); //!< Start watchdog timer counter
88  virtual VOID Stop(); //!< Stop watchdog timer counter
89  virtual VOID Reset(); //!< Reset watchdog timer counter
90 
91  //----------------------------------------------------------------------------
92  // Protected defines, methods and variables
93  //----------------------------------------------------------------------------
94 
95  protected:
96 
97  //----------------------------------------------------------------------------
98  // Private defines, methods and variables
99  //----------------------------------------------------------------------------
100 
101  private:
102 
103 };
104 
105 //------------------------------------------------------------------------------
106 // End Of File
107 //------------------------------------------------------------------------------
int BOOL
Boolean datatype definition.
Definition: Defines.h:124
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.
System watchdog timer base class.
Definition: Watchdog_Timer_Base.h:66
F32 f32_Period
Period in seconds.
Definition: Watchdog_Timer_Base.h:218
System watchdog timer class.
Definition: STM32F411_WDT.h:71
TWatchdog_Timer_STM32F411()
Constructor methods.
Definition: STM32F411_WDT.cpp:72
~TWatchdog_Timer_STM32F411()
Destructor methods.
Definition: STM32F411_WDT.cpp:80
virtual VOID Reset()
Reset watchdog timer counter.
Definition: STM32F411_WDT.cpp:153
virtual VOID Stop()
Stop watchdog timer counter.
Definition: STM32F411_WDT.cpp:145
virtual VOID Start()
Start watchdog timer counter.
Definition: STM32F411_WDT.cpp:133
BOOL Set_Period(F32 f32_Period)
Set watchdog timer period.
Definition: STM32F411_WDT.cpp:88