|
FreeHIL
|
File Map:
FH_Root, Section FH_Perif, FH_DI (Digital Input)
Functions in this file, handle RFCommunication (RobotFramework Communication) for all commands related to DI (Digital Input)
More...
Go to the source code of this file.
Functions | |
| FH_ErrorInfo | FH_DI_RFCommunication (FH_RFCommunication_Message *fh_RFCommunication_Message) |
| This function is the basic function of handling RFCommunication (RobotFramework Communication) for all the Commands related to the Function DI (Digital Input) This function is called from FH_RFCommunication(). | |
| FH_ErrorInfo | FH_DI_ProcessCommand_Init (FH_RFCommunication_Message *fh_RFCommunication_Message) |
| This function handles FH_DI_Commands_Init command There are 3 main items handled in this function as following: 1 - Verifying the health of the received message 2 - Setting the addresses of the functions in FH_Functions, Section FH_DI (Digital Input) to an array of function pointer 3 - Calling the related function in FH_Functions, Section FH_DI (Digital Input) according to the first parameter of the Data in the message frame. | |
| FH_ErrorInfo | FH_DI_ProcessCommand_GetStatus (FH_RFCommunication_Message *fh_RFCommunication_Message, uint8_t *FH_DI_Data) |
| This function handles FH_DI_Commands_GetStatus command There are 3 main items handled in this function as following: 1 - Verifying the health of the received message 2 - Setting the addresses of the functions in FH_Functions, Section FH_DI (Digital Input) to an array of function pointer 3 - Calling the related function in FH_Functions, Section FH_DI (Digital Input) according to the first parameter of the Data in the message frame. | |
| FH_ErrorInfo | FH_DI_ProcessCommand_InitMULTI (FH_RFCommunication_Message *fh_RFCommunication_Message) |
| This function handles FH_DI_ProcessCommand_InitMULTI command With this function, mass initialization of up to 64 DI (Digital Input) is possible instead of just 1 DI (Digital Input) There are 3 main items handled in this function as following: 1 - Verifying the health of the received message 2 - Setting the addresses of the functions in FH_Functions, Section FH_DI (Digital Input) to an array of function pointer 3 - Calling the related function(s) in FH_Functions, Section FH_DI (Digital Input) according to the 8 first parameters of the Data in the message frame (The first 8 parameters resemble 64 bits and each bit resembles 1 DI (Digital Input) and if the bit is 1, the related DI (Digital Input) function will be called). | |
| FH_ErrorInfo | FH_DI_ProcessCommand_GetStatusMULTI (FH_RFCommunication_Message *fh_RFCommunication_Message, uint8_t *FH_DI_Data) |
| This function handles FH_DI_ProcessCommand_GetStatusMULTI command With this function, mass status get of up to 64 DI (Digital Input) is possible instead of just 1 DI (Digital Input) There are 3 main items handled in this function as following: 1 - Verifying the health of the received message 2 - Setting the addresses of the functions in FH_Functions, Section FH_DI (Digital Input) to an array of function pointer 3 - Calling the related function in FH_Functions, Section FH_DI (Digital Input) according to the 8 first parameters of the Data in the message frame (The first 8 parameters as mask resemble 64 bits and each bit resembles 1 DI (Digital Input) and if the bit is 1, the related DI (Digital Input) function will be called). | |
File Map:
FH_Root, Section FH_Perif, FH_DI (Digital Input)
Functions in this file, handle RFCommunication (RobotFramework Communication) for all commands related to DI (Digital Input)
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_DI.h.
| FH_ErrorInfo FH_DI_ProcessCommand_GetStatus | ( | FH_RFCommunication_Message * | fh_RFCommunication_Message, |
| uint8_t * | FH_DI_Data ) |
This function handles FH_DI_Commands_GetStatus command
There are 3 main items handled in this function as following:
1 - Verifying the health of the received message
2 - Setting the addresses of the functions in FH_Functions, Section FH_DI (Digital Input) to an array of function pointer
3 - Calling the related function in FH_Functions, Section FH_DI (Digital Input) according to the first parameter of the Data in the message frame.
| fh_RFCommunication_Message | The message frame set by RobotFramework |
==============================================================================
##### RobotFramework Example #####
==============================================================================
@{MessageData} = Create List ${DI01}
&{Message} = Create Dictionary DeviceAddress=${DeviceAddress_01} Function=${Function_DI} Command=${DI_Commands_GetStatus} Data=@{MessageData}
${Result} SendMessage &{Message}
Comments:
DI01 => It indicates the Digital Input 01
DeviceAddress_01 => It shall be equal to the address of the device: FH_RFCommunication_DeviceAddress
Function_DI => It is the function in the message frame
DI_Commands_GetStatus => It is the command of the function in the message frame
Definition at line 193 of file FH_DI.c.
References FH_ErrorInfo::error_code, FH_DI_MaxPeripheralNumber, FH_ERROR_OK, FH_ResetErrorInfo(), and fh_RFCommunication_Message.
Referenced by FH_DI_RFCommunication().
| FH_ErrorInfo FH_DI_ProcessCommand_GetStatusMULTI | ( | FH_RFCommunication_Message * | fh_RFCommunication_Message, |
| uint8_t * | FH_DI_MULTIData ) |
This function handles FH_DI_ProcessCommand_GetStatusMULTI command
With this function, mass status get of up to 64 DI (Digital Input) is possible instead of just 1 DI (Digital Input)
There are 3 main items handled in this function as following:
1 - Verifying the health of the received message
2 - Setting the addresses of the functions in FH_Functions, Section FH_DI (Digital Input) to an array of function pointer
3 - Calling the related function in FH_Functions, Section FH_DI (Digital Input) according to the 8 first parameters of the Data in the message frame
(The first 8 parameters as mask resemble 64 bits and each bit resembles 1 DI (Digital Input) and if the bit is 1, the related DI (Digital Input) function will be called).
| fh_RFCommunication_Message | The message frame set by RobotFramework |
| FH_DI_MULTIData | 64 bits (8 bytes) resemble 64 bits result and each bit resembles the status of 1 DI (Digital Input) as 1 or 0 of the corresponding bit in the first 8 bytes of the Data |
==============================================================================
##### RobotFramework Example #####
==============================================================================
@{MessageData} = Create List FF FF FF FF FF FF FF FF
&{Message} = Create Dictionary DeviceAddress=${DeviceAddress_01} Function=${Function_DI} Command=${DI_Commands_GetStatusMULTI} Data=@{MessageData}
${Result} SendMessage &{Message}
Comments:
FF FF FF FF FF FF FF FF => Example data as the first 8 parameters
DeviceAddress_01 => It shall be equal to the address of the device: FH_RFCommunication_DeviceAddress
Function_DI => It is the function in the message frame
DI_Commands_GetStatusMULTI => It is the command of the function in the message frame
Definition at line 304 of file FH_DI.c.
References FH_ErrorInfo::error_code, FH_DI_MaxPeripheralNumber, FH_ERROR_OK, FH_ResetErrorInfo(), and fh_RFCommunication_Message.
Referenced by FH_DI_RFCommunication().
| FH_ErrorInfo FH_DI_ProcessCommand_Init | ( | FH_RFCommunication_Message * | fh_RFCommunication_Message | ) |
This function handles FH_DI_Commands_Init command
There are 3 main items handled in this function as following:
1 - Verifying the health of the received message
2 - Setting the addresses of the functions in FH_Functions, Section FH_DI (Digital Input) to an array of function pointer
3 - Calling the related function in FH_Functions, Section FH_DI (Digital Input) according to the first parameter of the Data in the message frame.
| fh_RFCommunication_Message | The message frame set by RobotFramework |
==============================================================================
##### RobotFramework Example #####
==============================================================================
@{MessageData} = Create List ${DI01}
&{Message} = Create Dictionary DeviceAddress=${DeviceAddress_01} Function=${Function_DI} Command=${DI_Commands_Init} Data=@{MessageData}
${Result} SendMessage &{Message}
Comments:
DI01 => It indicates the Digital Input 01
DeviceAddress_01 => It shall be equal to the address of the device: FH_RFCommunication_DeviceAddress
Function_DI => It is the function in the message frame
DI_Commands_Init => It is the command of the function in the message frame
Definition at line 140 of file FH_DI.c.
References FH_ErrorInfo::error_code, FH_DI_Init_C(), FH_DI_Init_H(), FH_DI_Init_S(), FH_DI_MaxPeripheralNumber, FH_ERROR_OK, FH_ResetErrorInfo(), and fh_RFCommunication_Message.
Referenced by FH_DI_RFCommunication().
| FH_ErrorInfo FH_DI_ProcessCommand_InitMULTI | ( | FH_RFCommunication_Message * | fh_RFCommunication_Message | ) |
This function handles FH_DI_ProcessCommand_InitMULTI command
With this function, mass initialization of up to 64 DI (Digital Input) is possible instead of just 1 DI (Digital Input)
There are 3 main items handled in this function as following:
1 - Verifying the health of the received message
2 - Setting the addresses of the functions in FH_Functions, Section FH_DI (Digital Input) to an array of function pointer
3 - Calling the related function(s) in FH_Functions, Section FH_DI (Digital Input) according to the 8 first parameters of the Data in the message frame
(The first 8 parameters resemble 64 bits and each bit resembles 1 DI (Digital Input) and if the bit is 1, the related DI (Digital Input) function will be called).
| fh_RFCommunication_Message | The message frame set by RobotFramework |
==============================================================================
##### RobotFramework Example #####
==============================================================================
@{MessageData} = Create List FF FF FF FF FF FF FF FF
&{Message} = Create Dictionary DeviceAddress=${DeviceAddress_01} Function=${Function_DI} Command=${DI_Commands_InitMULTI} Data=@{MessageData}
${Result} SendMessage &{Message}
Comments:
FF FF FF FF FF FF FF FF => Example data as the first 8 parameters
DeviceAddress_01 => It shall be equal to the address of the device: FH_RFCommunication_DeviceAddress
Function_DI => It is the function in the message frame
DI_Commands_InitMULTI => It is the command of the function in the message frame
Definition at line 247 of file FH_DI.c.
References FH_ErrorInfo::error_code, FH_DI_Init_S(), FH_DI_InitMULTI_C(), FH_DI_InitMULTI_H(), FH_DI_MaxPeripheralNumber, FH_ERROR_OK, FH_ResetErrorInfo(), and fh_RFCommunication_Message.
Referenced by FH_DI_RFCommunication().
| FH_ErrorInfo FH_DI_RFCommunication | ( | FH_RFCommunication_Message * | fh_RFCommunication_Message | ) |
This function is the basic function of handling RFCommunication (RobotFramework Communication) for all the Commands related to the Function DI (Digital Input)
This function is called from FH_RFCommunication().
| fh_RFCommunication_Message | The message frame set by RobotFramework |
Definition at line 61 of file FH_DI.c.
References FH_ErrorInfo::error_code, FH_DI_Commands_GetStatus, FH_DI_Commands_GetStatusMULTI, FH_DI_Commands_Init, FH_DI_Commands_InitMULTI, FH_DI_ProcessCommand_GetStatus(), FH_DI_ProcessCommand_GetStatusMULTI(), FH_DI_ProcessCommand_Init(), FH_DI_ProcessCommand_InitMULTI(), FH_ResetErrorInfo(), FH_RFCommunication_DeviceAddress, fh_RFCommunication_Message, FH_RFCommunication_Send(), and FH_RFCommunication_SendBuf.
Referenced by FH_RFCommunication().