123

Dependencies:   mbed

Fork of LG by igor Apu

Revision:
166:c3c0b8a90d81
Parent:
161:efd949e8d536
Child:
167:bedc0a9d559a
diff -r b2bd0c810a4f -r c3c0b8a90d81 device.xml
--- a/device.xml	Fri May 20 14:03:58 2016 +0000
+++ b/device.xml	Sun May 22 18:59:20 2016 +0000
@@ -1,6 +1,10 @@
 <?xml version="1.0" encoding="utf-8" ?>
 <root>
     <structure name="device" typedef="Device">
+        <structure name="user" typedef="DeviceUserProtocol">
+            <variable name="address" typedef="uint16_t" value="0"/>
+        </structure>
+
         <structure name="sensor" typedef="DeviceSensor">
             <structure name="settings" typedef="DeviceSensorSettings">
                 <variable name="id" typedef="uint16_t" value="0"/>
@@ -132,24 +136,6 @@
             </structure>
         </structure>
         
-        <structure name="dac" typedef="DeviceDAC">
-            <structure name="settings" typedef="DeviceDACSettings">
-                <variable name="reference" typedef="uint32_t" value="150"/>
-                <variable name="resolution" typedef="uint32_t" value="150"/>
-                <variable name="unit" typedef="uint32_t" value="150"/>
-                <variable name="code[0]" typedef="uint32_t" value="0"/>
-                <variable name="code[1]" typedef="uint32_t" value="0"/>
-                <variable name="out[0]" typedef="uint32_t" value="0"/>
-                <variable name="out[1]" typedef="uint32_t" value="0"/>
-            </structure>
-            <structure name="state" typedef="DeviceDACState">
-                <variable name="code[0]" typedef="uint32_t" value="0"/>
-                <variable name="code[1]" typedef="uint32_t" value="0"/>
-                <variable name="out[0]" typedef="uint32_t" value="0"/>
-                <variable name="out[1]" typedef="uint32_t" value="0"/>
-            </structure>
-        </structure>
-        
         <structure name="isacs" typedef="DeviceISACS">
             <structure name="potentiometers" typedef="DeviceISACSPotentiometers">
                 <structure name="settings" typedef="DeviceISACSPotentiometersSettings">
@@ -162,21 +148,115 @@
                 </structure>
             </structure>
             
+            <structure name="input" typedef="DeviceISACSInput">
+                <variable name="voltage" typedef="uint32_t" value="0"/>
+                <variable name="average" typedef="uint32_t" value="0"/>
+                <structure name="interpolator" typedef="DeviceISACSInputInterpolator">
+                    <structure name="settings" typedef="DeviceISACSInputInterpolatorSettings">
+                        <variable name="points" typedef="uint32_t" value="2"/>
+                        <variable name="voltage[0]" typedef="uint32_t" value="0x00000000"/>
+                        <variable name="code[0]" typedef="uint32_t" value="0"/>
+                        <variable name="voltage[1]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[1]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[2]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[2]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[3]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[3]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[4]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[4]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[5]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[5]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[6]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[6]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[7]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[7]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[8]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[8]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[9]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[9]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[10]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[10]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[11]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[11]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[12]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[12]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[13]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[13]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[14]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[14]" typedef="uint32_t" value="4095"/>
+                        <variable name="voltage[15]" typedef="uint32_t" value="0x00040000"/>
+                        <variable name="code[15]" typedef="uint32_t" value="4095"/>
+                    </structure>
+                </structure>
+            </structure>
+            
+            <structure name="output" typedef="DeviceISACSOutput">
+                <variable name="voltage" typedef="uint32_t" value="0"/>
+                <structure name="interpolator" typedef="DeviceISACSOutputInterpolator">
+                    <structure name="settings" typedef="DeviceISACSOutputInterpolatorSettings">
+                        <variable name="points" typedef="uint32_t" value="2"/>
+                        <variable name="voltage[0]" typedef="uint32_t" value="0x00017fff"/>
+                        <variable name="code[0]" typedef="uint32_t" value="800"/>
+                        <variable name="voltage[1]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[1]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[2]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[2]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[3]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[3]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[4]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[4]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[5]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[5]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[6]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[6]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[7]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[7]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[8]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[8]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[9]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[9]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[10]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[10]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[11]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[11]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[12]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[12]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[13]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[13]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[14]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[14]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[15]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[15]" typedef="uint32_t" value="2048"/>
+                    </structure>
+                </structure>
+                <structure name="start" typedef="DeviceISACSOutputStart">
+                    <structure name="settings" typedef="DeviceISACSOutputStartSettings">
+                        <variable name="voltage" typedef="int32_t" value="0x000c7fff"/>
+                    </structure>
+                </structure>
+                <structure name="reset" typedef="DeviceISACSOutputReset">
+                    <structure name="settings" typedef="DeviceISACSOutputResetSettings">
+                        <variable name="voltage" typedef="int32_t" value="0x000c7fff"/>
+                    </structure>
+                </structure>
+            </structure>
+            
             <structure name="regulator" typedef="DeviceISACSRegulator">
                 <structure name="settings" typedef="DeviceISACSRegulatorSettings">
