FIX16Mul

FIX16Mul 1:

This function multiplies two signed 16-bit fixed-point numbers. The numbers do not have to have the same resolution (number of decimal places). The resolution of the number with the higher number of decimal places is reduced before the multiplication, i.e. the decimal places of the number with the higher resolution are truncated. The result of the multiplication is a signed 16-bit fixed-point number.

FUNCTION FIX16Mul: T_FIX16

VAR_INPUT

VAR_INPUT
    multiA : T_FIX16;
    multiB : T_FIX16;
END_VAR

multiA: The first multiplier (type: T_FIX16).

multiB: The second multiplier (type: T_FIX16).

Example:

PROGRAM FIXMUL
VAR
    a, b   : T_FIX16;
    result : LREAL;
END_VAR
a := LREAL_TO_FIX16( 0.25, 8 );
b := LREAL_TO_FIX16( 10.0, 8 );

result := FIX16_TO_LREAL( FIX16Mul( a, b ) );(* The result is: 2.5 *)

Requirements

Development environment

Target platform

PLC libraries to be integrated (category group)

TwinCAT v3.1.0

PC or CX (x86, x64, ARM)

Tc2_Utilities (System)