Dmitry Kovalev / Mbed 2 deprecated LGfiltr

Dependencies:   mbed

Fork of LGstaandart by Dmitry Kovalev

Revision:
186:c7a9c309086c
Parent:
178:672ef279c8e0
--- a/DevicePLCS.h	Sun Jul 10 05:35:08 2016 +0000
+++ b/DevicePLCS.h	Sun Jul 31 06:19:02 2016 +0000
@@ -17,7 +17,7 @@
 typedef struct _DevicePLCSFeedbackState {
   uint8_t input;      //Take ISACS input as feedback
   uint8_t output;     //Take ISACS output as feedback
-  uint32_t voltage;   //Feedback - volts in 16.16 format
+  int32_t voltage;   //Feedback - volts in 16.16 format
 } DevicePLCSFeedbackState;
 
 typedef struct _DevicePLCSFeedback {
@@ -105,24 +105,36 @@
 typedef struct _DevicePLCSResetTemperatureFunction {
   uint32_t points;         //Number of actual control points (up to 16)
   int32_t temperature[16]; //Output reset temperature value - centigrade, 16.16 format
-  int32_t voltage[16];     //Output reset level value - volts, 16.16 format
-  uint32_t duration[16];   //Output reset duration value - seconds, 16.16 format
+  int32_t trigger[16];     //Output reset trigger level value - volts, 16.16 format
+  int32_t voltage[16];     //Output reset target level value - volts, 16.16 format - Delete this!!!
+  int32_t target[16];      //Output reset target level value - volts, 16.16 format - Use this!!!
+  int32_t duration[16];   //Output reset duration value - seconds, 16.16 format
 } DevicePLCSResetTemperatureFunction;
 
-typedef struct _DevicePLCSResetLevels {
-  int32_t upper; //Upper reset level output voltage
-  int32_t lower; //Lower reset level output voltage
-} DevicePLCSResetLevels;
+typedef struct _DevicePLCSResetDirectionSettings {
+  DevicePLCSResetTemperatureFunction environment;
+} DevicePLCSResetDirectionSettings;
+
+typedef struct _DevicePLCSResetDirectionState {
+  int32_t trigger;         //Output reset trigger level value - volts, 16.16 format
+  int32_t target;          //Output reset target level value - volts, 16.16 format
+  int32_t duration;        //Output reset duration value - seconds, 16.16 format
+} DevicePLCSResetDirectionState;
+
+typedef struct _DevicePLCSResetDirection {
+  DevicePLCSResetDirectionSettings settings;
+  DevicePLCSResetDirectionState state;
+} DevicePLCSResetDirection;
 
 typedef struct _DevicePLCSResetState {
-  int32_t countdown; //reset countdown - seconds, 16.16 format
-  int32_t voltage;
+  int32_t countdown;       //Output reset countdown - seconds, 16.16 format
+  int32_t voltage;         //Output reset target level value - volts, 16.16 format
 } DevicePLCSResetState;
 
 typedef struct _DevicePLCSReset {
-  DevicePLCSResetLevels levels;
-  DevicePLCSResetTemperatureFunction up;
-  DevicePLCSResetTemperatureFunction down;
+  //DevicePLCSResetSettings settings; //Delete this!!!
+  DevicePLCSResetDirection up;
+  DevicePLCSResetDirection down;
   DevicePLCSResetState state;
 } DevicePLCSReset;
 
@@ -147,7 +159,7 @@
 typedef struct _DevicePLCSOutputState {
   uint8_t enabled;     //Enable DAC output
   uint8_t sequencer;   //Enable sequencer output summation
-  uint32_t voltage;    //Voltage output 
+  int32_t voltage;     //Voltage output 
   uint32_t code;       //Code output 
 } DevicePLCSOutputState;
 
@@ -160,7 +172,6 @@
 //  Information signal amplitude ADC: device.controller.SSP.ADC[4]
 //  Path length control system DAC: device.controller.SSP.DAC[1]
 typedef struct _DevicePathLengthControlSystem {
-  //DevicePLCSSequencer sequencer;
   DevicePLCSFeedback feedback;
   DevicePLCSReference reference;
   DevicePLCSDetector detector;
@@ -177,4 +188,32 @@
 
 void plcsProcess(void);
 
+//Compatibility functions section
+//WP_reg dac ttf: DAC code in PLCS channel; value: voltage of PLCS; value=(ttf>>4)/2048*(-12)-1.3; Range -13.2V...10.7V
+int16_t var_WP_reg(void);
+
+//WP_pll = WP_PhaseDetectorRate( WP_Phase_Det, time_1_Sec)
+int16_t var_WP_pll(void);
+
+//WP_ref s16 PLCS reference
+uint16_t param_WP_ref(void);
+
+//WP_scl s16 PLCS gain factor (1.15) 5..20
+uint16_t param_WP_scl(void);
+
+//WP_mdy s16 PLCS reset delay in 10kHz cycles
+uint16_t param_WP_mdy(void);
+
+//WP_rup dac ttf:PLCS maximum DAC code in heater channel; value:minimal voltage on the heater; value=(ttf>>4)/2048*(-12)-1.3; Range -13.2V...10.7V
+uint16_t param_WP_rup(void);
+
+//WP_rdw dac ttf:PLCS minimum DAC code in heater channel; value:maximal voltage on the heater; value=(ttf>>4)/2048*(-12)-1.3; Range -13.2V...10.7V
+uint16_t param_WP_rdw(void);
+
+//WP_reset dac ttf:PLCS DAC code after reset at heating; value:heater voltage after reset at heating; value=(ttf>>4)/2048*(-12)-1.3; Range -13.2V...10.7V
+uint16_t param_WP_reset(void);
+
+//WP_reset2 dac ttf:PLCS DAC code after reset at cooling; value:heater voltage after reset at cooling; value=(ttf>>4)/2048*(-12)-1.3
+uint16_t param_WP_reset2(void);
+
 #endif  /* __DEVICE_PLCS_H__ */
\ No newline at end of file