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

Communication data link class. More...

#include <Communication_Link.h>

Inheritance diagram for TCommunication_Link:
Inheritance graph
Collaboration diagram for TCommunication_Link:
Collaboration graph

Public Member Functions

 TCommunication_Link ()
 Class constructor method. More...
 
 ~TCommunication_Link ()
 Class destructor method. More...
 
VOID Init ()
 Initialisation method. More...
 
VOID Done ()
 Finalisation method. More...
 
virtual VOID PIO_Init ()=0
 PIO initialisation method. More...
 
virtual VOID PIO_Done ()=0
 PIO reinitialisation as GPIO method. More...
 
VOID Start ()
 Start operation method. More...
 
VOID Stop ()
 Stop operation method. More...
 
VOID Interrupt_Enable (U32 u32_Priority)
 Interrupt enabale method. More...
 
VOID Interrupt_Disable ()
 Interrupt disable method. More...
 
VOID Interrupt ()
 Data receive and data transmitted interrupt service method. More...
 
VOID RX_Interrupt ()
 Data receive interrupt service method. More...
 
VOID TX_Interrupt ()
 Data transmitted interrupt service method. More...
 
VOID Log_Recieved_Byte_Count ()
 Log recieved byte count. More...
 
VOID Log_Empty_Data_Error ()
 Log empty data error. No data received but interrupt was generated. More...
 
VOID Log_Frame_Error ()
 Log frame error. More...
 
VOID Log_Overrun_Error ()
 Log buffer overrun error. More...
 
VOID Log_Parity_Error ()
 Log parity error. More...
 
VOID Log_Noise_Error ()
 Log noise error. More...
 
U64 Get_Empty_Data_Error_Count ()
 Get rec empty data error count. More...
 
U64 Get_Recieved_Byte_Count ()
 Get recieved byte count. More...
 
U64 Get_Frame_Error_Count ()
 Get frame error count. More...
 
U64 Get_Overrun_Error_Count ()
 Get buffer overrun error count. More...
 
U64 Get_Parity_Error_Count ()
 Get parity error count. More...
 
U64 Get_Noise_Error_Count ()
 Get noise error count. More...
 
virtual VOID Execute_1ms ()
 1 ms cyclic execution method More...
 
virtual VOID Execute ()
 Background cyclic execution method. More...
 

Protected Member Functions

virtual VOID Set_Transmit_Mode ()
 Set transmit mode method. More...
 
virtual VOID Set_Receive_Mode ()
 Set receive mode method. More...
 

Protected Attributes

TExecution_Profile object_Execution_Profile
 Execution profile object. More...
 

Private Attributes

U64 u64_Recieved_Byte_Counter = (U64)0
 Recieved byte counter. More...
 
U64 u64_Empty_Data_Error_Counter = (U64)0
 Empty data error counter. More...
 
U64 u64_Frame_Error_Counter = (U64)0
 Frame error counter. More...
 
U64 u64_Overrun_Error_Counter = (U64)0
 Buffer overrun error counter. More...
 
U64 u64_Parity_Error_Counter = (U64)0
 Parity error counter. More...
 
U64 u64_Noise_Error_Counter = (U64)0
 Noise error counter. More...
 

Detailed Description

Communication data link class.

Constructor & Destructor Documentation

◆ TCommunication_Link()

TCommunication_Link::TCommunication_Link ( )

Class constructor method.


Note
None
Override
Not allowed
Attention
Don't call this method directly.
UML diagram
dot_TCommunication_Link__TCommunication_Link.png

◆ ~TCommunication_Link()

TCommunication_Link::~TCommunication_Link ( )

Class destructor method.


Note
None
Override
Not allowed
Attention
Don't call this method directly.
UML diagram
dot_TCommunication_Link___TCommunication_Link.png

Member Function Documentation

◆ Done()

VOID TCommunication_Link::Done ( )

Finalisation method.


Note
None
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__Done.png

◆ Execute()

VOID TCommunication_Link::Execute ( )
virtual

Background cyclic execution method.


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Execute.png

Reimplemented from TCommunication_Data_Link.

References TCommunication_Data_Link::Execute(), NULL, and TCommunication_Data_Link::object_Data_Link.

Here is the call graph for this function:

◆ Execute_1ms()

VOID TCommunication_Link::Execute_1ms ( )
virtual

1 ms cyclic execution method


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Execute_1ms.png

Reimplemented from TCommunication_Data_Link.

