ConOpSys V2970  P004.07
ANVILEX control operating system
Public Member Functions | Protected Attributes | List of all members
TWatchdog_Timer_Base Class Referenceabstract

System watchdog timer base class. More...

#include <Watchdog_Timer_Base.h>

Inheritance diagram for TWatchdog_Timer_Base:
Inheritance graph
Collaboration diagram for TWatchdog_Timer_Base:
Collaboration graph

Public Member Functions

 TWatchdog_Timer_Base ()
 Class constructor method. More...
 
virtual ~TWatchdog_Timer_Base ()
 Class destructor method. More...
 
VOID Init ()
 Initialisation method description. More...
 
VOID Done ()
 Finalisation method description. More...
 
virtual BOOL Configure_Clock (U32 u32_Clock_Frequency)
 Watchdog input clock frequency configuration method. More...
 
F32 Get_Resolution ()
 Get watchdog timer counter resolution method. More...
 
BOOL Set_Period (F32 f32_Period)
 Set watchdog timer period method. More...
 
F32 Get_Period ()
 Get watchdog timer period method. More...
 
virtual VOID Start ()=0
 Start watchdog timer counter operation. More...
 
virtual VOID Stop ()=0
 Stop watchdog timer counter operation. More...
 
virtual VOID Reset ()=0
 Reset watchdog timer counter. More...
 

Protected Attributes

F32 f32_Input_Clock_Frequency
 Watchdog timer input frequency in Hz. More...
 
F32 f32_Resolution
 Watchdog timer resolution in seconds. More...
 
U32 u32_Timer_Counts
 Counts for watchdog timer register initialisation. More...
 
F32 f32_Frequency
 Frequency in Hz. More...
 
F32 f32_Period
 Period in seconds. More...
 
BOOL bool_Timer_Configured
 Timer configured flag. More...
 

Detailed Description

System watchdog timer base class.

Constructor & Destructor Documentation

◆ TWatchdog_Timer_Base()

TWatchdog_Timer_Base::TWatchdog_Timer_Base ( )

Class constructor method.


Note
None
Override
Not allowed
Attention
Don't call this method directly.

References bool_Timer_Configured, f32_Frequency, f32_Period, f32_Resolution, and u32_Timer_Counts.

◆ ~TWatchdog_Timer_Base()

TWatchdog_Timer_Base::~TWatchdog_Timer_Base ( )
virtual

Class destructor method.


Note
None
Override
Not allowed
Attention
Don't call this method directly.

Member Function Documentation

◆ Configure_Clock()

BOOL TWatchdog_Timer_Base::Configure_Clock ( U32  u32_Clock_Frequency)
virtual

Watchdog input clock frequency configuration method.


Note
This methods configured input clock frequency of the watchdog timer.
Parameters
[in]u32_Clock_Frequency- Input clock frequency in Hz
Returns
BOOL - Status
Return values
false- Configuration failed
true- Configuration successed
Override
Not allowed
Attention
None

References bool_Timer_Configured, f32_Input_Clock_Frequency, and f32_Resolution.

Referenced by TApplication_Base::Init(), and TBootloader_Base::Init().

Here is the caller graph for this function:

◆ Done()

VOID TWatchdog_Timer_Base::Done ( )

Finalisation method description.


Note
None
Returns
None
Override
Requered
Attention
None

◆ Get_Period()

F32 TWatchdog_Timer_Base::Get_Period ( )

Get watchdog timer period method.


Note
This methods returns watchdog timer period in seconds.
Returns
F32 - Watchdog timer period in seconds
Override
Not allowed
Attention
None

References f32_Period.

Referenced by TCommand_INFO::Execute().

Here is the caller graph for this function:

◆ Get_Resolution()

F32 TWatchdog_Timer_Base::Get_Resolution ( )

Get watchdog timer counter resolution method.


Note
This methods returns watchdog timer counter resolution in seconds.
Returns
F32 - Watchdog timer counter resolution in seconds
Override
Not allowed
Attention
None Get timer counter resolution in seconds

References f32_Resolution.

◆ Init()

VOID TWatchdog_Timer_Base::Init ( )

Initialisation method description.


Note
None
Returns
None
Override
Requered
Attention
None

Referenced by TApplication_Base::Init(), and TBootloader_Base::Init().

Here is the caller graph for this function:

◆ Reset()

virtual VOID TWatchdog_Timer_Base::Reset ( )
pure virtual

Reset watchdog timer counter.


Note
None
Returns
None
Override
Requered
Attention
None

Implemented in TWatchdog_Timer_STM32F7XXX, TWDT_STM32F429, TWatchdog_Timer_STM32F411, and TWDT_STM32F410CBU6.

◆ Set_Period()

BOOL TWatchdog_Timer_Base::Set_Period ( F32  f32_Period)

Set watchdog timer period method.


Note
This methods sets watchdog timer period in seconds.
Parameters
[in]f32_Period- Watchdog timer period in seconds
Returns
BOOL - Operation status
Return values
false- Operation failed
true- Operation successed
Override
Not allowed
Attention
None

References bool_Timer_Configured, f32_Frequency, f32_Input_Clock_Frequency, f32_Period, false, and u32_Timer_Counts.

◆ Start()

virtual VOID TWatchdog_Timer_Base::Start ( )
pure virtual

Start watchdog timer counter operation.


Note
None
Returns
None
Override
Requered
Attention
None

Implemented in TWatchdog_Timer_STM32F7XXX, TWDT_STM32F429, TWatchdog_Timer_STM32F411, and TWDT_STM32F410CBU6.

◆ Stop()

virtual VOID TWatchdog_Timer_Base::Stop ( )
pure virtual

Stop watchdog timer counter operation.


Note
None
Returns
None
Override
Requered
Attention
None

Implemented in TWatchdog_Timer_STM32F7XXX, TWDT_STM32F429, TWatchdog_Timer_STM32F411, and TWDT_STM32F410CBU6.

Member Data Documentation

◆ bool_Timer_Configured

BOOL TWatchdog_Timer_Base::bool_Timer_Configured
protected

Timer configured flag.

Referenced by Configure_Clock(), Set_Period(), and TWatchdog_Timer_Base().

◆ f32_Frequency

F32 TWatchdog_Timer_Base::f32_Frequency
protected

◆ f32_Input_Clock_Frequency

F32 TWatchdog_Timer_Base::f32_Input_Clock_Frequency
protected

Watchdog timer input frequency in Hz.

Referenced by Configure_Clock(), TWDT_STM32F410CBU6::Set_Period(), TWDT_STM32F429::Set_Period(), and Set_Period().

◆ f32_Period

F32 TWatchdog_Timer_Base::f32_Period
protected

◆ f32_Resolution

F32 TWatchdog_Timer_Base::f32_Resolution
protected

Watchdog timer resolution in seconds.

Referenced by Configure_Clock(), Get_Resolution(), and TWatchdog_Timer_Base().

◆ u32_Timer_Counts

U32 TWatchdog_Timer_Base::u32_Timer_Counts
protected

The documentation for this class was generated from the following files: