FreeHIL
Loading...
Searching...
No Matches
FH_DO_Init_C.c File Reference

File Map:
FH_Root, Section FH_Perif, FH_DO (Digital Output), Cmd (Command), Init, Init_C (Init Call)
Functions in this file, Call the related function in FH_Functions, Section FH_DO (Digital Output) according to the first parameter of the Data in the message frame More...

#include "../../../../../../../FH_Embedded/FH_Root/FH_Perif/FH_DO/Cmd/Init/Init_C/FH_DO_Init_C.h"
#include "../../../../../../../FH_Embedded/FH_Root/FH_General/FH_GeneralFunctions/FH_GeneralFunctions.h"
#include "../../../../../../../FH_Embedded/FH_Setup/FH_DeviceAddress/FH_DeviceAddress.h"

Go to the source code of this file.

Functions

FH_ErrorInfo FH_DO_Init_C (FH_RFCommunication_Message *fh_RFCommunication_Message, FH_DO_Init_FuncPtrModel *FH_DO_Init_FuncPtr)
 This function calls the related function in FH_Functions, Section FH_DO (Digital Output) according to the first parameter of the Data in the message frame.
FH_ErrorInfo FH_DO_InitMULTI_C (FH_RFCommunication_Message *fh_RFCommunication_Message, FH_DO_Init_FuncPtrModel *FH_DO_Init_FuncPtr)
 This function calls the related function in FH_Functions, Section FH_DO (Digital Output) according to the first parameter of the Data in the message frame.

Detailed Description

File Map:
FH_Root, Section FH_Perif, FH_DO (Digital Output), Cmd (Command), Init, Init_C (Init Call)
Functions in this file, Call the related function in FH_Functions, Section FH_DO (Digital Output) according to the first parameter of the Data in the message frame

Attention
FH user could left this file intact

SPDX-License-Identifier: Apache-2.0

Copyright 2026 Vahid Hasirchi

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

For more information refer to FreeHIL.com

Definition in file FH_DO_Init_C.c.

Function Documentation

◆ FH_DO_Init_C()

FH_ErrorInfo FH_DO_Init_C ( FH_RFCommunication_Message * fh_RFCommunication_Message,
FH_DO_Init_FuncPtrModel * FH_DO_Init_FuncPtr )

This function calls the related function in FH_Functions, Section FH_DO (Digital Output) according to the first parameter of the Data in the message frame.

Parameters
fh_RFCommunication_MessageThe message frame set by RobotFramework
fH_DO_Init_FuncPtrThe array of function pointers
  ==============================================================================
                        ##### RobotFramework Example #####
  ==============================================================================
  @{MessageData} =    Create List    ${DO01}
  &{Message}     =    Create Dictionary    DeviceAddress=${DeviceAddress_01}    Function=${Function_DO}    Command=${DO_Commands_Init}    Data=@{MessageData}
  ${Result}    SendMessage    &{Message}

  Comments:

  DO01 => It indicates the Digital Output 01
  DeviceAddress_01 => It shall be equal to the address of the device: FH_RFCommunication_DeviceAddress
  Function_DO => It is the function in the message frame
  DO_Commands_Init => It is the command of the function in the message frame
Returns
FH_ErrorInfo is returned

Definition at line 68 of file FH_DO_Init_C.c.

References DO_Init_PeripheralNumber, FH_ErrorInfo::error_code, FH_DO_MaxPeripheralNumber, FH_ERROR_MessageFrame, FH_ERROR_Root, FH_ResetErrorInfo(), fh_RFCommunication_Message, and NULL_PTR.

Referenced by FH_DO_ProcessCommand_Init().

◆ FH_DO_InitMULTI_C()

FH_ErrorInfo FH_DO_InitMULTI_C ( FH_RFCommunication_Message * fh_RFCommunication_Message,
FH_DO_Init_FuncPtrModel * FH_DO_Init_FuncPtr )

This function calls the related function in FH_Functions, Section FH_DO (Digital Output) according to the first parameter of the Data in the message frame.

Parameters
fh_RFCommunication_MessageThe message frame set by RobotFramework
fH_DO_Init_FuncPtrThe array of function pointers
  ==============================================================================
                        ##### RobotFramework Example #####
  ==============================================================================
  @{MessageData} =    Create List    FF    FF    FF    FF    FF    FF    FF    FF
  &{Message}     =    Create Dictionary    DeviceAddress=${DeviceAddress_01}    Function=${Function_DO}    Command=${DO_Commands_InitMULTI}    Data=@{MessageData}
  ${Result}    SendMessage    &{Message}

  Comments:

  FF    FF    FF    FF    FF    FF    FF    FF => Example data as the first 8 parameters of the Data in the message frame utilized as mask (In this example it means all 64 digital outputs shall be initialized)
  DeviceAddress_01 => It shall be equal to the address of the device: FH_RFCommunication_DeviceAddress
  Function_DO => It is the function in the message frame
  DO_Commands_InitMULTI => It is the command of the function in the message frame
Returns
FH_ErrorInfo is returned
Warning
By default, in InitMULTI (Which is mass initialization of up to 64 DO (Digital Output)) command, 8 bytes which is 64 bits (which means 64 DO (Digital Output)) is used in the command
To use InitMULTI (Which is mass initialization of up to 64 DO (Digital Output)) command, FH_DO_MaxPeripheralNumber and FH_DO_MULTI_MaxPeripheralNumberLimit shall be set to 64

Definition at line 124 of file FH_DO_Init_C.c.

References FH_DO_MaxPeripheralNumber, FH_DO_MULTI_MaxPeripheralNumberLimit, FH_ResetErrorInfo(), fh_RFCommunication_Message, and NULL_PTR.

Referenced by FH_DO_ProcessCommand_InitMULTI().