References TCommunication_Data_Link::Execute_1ms(), NULL, and TCommunication_Data_Link::object_Data_Link.

Here is the call graph for this function:

◆ Get_Empty_Data_Error_Count()

U64 TCommunication_Link::Get_Empty_Data_Error_Count ( )

Get rec empty data error count.


Note
None
Returns
U64 - Empty data error count
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Get_Empty_Data_Error_Count.png

References u64_Empty_Data_Error_Counter.

◆ Get_Frame_Error_Count()

U64 TCommunication_Link::Get_Frame_Error_Count ( )

Get frame error count.


Note
None
Returns
U64 - Frame error count
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Get_Frame_Error_Count.png

References u64_Frame_Error_Counter.

◆ Get_Noise_Error_Count()

U64 TCommunication_Link::Get_Noise_Error_Count ( )

Get noise error count.


Note
None
Returns
U64 - Noise error count
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Get_Noise_Error_Count.png

References u64_Noise_Error_Counter.

◆ Get_Overrun_Error_Count()

U64 TCommunication_Link::Get_Overrun_Error_Count ( )

Get buffer overrun error count.


Note
None
Returns
U64 - Buffer overrun error count
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Get_Overrun_Error_Count.png

References u64_Overrun_Error_Counter.

◆ Get_Parity_Error_Count()

U64 TCommunication_Link::Get_Parity_Error_Count ( )

Get parity error count.


Note
None
Returns
U64 - Parity error count
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Get_Parity_Error_Count.png

References u64_Parity_Error_Counter.

◆ Get_Recieved_Byte_Count()

U64 TCommunication_Link::Get_Recieved_Byte_Count ( )

Get recieved byte count.


Note
None
Returns
U64 - Recieved byte count
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Get_Recieved_Byte_Count.png

References u64_Recieved_Byte_Counter.

◆ Init()

VOID TCommunication_Link::Init ( )

Initialisation method.


Note
None
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__Init.png

Referenced by TCOM0::Init(), TUART1_STM32F410CBU6::Init(), TUART6_STM32F410CBU6::Init(), TETHERNET_STM32F429::Init(), TUART1_STM32F429::Init(), TUART6_STM32F429::Init(), and TUART7_STM32F429::Init().

Here is the caller graph for this function:

◆ Interrupt()

VOID TCommunication_Link::Interrupt ( )

Data receive and data transmitted interrupt service method.


Note
None
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__Interrupt.png

◆ Interrupt_Disable()

VOID TCommunication_Link::Interrupt_Disable ( )

Interrupt disable method.


Note
None
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__Interrupt_Disable.png

◆ Interrupt_Enable()

VOID TCommunication_Link::Interrupt_Enable ( U32  u32_Priority)

Interrupt enabale method.


Note
None
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__Interrupt_Enable.png

◆ Log_Empty_Data_Error()

VOID TCommunication_Link::Log_Empty_Data_Error ( )

Log empty data error. No data received but interrupt was generated.


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Log_Empty_Data_Error.png

References Increment_Saturated(), and u64_Empty_Data_Error_Counter.

Here is the call graph for this function:

◆ Log_Frame_Error()

VOID TCommunication_Link::Log_Frame_Error ( )

Log frame error.


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Log_Frame_Error.png

References Increment_Saturated(), and u64_Frame_Error_Counter.

Referenced by TUART1_STM32F410CBU6::Interrupt(), TUART6_STM32F410CBU6::Interrupt(), TUART1_STM32F429::Interrupt(), TUART6_STM32F429::Interrupt(), and TUART7_STM32F429::Interrupt().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Log_Noise_Error()

VOID TCommunication_Link::Log_Noise_Error ( )

Log noise error.


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Log_Noise_Error.png

References Increment_Saturated(), and u64_Noise_Error_Counter.

Referenced by TUART1_STM32F410CBU6::Interrupt(), TUART6_STM32F410CBU6::Interrupt(), TUART1_STM32F429::Interrupt(), TUART6_STM32F429::Interrupt(), and TUART7_STM32F429::Interrupt().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Log_Overrun_Error()

VOID TCommunication_Link::Log_Overrun_Error ( )

Log buffer overrun error.


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Log_Overrun_Error.png

References Increment_Saturated(), and u64_Overrun_Error_Counter.

Here is the call graph for this function:

◆ Log_Parity_Error()

VOID TCommunication_Link::Log_Parity_Error ( )

Log parity error.


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Log_Parity_Error.png

References Increment_Saturated(), and u64_Parity_Error_Counter.

