1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
/************************************************************************************************************************
* control.c
**************************************************************************************************************************/
#ifndef MODULES_CONTROL_CONTROL_H_
#define MODULES_CONTROL_CONTROL_H_
////////////////////////////////State machine operation////////////////////////////////////
//the state machine operation is used to operate in runtime correct profile flow execution
//by recieved esign flow of the user from the UI
///////////////////////////////////////////////////////////////////////////////////////////
#include "include.h"
//typedef uint32_t (* DeviceDataFunction)(uint32_t deviceID, uint32_t *Value);
typedef uint32_t (* ControlCBFunction)(uint32_t IfIndex, uint32_t ReadValue);
typedef uint32_t (* DataReadCBFunction)( uint32_t Parameter1, uint32_t Parameter2);
typedef enum {
eNoControl = 0,
eOneMillisecond = 1,
eTenMilliSecond = 10,
eHundredMillisecond = 100,
eOneSecond = 1000
}CTRL_TIMING_ENUM;
typedef enum
{
IfTypeNone,
IfTypeThread,
IfTypeWinder,
IfTypeIDS,
IfTypeHeaters,
IfTypeWaste,
IfTypeMotors,
MAX_INTERFACE_TYPES
}SYSTEM_INTERFACE_TYPES_ID_ENUM;
void ControlInit(void);
void ControlStop(void);
void ControlStart(void);
uint32_t AddControlCallback( ControlCBFunction Callback, CTRL_TIMING_ENUM CtrlFrequency, DataReadCBFunction DriverfPtr, uint32_t IfIndex, uint32_t Parameter1, uint32_t Parameter2 );
int RemoveControlCallback(uint32_t deviceId, ControlCBFunction Callback );
uint32_t TemplateDataReadCBFunction (uint32_t deviceId, uint32_t Parameter1, uint32_t Parameter2);
extern Task_Handle Control_Task_Handle;
#endif
|