Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Fork of LGstaandart by
Diff: DevicePLCS.h
- 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