Referenced by TUART1_STM32F410CBU6::Interrupt(), TUART6_STM32F410CBU6::Interrupt(), TUART1_STM32F429::Interrupt(), TUART6_STM32F429::Interrupt(), and TUART7_STM32F429::Interrupt().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Log_Recieved_Byte_Count()

VOID TCommunication_Link::Log_Recieved_Byte_Count ( )

Log recieved byte count.


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__Log_Recieved_Byte_Count.png

References Increment_Saturated(), and u64_Recieved_Byte_Counter.

Referenced by TUART1_STM32F410CBU6::Interrupt(), TUART6_STM32F410CBU6::Interrupt(), TUART1_STM32F429::Interrupt(), TUART6_STM32F429::Interrupt(), and TUART7_STM32F429::Interrupt().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ PIO_Done()

virtual VOID TCommunication_Link::PIO_Done ( )
pure virtual

◆ PIO_Init()

virtual VOID TCommunication_Link::PIO_Init ( )
pure virtual

◆ RX_Interrupt()

VOID TCommunication_Link::RX_Interrupt ( )

Data receive interrupt service method.


Note
None
Returns
None
Override
Not allowed
Attention
None
UML diagram
dot_TCommunication_Link__RX_Interrupt.png

◆ Set_Receive_Mode()

VOID TCommunication_Link::Set_Receive_Mode ( )
protectedvirtual

Set receive mode method.


Note
None
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__Set_Receive_Mode.png
Todo:
ANVILEX KM: WARNING!!! If UART not overrides this method, calling this method caused endless loop.

Reimplemented in TUART7_P017_39_KG3_CB, TUART6_P017_39_KG3_CB, TUART6_P016_05_PUC2, and TUART6_P015_09_CB.

Referenced by TUART1_STM32F410CBU6::Init(), TUART6_STM32F410CBU6::Init(), TUART1_STM32F429::Init(), TUART6_STM32F429::Init(), TUART7_STM32F429::Init(), TUART1_STM32F410CBU6::Interrupt(), TUART6_STM32F410CBU6::Interrupt(), TUART1_STM32F429::Interrupt(), TUART6_STM32F429::Interrupt(), and TUART7_STM32F429::Interrupt().

Here is the caller graph for this function:

◆ Set_Transmit_Mode()

VOID TCommunication_Link::Set_Transmit_Mode ( )
protectedvirtual

◆ Start()

VOID TCommunication_Link::Start ( )

Start operation method.


Note
Starts operation of the communication link
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__Start.png

◆ Stop()

VOID TCommunication_Link::Stop ( )

Stop operation method.


Note
Stops operation of the communication link
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__Stop.png

◆ TX_Interrupt()

VOID TCommunication_Link::TX_Interrupt ( )

Data transmitted interrupt service method.


Note
None
Returns
None
Override
Requered
Attention
None
UML diagram
dot_TCommunication_Link__TX_Interrupt.png

Member Data Documentation

◆ object_Execution_Profile

TExecution_Profile TCommunication_Link::object_Execution_Profile
protected

Execution profile object.

◆ u64_Empty_Data_Error_Counter

U64 TCommunication_Link::u64_Empty_Data_Error_Counter = (U64)0
private

Empty data error counter.

Referenced by Get_Empty_Data_Error_Count(), and Log_Empty_Data_Error().

◆ u64_Frame_Error_Counter

U64 TCommunication_Link::u64_Frame_Error_Counter = (U64)0
private

Frame error counter.

Referenced by Get_Frame_Error_Count(), and Log_Frame_Error().

◆ u64_Noise_Error_Counter

U64 TCommunication_Link::u64_Noise_Error_Counter = (U64)0
private

Noise error counter.

Referenced by Get_Noise_Error_Count(), and Log_Noise_Error().

◆ u64_Overrun_Error_Counter

U64 TCommunication_Link::u64_Overrun_Error_Counter = (U64)0
private

Buffer overrun error counter.

Referenced by Get_Overrun_Error_Count(), and Log_Overrun_Error().

◆ u64_Parity_Error_Counter

U64 TCommunication_Link::u64_Parity_Error_Counter = (U64)0
private

Parity error counter.

Referenced by Get_Parity_Error_Count(), and Log_Parity_Error().

◆ u64_Recieved_Byte_Counter

U64 TCommunication_Link::u64_Recieved_Byte_Counter = (U64)0
private

Recieved byte counter.

Referenced by Get_Recieved_Byte_Count(), and Log_Recieved_Byte_Count().


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