-                    <variable name="enabled" typedef="uint8_t" value="1"/>
-                    
                     <structure name="start" typedef="DeviceISACSRegulatorConditionSettings">
+                        <variable name="enabled" typedef="uint8_t" value="1"/>
                         <variable name="reference" typedef="uint32_t" value="1"/>
                         <variable name="scale" typedef="uint32_t" value="1"/>
                     </structure>
                     
                     <structure name="regular" typedef="DeviceISACSRegulatorConditionSettings">
+                        <variable name="enabled" typedef="uint8_t" value="1"/>
                         <variable name="reference" typedef="uint32_t" value="1"/>
                         <variable name="scale" typedef="uint32_t" value="1"/>
                     </structure>
                     
                     <structure name="reset" typedef="DeviceISACSRegulatorConditionSettings">
+                        <variable name="enabled" typedef="uint8_t" value="1"/>
                         <variable name="reference" typedef="uint32_t" value="1"/>
                         <variable name="scale" typedef="uint32_t" value="1"/>
                     </structure>
@@ -191,28 +271,172 @@
             </structure>
         </structure>
 
-        <structure name="user" typedef="DeviceUserProtocol">
-            <variable name="address" typedef="uint16_t" value="0"/>
-        </structure>
-
-       <structure name="plcs" typedef="DevicePathLengthControlSystem">
-            <structure name="modulator" typedef="DevicePathLengthControlModulator">
-                <structure name="settings" typedef="DevicePathLengthControlModulatorSettings">
+        <structure name="plcs" typedef="DevicePathLengthControlSystem">
+            <structure name="sequencer" typedef="DevicePLCSSequencer">
+                <structure name="settings" typedef="DevicePLCSSequencerSettings">
+                    <variable name="enabled" typedef="uint8_t" value="0"/>
+                    <variable name="voltage" typedef="uint8_t" value="0"/>
+                    <variable name="io" typedef="uint8_t" value="0"/>
+                    <variable name="sequence[0]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[1]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[2]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[3]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[4]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[5]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[6]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[7]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[8]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[9]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[10]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[11]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[12]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[13]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[14]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[15]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[16]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[17]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[18]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[19]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[20]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[21]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[22]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[23]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[24]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[25]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[26]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[27]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[28]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[29]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[30]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[31]" typedef="uint32_t" value="0"/>
+                    <variable name="sequence[32]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[33]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[34]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[35]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[36]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[37]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[38]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[39]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[40]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[41]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[42]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[43]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[44]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[45]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[46]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[47]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[48]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[49]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[50]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[51]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[52]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[53]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[54]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[55]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[56]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[57]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[58]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[59]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[60]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[61]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[62]" typedef="uint32_t" value="1"/>
+                    <variable name="sequence[63]" typedef="uint32_t" value="1"/>
+                </structure>
+                
+                <structure name="state" typedef="DevicePLCSSequencerState">
+                    <variable name="enabled" typedef="uint8_t" value="0"/>
+                    <variable name="counter" typedef="uint8_t" value="0"/>
+                    <variable name="voltage" typedef="uint8_t" value="0"/>
+                    <variable name="io" typedef="uint8_t" value="0"/>
+                </structure>
+            </structure>
+            
+            <structure name="input" typedef="DevicePLCSInput">
+                <variable name="voltage" typedef="uint32_t" value="0"/>
+                <variable name="average" typedef="uint32_t" value="0"/>
+            </structure>
+            
+            <structure name="detector" typedef="DevicePLCSPhaseDetector">
+                <structure name="settings" typedef="DevicePLCSPhaseDetectorSettings">
+                    <variable name="enabled" typedef="uint8_t" value="1"/>
+                    <variable name="input" typedef="uint32_t" value="1"/>
+                    <variable name="output" typedef="uint32_t" value="0"/>
+                    <variable name="sequencer" typedef="uint32_t" value="0"/>
+                    <variable name="delta" typedef="uint32_t" value="1"/>
+                    <variable name="delay" typedef="uint32_t" value="0"/>
+                </structure>
+                
+                <structure name="state" typedef="DevicePLCSPhaseDetectorState">
+                    <variable name="enabled" typedef="uint8_t" value="1"/>
+                    <variable name="input" typedef="uint32_t" value="1"/>
+                    <variable name="output" typedef="uint32_t" value="0"/>
+                    <variable name="sequencer" typedef="uint32_t" value="0"/>
+                    <variable name="delta" typedef="uint32_t" value="1"/>
+                    <variable name="delay" typedef="uint32_t" value="0"/>
+                    <variable name="phase" typedef="uint32_t" value="0"/>
+                </structure>
+            </structure>
+            
+            <structure name="output" typedef="DevicePLCSOutput">
+                <structure name="settings" typedef="DevicePLCSOutputSettings">
                     <variable name="enabled" typedef="uint8_t" value="1"/>
                 </structure>
                 
