![]() |
Energy Micro IEC60355 Library Example Project 1.0 (internal use only!) GCC-Version
Example project demonstrating POST and BIST library functions
|
The Critical Data macros provide secured handling to critical user data in BIST condition. More...
|
Data Structures | |
| struct | critical_double_struct |
| typedef for a critical floating point variable with 64 bits. More... | |
| struct | critical_float_struct |
| typedef for a critical floating point variable with 32 bits. More... | |
| struct | critical_uint64_t_struct |
| typedef for a critical unsigned integer with 64 bits. More... | |
| struct | critical_int64_t_struct |
| typedef for a critical signed integer with 64 bits. More... | |
| struct | critical_uint32_t_struct |
| typedef for a critical unsigned integer with 32 bits. More... | |
| struct | critical_int32_t_struct |
| typedef for a critical signed integer with 32 bits. More... | |
| struct | critical_uint16_t_struct |
| typedef for a critical unsigned integer with 16 bits. More... | |
| struct | critical_int16_t_struct |
| typedef for a critical signed integer with 16 bits. More... | |
| struct | critical_uint8_t_struct |
| typedef for a critical unsigned integer with 8 bits. More... | |
| struct | critical_int8_t_struct |
| typedef for a critical signed integer with 8 bits. More... | |
Defines | |
| #define | IEC60335_ClassB_CriticalDataValidate(criticalVar) ((criticalVar.data == ~(criticalVar.inverse)) ? (IEC60335_testPassed) : (IEC60335_testFailed)) |
| Macro to check critical variables. | |
| #define | IEC60335_ClassB_CriticalDataPop(criticalVar) (criticalVar.data) |
| Macro to read critical variables. | |
| #define | IEC60335_ClassB_CriticalDataPush(criticalVar, value) |
| Macro to write critical variables. | |
| #define | IEC60335_ClassB_CriticalDataInit(value) |
| Macro to initialize critical variables. | |
Typedefs | |
| typedef struct critical_double_struct | critical_double |
| typedef for a critical floating point variable with 64 bits. | |
| typedef struct critical_float_struct | critical_float |
| typedef for a critical floating point variable with 32 bits. | |
| typedef struct critical_uint64_t_struct | critical_uint64_t |
| typedef for a critical unsigned integer with 64 bits. | |
| typedef struct critical_int64_t_struct | critical_int64_t |
| typedef for a critical signed integer with 64 bits. | |
| typedef struct critical_uint32_t_struct | critical_uint32_t |
| typedef for a critical unsigned integer with 32 bits. | |
| typedef struct critical_int32_t_struct | critical_int32_t |
| typedef for a critical signed integer with 32 bits. | |
| typedef struct critical_uint16_t_struct | critical_uint16_t |
| typedef for a critical unsigned integer with 16 bits. | |
| typedef struct critical_int16_t_struct | critical_int16_t |
| typedef for a critical signed integer with 16 bits. | |
| typedef struct critical_uint8_t_struct | critical_uint8_t |
| typedef for a critical unsigned integer with 8 bits. | |
| typedef struct critical_int8_t_struct | critical_int8_t |
| typedef for a critical signed integer with 8 bits. | |
The Critical Data macros provide secured handling to critical user data in BIST condition.
critical data helps to keep data consistent and enables verification structures
for easy and save data access.
| #define IEC60335_ClassB_CriticalDataInit | ( | value | ) |
{ \
~value, value \
}
Macro to initialize critical variables.
necessary to initialize every type of critical data with start value
| value |
Definition at line 257 of file iec60335_class_b_critical_data.h.
Referenced by main().
| #define IEC60335_ClassB_CriticalDataPop | ( | criticalVar | ) | (criticalVar.data) |
Macro to read critical variables.
| criticalVar | target variable of critical type |
Definition at line 239 of file iec60335_class_b_critical_data.h.
| #define IEC60335_ClassB_CriticalDataPush | ( | criticalVar, | |
| value | |||
| ) |
{ \
criticalVar.inverse = ~value; \
criticalVar.data = value; \
}
Macro to write critical variables.
| criticalVar | target variable of critical type |
| value | new value |
Definition at line 247 of file iec60335_class_b_critical_data.h.
Referenced by main().
| #define IEC60335_ClassB_CriticalDataValidate | ( | criticalVar | ) | ((criticalVar.data == ~(criticalVar.inverse)) ? (IEC60335_testPassed) : (IEC60335_testFailed)) |
Macro to check critical variables.
| criticalVar | target variable of critical type |
Definition at line 232 of file iec60335_class_b_critical_data.h.
Referenced by main().
| typedef struct critical_double_struct critical_double |
typedef for a critical floating point variable with 64 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_float_struct critical_float |
typedef for a critical floating point variable with 32 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_int16_t_struct critical_int16_t |
typedef for a critical signed integer with 16 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_int32_t_struct critical_int32_t |
typedef for a critical signed integer with 32 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_int64_t_struct critical_int64_t |
typedef for a critical signed integer with 64 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_int8_t_struct critical_int8_t |
typedef for a critical signed integer with 8 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_uint16_t_struct critical_uint16_t |
typedef for a critical unsigned integer with 16 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_uint32_t_struct critical_uint32_t |
typedef for a critical unsigned integer with 32 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_uint64_t_struct critical_uint64_t |
typedef for a critical unsigned integer with 64 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)
| typedef struct critical_uint8_t_struct critical_uint8_t |
typedef for a critical unsigned integer with 8 bits.
This variable has to be checked with the macro IEC60335_ClassB_CriticalDataValidate(criticalVar)