Add wasm tacle-bench targets
This commit is contained in:
132
targets/wasm-tacle/parallel/DEBIE/code/measure.h
Normal file
132
targets/wasm-tacle/parallel/DEBIE/code/measure.h
Normal file
@ -0,0 +1,132 @@
|
||||
/*------------------------------------------------------------------------------
|
||||
|
||||
Copyright (C) 1998 : Space Systems Finland Ltd.
|
||||
|
||||
Space Systems Finland Ltd (SSF) allows you to use this version of
|
||||
the DEBIE-I DPU software for the specific purpose and under the
|
||||
specific conditions set forth in the Terms Of Use document enclosed
|
||||
with or attached to this software. In particular, the software
|
||||
remains the property of SSF and you must not distribute the software
|
||||
to third parties without written and signed authorization from SSF.
|
||||
|
||||
System Name: DEBIE DPU SW
|
||||
Subsystem : DAS
|
||||
Module : measure.h
|
||||
|
||||
Prototypes etc. for the Measure module.
|
||||
|
||||
Based on the SSF file measure.h, rev 1.14, Mon Aug 16 17:29:40 1999 .
|
||||
|
||||
- * --------------------------------------------------------------------------
|
||||
*/
|
||||
|
||||
|
||||
#ifndef MEASURE_H
|
||||
#define MEASURE_H
|
||||
|
||||
|
||||
#include "keyword.h"
|
||||
#include "kernobj.h"
|
||||
#include "su_ctrl.h"
|
||||
|
||||
/*Maximum number of conversion start tries allowed in the HitTriggerTask*/
|
||||
#define ADC_MAX_TRIES 25
|
||||
|
||||
#define HIT_BUDGET_DEFAULT 20
|
||||
/* Default limit for the events handled during one Health Monitoring */
|
||||
/* period. Valid values 1 .. 255. */
|
||||
|
||||
#define PEAK_RESET_MIN_DELAY 1
|
||||
/* Peak detector reset min delay: 1 * 10ms. */
|
||||
|
||||
#define COUNTER_RESET_MIN_DELAY 1
|
||||
/* Delay counter reset min delay: 1 * 10 ms. */
|
||||
/* NOTE that specifications would allow delay */
|
||||
/* of 1ms, but minimum delay that is possible */
|
||||
/* to be generated with RTX is one tick = 10ms */
|
||||
|
||||
#define SELF_TEST_DELAY 4
|
||||
/* This delay equals the length of 4 system cycles. */
|
||||
|
||||
/*Sensor Unit numbers*/
|
||||
#define SU1 1
|
||||
#define SU2 2
|
||||
#define SU3 3
|
||||
#define SU4 4
|
||||
|
||||
#define HIT_ADC_ERROR 0x80
|
||||
#define HIT_SELF_TEST_RESET 0x40
|
||||
#define SU_NUMBER_MASK 0x07
|
||||
|
||||
/*type definitions*/
|
||||
typedef enum {
|
||||
off_e, /* SU off state - power is Off. */
|
||||
start_switching_e, /* Transition to On state is starting. */
|
||||
switching_e, /* Transition to On state is started. */
|
||||
on_e, /* SU on state - power is On. */
|
||||
self_test_mon_e, /* Selt Test, Voltage and Temperature monitoring */
|
||||
self_test_e, /* Selt Test, test pulse setup. */
|
||||
self_test_trigger_e, /* Self test, test pulse handling */
|
||||
acquisition_e /* Power is On and Hit Events are accepted. */
|
||||
|
||||
} SU_state_t;
|
||||
/* From these only off_e, on_e and self_test_e are actual SU states */
|
||||
/* defined in the User Requirements. Those and 'acquisition_e' are */
|
||||
/* the main states between which the SU state transitions are made. */
|
||||
|
||||
typedef struct {
|
||||
sensor_number_t SU_number; /* Sensor Unit number */
|
||||
SU_state_t SU_state; /* Sensor unit states can be either On */
|
||||
/* or Off. */
|
||||
SU_state_t expected_source_state; /* Excpected source state of the SU */
|
||||
/* state transition. */
|
||||
unsigned char execution_result; /* This variable is used to indicate */
|
||||
/* execution results. */
|
||||
|
||||
} sensor_unit_t;
|
||||
|
||||
extern SU_state_t EXTERNAL SU_state[ 4 ];
|
||||
|
||||
extern sensor_number_t EXTERNAL self_test_SU_number;
|
||||
|
||||
typedef enum {high_e, low_e} SU_test_level_t;
|
||||
|
||||
extern uint_least8_t EXTERNAL hit_budget;
|
||||
extern uint_least8_t EXTERNAL hit_budget_left;
|
||||
|
||||
|
||||
/*function prototypes*/
|
||||
extern void Switch_SU_State( sensor_unit_t EXTERNAL *SU_setting )
|
||||
COMPACT_DATA REENTRANT_FUNC;
|
||||
|
||||
extern void Start_SU_SwitchingOn(
|
||||
sensor_index_t SU,
|
||||
unsigned char EXTERNAL *exec_result )
|
||||
COMPACT_DATA REENTRANT_FUNC;
|
||||
|
||||
extern void SetSensorUnitOff(
|
||||
sensor_index_t SU,
|
||||
unsigned char EXTERNAL *exec_result )
|
||||
COMPACT_DATA REENTRANT_FUNC;
|
||||
|
||||
extern SU_state_t ReadSensorUnit( unsigned char SU_number )
|
||||
COMPACT_DATA REENTRANT_FUNC;
|
||||
|
||||
extern void Update_SU_State( sensor_index_t SU_index )
|
||||
COMPACT_DATA REENTRANT_FUNC;
|
||||
|
||||
/*pointers to tasks*/
|
||||
|
||||
extern void ( * EXTERNAL hit_task )( void );
|
||||
extern void ( * EXTERNAL acq_task )( void );
|
||||
|
||||
/* Task functions, for testing: */
|
||||
|
||||
extern void InitHitTriggerTask ( void );
|
||||
extern void HandleHitTrigger ( void );
|
||||
extern void InitAcquisitionTask ( void );
|
||||
extern void HandleAcquisition ( void );
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
Reference in New Issue
Block a user