-                <structure name="state" typedef="DevicePathLengthControlModulatorState">
+                <structure name="state" typedef="DevicePLCSOutputState">
                     <variable name="enabled" typedef="uint8_t" value="1"/>
+                    <variable name="voltage" typedef="uint32_t" value="0"/>
+                </structure>
+                
+                <structure name="interpolator" typedef="DevicePLCSOutputInterpolator">
+                    <structure name="settings" typedef="DevicePLCSOutputInterpolatorSettings">
+                        <variable name="points" typedef="uint32_t" value="2"/>
+                        <variable name="voltage[0]" typedef="uint32_t" value="0x00017fff"/>
+                        <variable name="code[0]" typedef="uint32_t" value="800"/>
+                        <variable name="voltage[1]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[1]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[2]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[2]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[3]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[3]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[4]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[4]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[5]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[5]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[6]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[6]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[7]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[7]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[8]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[8]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[9]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[9]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[10]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[10]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[11]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[11]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[12]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[12]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[13]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[13]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[14]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[14]" typedef="uint32_t" value="2048"/>
+                        <variable name="voltage[15]" typedef="uint32_t" value="0x000c7fff"/>
+                        <variable name="code[15]" typedef="uint32_t" value="2048"/>
+                    </structure>
+                </structure>
+                
+                <structure name="start" typedef="DevicePLCSOutputStart">
+                    <structure name="settings" typedef="DevicePLCSOutputStartSettings">
+                        <variable name="voltage" typedef="int32_t" value="0x000c7fff"/>
+                    </structure>
+                </structure>
+                <structure name="reset" typedef="DevicePLCSOutputReset">
+                    <structure name="settings" typedef="DevicePLCSOutputResetSettings">
+                        <variable name="voltage" typedef="int32_t" value="0x000c7fff"/>
+                    </structure>
                 </structure>
             </structure>
-            
-            <structure name="amplifier" typedef="DevicePathLengthControlAmplifier">
-                <structure name="settings" typedef="DevicePathLengthControlAmplifierSettings">
-                    <variable name="reference" typedef="uint32_t" value="0"/>
-                    <variable name="gain" typedef="uint32_t" value="0"/>
-                </structure>
-            </structure>
-            
+       
             <structure name="reset" typedef="DevicePathLengthControlReset">
                 <structure name="settings" typedef="DevicePathLengthControlResetSettings">
                     <structure name="cooling" typedef="DevicePathLengthControlResetConditionSettings">
@@ -249,13 +473,13 @@
             <structure name="regulator" typedef="DevicePathLengthControlRegulator">
                 <structure name="settings" typedef="DevicePathLengthControlRegulatorSettings">
                     <variable name="enabled" typedef="uint8_t" value="1"/>
-                    <variable name="reference" typedef="uint32_t" value="1"/>
+                    <variable name="reference" typedef="uint32_t" value="0"/>
                     <variable name="scale" typedef="uint32_t" value="1"/>
                 </structure>
                 
                 <structure name="state" typedef="DevicePathLengthControlRegulatorState">
                     <variable name="enabled" typedef="uint8_t" value="1"/>
-                    <variable name="reference" typedef="uint32_t" value="1"/>
+                    <variable name="reference" typedef="uint32_t" value="0"/>
                     <variable name="scale" typedef="uint32_t" value="1"/>
                     <variable name="error" typedef="uint32_t" value="1"/>
                 </structure>
@@ -311,13 +535,13 @@
             </structure>
             
             <structure name="SSP" typedef="DeviceSSP">
-                <variable name="ADC[0]" typedef="uint32_t" value="0"/>
-                <variable name="ADC[1]" typedef="uint32_t" value="0"/>
-                <variable name="ADC[2]" typedef="uint32_t" value="0"/>
-                <variable name="ADC[3]" typedef="uint32_t" value="0"/>
-                <variable name="ADC[4]" typedef="uint32_t" value="0"/>
-                <variable name="DAC[0]" typedef="uint32_t" value="0"/>
-                <variable name="DAC[1]" typedef="uint32_t" value="0"/>
+                <variable name="in[0]" typedef="uint32_t" value="0"/>
+                <variable name="in[1]" typedef="uint32_t" value="0"/>
+                <variable name="in[2]" typedef="uint32_t" value="0"/>
+                <variable name="in[3]" typedef="uint32_t" value="0"/>
+                <variable name="in[4]" typedef="uint32_t" value="0"/>
+                <variable name="out[0]" typedef="uint32_t" value="0"/>
+                <variable name="out[1]" typedef="uint32_t" value="0"/>
             </structure>
             
             <structure name="I2C" typedef="DeviceI2C">