HFCC-01 Low-Level Software (LLSW) Rel_6802_HFCC-01-RP-CSAR-CB
Loading...
Searching...
No Matches
utilHelper.h File Reference
#include <INTEGRITY.h>
Include dependency graph for utilHelper.h:
utilHelper.h Node1 utilHelper.h Node2 INTEGRITY.h Node1->Node2
This graph shows which files directly or indirectly include this file:
utilHelper.h Node1 utilHelper.h Node2 a429.c Node1->Node2 Node3 analogIn.c Node1->Node3 Node4 core.c Node1->Node4 Node5 discreteIn.c Node1->Node5 Node6 discreteOut.c Node1->Node6 Node7 modAnalogIn.c Node1->Node7 Node8 modHeartbeat.c Node1->Node8 Node9 modHsb.c Node1->Node9 Node10 modRvdt.c Node1->Node10 Node11 pwm.c Node1->Node11 Node12 rvdt.c Node1->Node12

Go to the source code of this file.

Macros

#define M_PI   (3.14159265358979323846)
#define UINT8_MAX   (255U)
#define UINT16_MAX   (65535U)
#define UINT32_MAX   (4294967295U)
#define FLOAT_TOLERANCE   1E-6
#define NSEC_(x)
#define USEC_(x)
#define MSEC_(x)
#define SEC_(x)
#define HZ_(x)
#define KHZ_(x)
#define RANGE_CHECK(val, lo, hi)
 Inclusive range check.
#define RANGE_CHECK_FLOAT(val, lo, hi)
 Inclusive range check for float values with tolerance.
#define ENDIAN_16(data)
 Swap uint16 value.
#define ENDIAN_32(data)
 Swap uint32 value.
#define BIT_POS(n)
 Unsigned integer with bit position n set (signed in assembly language).
#define READ_BIT(var, bit)
 Read a bit depending on a boolean value.
#define READ_MASK_VALUE(var, mask)
 Read a value depending on a mask value.
#define WRITE_SET_BIT(var, bit)
 Set a bit depending on a boolean value.
#define WRITE_CLEAR_BIT(var, bit)
 Clear a bit depending on a boolean value.
#define WRITE_MASK_VALUE(var, mask)
 Write a value depending on a mask value.
#define TOGGLE_BIT(var, bit)
 Toggle a bit value.

Detailed Description

Author
Ramza Anuar ramza.nosp@m..anu.nosp@m.ar@tu.nosp@m.sas..nosp@m.my

Util helper header file

Macro Definition Documentation

◆ BIT_POS

#define BIT_POS ( n)
Value:
(1UL << (n))

Unsigned integer with bit position n set (signed in assembly language).

◆ ENDIAN_16

#define ENDIAN_16 ( data)
Value:
((((data) >> 8) & 0x00FF) | (((data) << 8) & 0xFF00))

Swap uint16 value.

◆ ENDIAN_32

#define ENDIAN_32 ( data)
Value:
((((data) >> 24) & 0x000000FF) | (((data) >> 8) & 0x0000FF00) | (((data) << 8) & 0x00FF0000) | (((data) << 24) & 0xFF000000))

Swap uint32 value.

◆ FLOAT_TOLERANCE

#define FLOAT_TOLERANCE   1E-6

◆ HZ_

#define HZ_ ( x)
Value:
(SEC_(1UL) / (x))
#define SEC_(x)
Definition utilHelper.h:45

◆ KHZ_

#define KHZ_ ( x)
Value:
(HZ_((x) * 1000UL))
#define HZ_(x)
Definition utilHelper.h:46

◆ M_PI

#define M_PI   (3.14159265358979323846)

◆ MSEC_

#define MSEC_ ( x)
Value:
(USEC_(x) * 1000UL)
#define USEC_(x)
Definition utilHelper.h:43

◆ NSEC_

#define NSEC_ ( x)
Value:
(x)

◆ RANGE_CHECK

#define RANGE_CHECK ( val,
lo,
hi )
Value:
((lo) <= (val) && (val) <= (hi))

Inclusive range check.

Parameters
valshould be the value to be checked
loshould be the lower limit
hishould be the upper limit

◆ RANGE_CHECK_FLOAT

#define RANGE_CHECK_FLOAT ( val,
lo,
hi )
Value:
(((val) - (lo) > -FLOAT_TOLERANCE) && ((hi) - (val) > -FLOAT_TOLERANCE))
#define FLOAT_TOLERANCE
Definition utilHelper.h:39

Inclusive range check for float values with tolerance.

(1E-6)

Note
This macro uses a tolerance value to handle representational errors in floating-point comparisons.
Parameters
valThe value to be checked.
loThe threshold value for the lower limit.
hiThe threshold value for the upper limit.

◆ READ_BIT

#define READ_BIT ( var,
bit )
Value:
(((var) & BIT_POS(bit)) >> bit)
#define BIT_POS(n)
Unsigned integer with bit position n set (signed in assembly language).
Definition utilHelper.h:91

Read a bit depending on a boolean value.

The argument var is a variable whose value is written to as a side effect.

Parameters
varVariable to be read
bitBit number

◆ READ_MASK_VALUE

#define READ_MASK_VALUE ( var,
mask )
Value:
((var) & (mask))

Read a value depending on a mask value.

The argument var is a variable whose value is written to as a side effect.

Parameters
varVariable to be read
maskNumber to mask

◆ SEC_

#define SEC_ ( x)
Value:
(MSEC_(x) * 1000UL)
#define MSEC_(x)
Definition utilHelper.h:44

◆ TOGGLE_BIT

#define TOGGLE_BIT ( var,
bit )
Value:
((var) = ((var) ^ BIT_POS(bit)))

Toggle a bit value.

The argument var is a variable whose value is written to as a side effect.

Parameters
varVariable to be toggled
bitBit number

◆ UINT16_MAX

#define UINT16_MAX   (65535U)

◆ UINT32_MAX

#define UINT32_MAX   (4294967295U)

◆ UINT8_MAX

#define UINT8_MAX   (255U)

◆ USEC_

#define USEC_ ( x)
Value:
(NSEC_(x) * 1000UL)
#define NSEC_(x)
Definition utilHelper.h:42

◆ WRITE_CLEAR_BIT

#define WRITE_CLEAR_BIT ( var,
bit )
Value:
((var) = ((var) & ~BIT_POS(bit)))

Clear a bit depending on a boolean value.

The argument var is a variable whose value is written to as a side effect.

Parameters
varVariable to be altered
bitBit number

◆ WRITE_MASK_VALUE

#define WRITE_MASK_VALUE ( var,
mask )
Value:
((var) = ((var) | (mask)))

Write a value depending on a mask value.

The argument var is a variable whose value is written to as a side effect.

Parameters
varVariable to be altered
maskNumber to mask

◆ WRITE_SET_BIT

#define WRITE_SET_BIT ( var,
bit )
Value:
((var) = ((var) | BIT_POS(bit)))

Set a bit depending on a boolean value.

The argument var is a variable whose value is written to as a side effect.

Parameters
varVariable to be altered
bitBit number