diff options
| author | Avi Levkovich <avi@twine-s.com> | 2020-01-05 09:42:19 +0200 |
|---|---|---|
| committer | Avi Levkovich <avi@twine-s.com> | 2020-01-05 09:42:19 +0200 |
| commit | 68d996d983b14565675d80d37a570f1b8af39e89 (patch) | |
| tree | f608de09dd1feb475a87a4a10e4f729955df2f7b /Software/Stubs Collection | |
| parent | 253ce3357f1b83ed25251e5779fe41b60b81bcf3 (diff) | |
| download | Tango-68d996d983b14565675d80d37a570f1b8af39e89.tar.gz Tango-68d996d983b14565675d80d37a570f1b8af39e89.zip | |
upload stubs + I2C_FIFO.c (not in use yet)
Diffstat (limited to 'Software/Stubs Collection')
21 files changed, 1253 insertions, 0 deletions
diff --git a/Software/Stubs Collection/stubs/Create File System on the Drive - reset flash.cs b/Software/Stubs Collection/stubs/Create File System on the Drive - reset flash.cs new file mode 100644 index 000000000..d8b763ddd --- /dev/null +++ b/Software/Stubs Collection/stubs/Create File System on the Drive - reset flash.cs @@ -0,0 +1,17 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + + var response = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xCF, 0xCF);//Create File System on the Drive +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Dispenser ByPass - getout from loewer safety.cs b/Software/Stubs Collection/stubs/Dispenser ByPass - getout from loewer safety.cs new file mode 100644 index 000000000..34dce79fe --- /dev/null +++ b/Software/Stubs Collection/stubs/Dispenser ByPass - getout from loewer safety.cs @@ -0,0 +1,46 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + UInt32 Dispenser_ID = 3; //Software Dispensers 0..7, BP Dispensers 1..8 (4 for bp disp 5) + + stubManager.Write("ByPass + TestRelay + read inputs "); + stubManager.WriteLine(""); + var response = stubManager.Run<StubDispenserResponse>("StubDispenserRequest" ,Dispenser_ID, true, false, 0, 0);//ByPass + read inputs + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + + stubManager.Run("StubMotorRunRequest" ,(Dispenser_ID + 6), true, 1200 );//Dispenser ID -> motor ID + + Thread.Sleep(30000); //Sleep + stubManager.Run("StubMotorStopRequest" ,15, 3); + + stubManager.Write("Remove ByPass ( + read inputs) "); + stubManager.WriteLine(""); + response = stubManager.Run<StubDispenserResponse>("StubDispenserRequest" ,Dispenser_ID, false, false, 0, 0);// read inputs + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Dispenser ByPass - getout from upper safety.cs b/Software/Stubs Collection/stubs/Dispenser ByPass - getout from upper safety.cs new file mode 100644 index 000000000..1887d433c --- /dev/null +++ b/Software/Stubs Collection/stubs/Dispenser ByPass - getout from upper safety.cs @@ -0,0 +1,46 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + UInt32 Dispenser_ID = 1; //Software Dispensers 0..7, BP Dispensers 1..8 (4 for bp disp 5) + + stubManager.Write("ByPass + TestRelay + read inputs "); + stubManager.WriteLine(""); + var response = stubManager.Run<StubDispenserResponse>("StubDispenserRequest" ,Dispenser_ID, true, false, 0, 0);//ByPass + read inputs + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + + stubManager.Run("StubMotorRunRequest" ,(Dispenser_ID + 6), false, 1200 );//Dispenser ID -> motor ID + + Thread.Sleep(30000); //Sleep + stubManager.Run("StubMotorStopRequest" ,15, 3); + + stubManager.Write("Remove ByPass ( + read inputs) "); + stubManager.WriteLine(""); + response = stubManager.Run<StubDispenserResponse>("StubDispenserRequest" ,Dispenser_ID, false, false, 0, 0);// read inputs + stubManager.Write("MSB for Disp_UP, LSB for Disp_Down "); + stubManager.WriteHex((response.DispenserPosition),4); + stubManager.WriteLine(""); + stubManager.Write("MSB for Realy_On, LSB for Over_Press "); + stubManager.WriteHex((response.InkWorningLevel),4); + stubManager.WriteLine(""); + stubManager.WriteLine("----"); + stubManager.WriteLine(""); + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Head LS.cs b/Software/Stubs Collection/stubs/Head LS.cs new file mode 100644 index 000000000..b5c646649 --- /dev/null +++ b/Software/Stubs Collection/stubs/Head LS.cs @@ -0,0 +1,31 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +/*HEAD CARD I/O + +Slave address 0x40 / 0x42 / 0x44 / 0x46 + +------------------------- +| Byte | WR | RD | CFG | +------------------------- +| Low | 02 | 00 | 06 | +| High | 03 | 01 | 07 | +------------------------- +Example (42 Slave Address, 03 Write High Byte, D8 Set value (NA on read)) +stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x4203D8); +*/ +public void OnExecute(StubManager stubManager) +{ + //Head LS + var response7 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x460100); + stubManager.WriteLineHex(response7.Progress,2); +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/HeadCard_ADC.cs b/Software/Stubs Collection/stubs/HeadCard_ADC.cs new file mode 100644 index 000000000..e1e18089c --- /dev/null +++ b/Software/Stubs Collection/stubs/HeadCard_ADC.cs @@ -0,0 +1,64 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + + +//----------------------------------------- HEAD_ADC1_0x50 +//Maximum value: 1.3V, 1 LSB: 2500/4096 mA +const UInt32 HEAD_CURRENT_ZONE_1 = 0; +const UInt32 HEAD_CURRENT_ZONE_2 = 1; +const UInt32 HEAD_CURRENT_ZONE_3 = 2; +const UInt32 HEAD_CURRENT_ZONE_4 = 3; +const UInt32 HEAD_CURRENT_ZONE_5 = 4; +const UInt32 HEAD_CURRENT_ZONE_6 = 5; +const UInt32 HEAD_CURRENT_ZONE_7 = 6; +const UInt32 HEAD_CURRENT_ZONE_8 = 7; + +//----------------------------------------- HEAD_ADC2_0x54 +//Maximum value: 1.3V, 1 LSB: 2500/4096 mA +const UInt32 HEAD_CURRENT_ZONE_9 = 8 ; +const UInt32 HEAD_CURRENT_ZONE_10 = 9 ; +const UInt32 HEAD_CURRENT_ZONE_11 = 10; +const UInt32 HEAD_CURRENT_ZONE_12 = 11; + +//Maximum value: 2.1V, 1 LSB: 5000/4096 mA +const UInt32 HEAD_CURRENT_HTIN_1 = 12; +const UInt32 HEAD_CURRENT_HTIN_2 = 13; +const UInt32 HEAD_CURRENT_HTIN_3 = 14; +const UInt32 HEAD_CURRENT_HTIN_4 = 15; + +//----------------------------------------- HEAD_ADC3_0x56 +//Maximum value: 2.1V, 1 LSB: 5000/4096 mA +const UInt32 HEAD_CURRENT_HTOT_1 = 16; +const UInt32 HEAD_CURRENT_HTOT_2 = 17; +const UInt32 HEAD_CURRENT_HTOT_3 = 18; +const UInt32 HEAD_CURRENT_HTOT_4 = 19; + +//Maximum value: 1.7V, 1 LSB: 2500/4096 mA +const UInt32 HEAD_CURRENT_MIXER = 20; + +//Maximum value: 2.34V, 1 LSB: 4.9 mA +const UInt32 HEAD_CURRENT_HT_TOTAL = 21; + +//Maximum value: 0.5V, 1 LSB: 2500/4096 mA +const UInt32 HEAD_CURRENT_VALUE = 22; + +//Maximum value: (2.05 -2.3) V, 1 LSB: 27500/4096 mV +const UInt32 HEAD_CURRENT_24V = 23; + + +public void OnExecute(StubManager stubManager) +{ + + var response = stubManager.Run<StubMidTankPressureSensorResponse>("StubMidTankPressureSensorRequest" ,0x8000 + HEAD_CURRENT_24V); // 0x8000 + Head ADC ID + stubManager.WriteLine(response.Pressure); + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Head_Card_I2C.cs b/Software/Stubs Collection/stubs/Head_Card_I2C.cs new file mode 100644 index 000000000..6f49eeb51 --- /dev/null +++ b/Software/Stubs Collection/stubs/Head_Card_I2C.cs @@ -0,0 +1,66 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +/*HEAD CARD I/O + +Slave address 0x40 / 0x42 / 0x44 / 0x46 + +------------------------- +| Byte | WR | RD | CFG | +------------------------- +| Low | 02 | 00 | 06 | +| High | 03 | 01 | 07 | +------------------------- + +Example (42 Slave Address, 03 Write High Byte, D8 Set value (NA on read)) +stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x4203D8); +*/ + +public void OnExecute(StubManager stubManager) +{ + +//ZN_Latch_RST off +var response = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x4203D8); +stubManager.WriteLineHex(response.Progress,2); + +//Turn ON mixer +var response1 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x420210); +stubManager.WriteLineHex(response1.Progress,2); + +//Turn ON 12 (0..7) +var response4 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x4002FF); +stubManager.WriteLineHex(response4.Progress,2); + +//Turn ON 12 (8..11) +var response5 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x40030F); +stubManager.WriteLineHex(response5.Progress,2); + +//ZN_Latch_RST ON +var response2 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x4203F8); +stubManager.WriteLineHex(response2.Progress,2); + +Thread.Sleep(5000); + +//Turn OFF mixer +var response3 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x420200); +stubManager.WriteLineHex(response3.Progress,2); + +//Turn OFF 12 (0..7) +var response6 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x400200); +stubManager.WriteLineHex(response6.Progress,2); + +//Turn OFF 12 (8..11) +var response7 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0x0EAD, 0x400300); +stubManager.WriteLineHex(response7.Progress,2); + + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Head_Card_IO.cs b/Software/Stubs Collection/stubs/Head_Card_IO.cs new file mode 100644 index 000000000..161b622f2 --- /dev/null +++ b/Software/Stubs Collection/stubs/Head_Card_IO.cs @@ -0,0 +1,160 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +//---------------------- +const Int32 I2C_ID = 3; //MCU_I2C3 +const Int32 TCA9548A_address = 0xE2; // Main Mux +Int32 I2C_Slave_Add ; // //eeprom address - 32kByte +int Head_Mux_Channel_ID = 4; //Head MUX channel +//---------------------- + +uint[] write_Buf = new uint[5]; + + +int enable_channel(int Channel_ID) +{ + uint Const_temp = 0x01; + + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = TCA9548A_address; + + Const_temp = Const_temp << Channel_ID; + stubI2CWriteBytesRequest.BytesTWrite.Add(Const_temp); + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + + +int adc_write(uint I2C_Slave_Add, uint No_Bytes) +{ +uint i = 0; + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; + + UInt32 uInt32 = new UInt32(); + + //-------------------------------------------------------------- + for(i=0;i<No_Bytes;i++) + stubI2CWriteBytesRequest.BytesTWrite.Add(write_Buf[i]);//Data to write + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + +int adc_set_for_read_ch(uint I2C_Slave_Add) +{ + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; + + + UInt32 uInt32 = new UInt32(); + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + +int adc_read_ch(uint I2C_Slave_Add, uint No_Bytes) +{ + adc_set_for_read_ch(I2C_Slave_Add ); + + StubI2CReadBytesRequest stubI2CReadBytesRequest = new StubI2CReadBytesRequest(); + stubI2CReadBytesRequest.I2CId = I2C_ID; + stubI2CReadBytesRequest.SlaveAddress = I2C_Slave_Add + 1; + stubI2CReadBytesRequest.NumberOfBytesToRead = No_Bytes; // Number of bytes to read + + var response1 = stubManager.Run<StubI2CReadBytesResponse>(stubI2CReadBytesRequest); + uint temph=0; + + for(int i=0; i<stubI2CReadBytesRequest.NumberOfBytesToRead;i++) + { + temph=response1.ReadBytes[i]; + stubManager.WriteLineHex(temph,2); + } + + return 1; +} + + +public void OnExecute(StubManager stubManager) +{ + + enable_channel(Head_Mux_Channel_ID); + + //ZN_Latch_RST off + write_Buf[0] = 0x03; + write_Buf[1] = 0xD8; + adc_write(0x42, 2); + adc_read_ch(0x42, 2); + + + //Turn ON mixer + write_Buf[0] = 0x02; + write_Buf[1] = 0x10; + adc_write(0x42, 2); + adc_read_ch(0x42, 2); + stubManager.WriteLine(""); + + //Turn ON 12 (0..7) + write_Buf[0] = 0x02; + write_Buf[1] = 0xFF; + adc_write(0x40, 2); + adc_read_ch(0x40, 2); + stubManager.WriteLine(""); + + //Turn ON 12 (8..11) + write_Buf[0] = 0x03; + write_Buf[1] = 0x0F; + adc_write(0x40, 2); + adc_read_ch(0x40, 2); + stubManager.WriteLine(""); + + //ZN_Latch_RST ON + write_Buf[0] = 0x03; + write_Buf[1] = 0xF8; + adc_write(0x42, 2); + adc_read_ch(0x42, 2); + + Thread.Sleep(5000); + stubManager.WriteLine("-------------"); + + //Turn OFF mixer + write_Buf[0] = 0x02; + write_Buf[1] = 0x00; + adc_write(0x42, 2); + adc_read_ch(0x42, 2); + stubManager.WriteLine(""); + + //Turn OFF 12 (0..7) + write_Buf[0] = 0x02; + write_Buf[1] = 0x00; + adc_write(0x40, 2); + adc_read_ch(0x40, 2); + stubManager.WriteLine(""); + + //Turn OFF 12 (8..11) + write_Buf[0] = 0x03; + write_Buf[1] = 0x00; + adc_write(0x40, 2); + adc_read_ch(0x40, 2); + stubManager.WriteLine(""); + + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Head_EEPROM.cs b/Software/Stubs Collection/stubs/Head_EEPROM.cs new file mode 100644 index 000000000..1b3ab7213 --- /dev/null +++ b/Software/Stubs Collection/stubs/Head_EEPROM.cs @@ -0,0 +1,135 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +//---------------------- +const Int32 I2C_ID = 3; //MCU_I2C3 +const Int32 TCA9548A_address = 0xE2; +const Int32 I2C_Slave_Add = 0xA0; // //eeprom address - 32kByte +int Head_Mux_Channel_ID = 4; //Head MUX channel +//---------------------- + + +int enable_channel(int Channel_ID) +{ + uint Const_temp = 0x01; + + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = TCA9548A_address; + + Const_temp = Const_temp << Channel_ID; + stubI2CWriteBytesRequest.BytesTWrite.Add(Const_temp); + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + + +int adc_write(uint I2C_Slave_Add, uint Page) +{ + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; + + UInt32 uInt32 = new UInt32(); + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(Page);//Byte 0 to write + //-------------------------------------------------------------- + + stubI2CWriteBytesRequest.BytesTWrite.Add(0x12 + Page);//Data 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0x34 + Page);//Data 1 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0x56 + Page);//Data 2 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0x78 + Page);//Data 3 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0x90 + Page);//Data 4 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0xAB + Page);//Data 5 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0xCD + Page);//Data 6 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0xEF + Page);//Data 7 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0x01 + Page);//Data 8 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0x02 + Page);//Data 9 to write + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + +int adc_set_for_read_ch(uint I2C_Slave_Add, uint Page) +{ + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; + + + UInt32 uInt32 = new UInt32(); + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(Page);//Byte 0 to write + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + +int adc_read_ch(uint I2C_Slave_Add) +{ + StubI2CReadBytesRequest stubI2CReadBytesRequest = new StubI2CReadBytesRequest(); + stubI2CReadBytesRequest.I2CId = I2C_ID; + stubI2CReadBytesRequest.SlaveAddress = I2C_Slave_Add + 1; + stubI2CReadBytesRequest.NumberOfBytesToRead = 10; // Number of bytes to read + + var response1 = stubManager.Run<StubI2CReadBytesResponse>(stubI2CReadBytesRequest); + uint temph=0; + + for(int i=0; i<stubI2CReadBytesRequest.NumberOfBytesToRead;i++) + { + temph=response1.ReadBytes[i]; + stubManager.WriteHex(temph,2); + } + + return 1; +} + + +public void OnExecute(StubManager stubManager) +{ + + //enable_all_channel(); + enable_channel(Head_Mux_Channel_ID); // Chanel 0-7 => Disp0enser 0-7 + + for (int i = 0; i<1; i++) + { + + adc_write(I2C_Slave_Add,0x10); + Thread.Sleep(10); //Sleep for 5 milli. - must! otherwise read 0xff (See data sheet ) + + adc_write(I2C_Slave_Add,0x00); + Thread.Sleep(10); //Sleep for 5 milli. - must! otherwise read 0xff (See data sheet ) + + stubManager.Write("\nPage 0x10 #"); + stubManager.Write(i); + stubManager.Write("\t- The Buffer is: "); + adc_set_for_read_ch(I2C_Slave_Add,0x10); + //Thread.Sleep(1); //Sleep for 10 milli. + adc_read_ch(I2C_Slave_Add); + + Thread.Sleep(10); + + stubManager.Write("\nPage 0x00 #"); + stubManager.Write(i); + stubManager.Write("\t- The Buffer is: "); + adc_set_for_read_ch(I2C_Slave_Add, 0x00); + //Thread.Sleep(1); //Sleep for 10 milli. + adc_read_ch(I2C_Slave_Add); + + Thread.Sleep(1000); + + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing.cs b/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing.cs new file mode 100644 index 000000000..6c6bbac05 --- /dev/null +++ b/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing.cs @@ -0,0 +1,59 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +//using Tango.Stubs.UI; +using Tango.Stubs;// +using Tango.PMR.Printing; +using Tango.PMR.Hardware; + + +public void OnExecute(StubManager stubManager) +{ + /* +ProcessParameters processParameters = new ProcessParameters(); +processParameters.DyeingSpeed = 30; +processParameters.DryerBufferLength = 0; +processParameters.MinInkUptake = 0; +processParameters.DryerZone1Temp = 120; +processParameters.DryerZone2Temp = 0; +processParameters.DryerZone3Temp = 0; +processParameters.HeadZone1Temp = 120; +processParameters.HeadZone2Temp = 150; +processParameters.HeadZone3Temp = 150; +processParameters.HeadZone4Temp = 150; +processParameters.HeadZone5Temp = 0; + +UploadProcessParametersRequest uploadProcessParametersRequest = new UploadProcessParametersRequest(); + +uploadProcessParametersRequest.ProcessParameters = processParameters; +var response1 = stubManager.Run<UploadProcessParametersResponse>(uploadProcessParametersRequest); +*/ + + stubManager.Write("\n"); + stubManager.Write("HZone_1 \tHZone_3 \tHZone_5 \tHZone_7 \tHZone_9 \tHZone_11\tHAir_1 \tMixer \tHZone_2 \tHZone_4 \tHZone_6 \tHZone_8 \tHZone_10 \tHZone_12 \n"); + stubManager.Write("------- \t---------\t---------\t---------\t---------\t---------\t------- \t------- \t------- \t-----------\t-----------\t-----------\t-----------\t-----------\n"); + + for (int j = 0; j < 1000; j++) + { + for (int i = 12; i < 26; i++)//12 + { + + var response = stubManager.Run<StubTempSensorResponse>("StubTempSensorRequest" ,0x100 + i); //Add 0x100 for internal temperature + float ftemp = (float)response.TemperatureCMultBy100; + ftemp = ftemp / 100; + + stubManager.Write(ftemp.ToString("F2")); + stubManager.Write("°C\t"); + + } + stubManager.Write("\n"); + Thread.Sleep(1000); + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing_new.cs b/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing_new.cs new file mode 100644 index 000000000..4d877e3d0 --- /dev/null +++ b/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing_new.cs @@ -0,0 +1,87 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +//using Tango.Stubs.UI; +using Tango.Stubs;// +using Tango.PMR.Printing; +using Tango.PMR.Hardware; + + +public void OnExecute(StubManager stubManager) +{ + + Int32 command = 0; + + /* +ProcessParameters processParameters = new ProcessParameters(); +processParameters.DyeingSpeed = 30; +processParameters.DryerBufferLength = 0; +processParameters.MinInkUptake = 0; +processParameters.DryerZone1Temp = 120; +processParameters.DryerZone2Temp = 0; +processParameters.DryerZone3Temp = 0; +processParameters.HeadZone1Temp = 120; +processParameters.HeadZone2Temp = 150; +processParameters.HeadZone3Temp = 150; +processParameters.HeadZone4Temp = 150; +processParameters.HeadZone5Temp = 0; + +UploadProcessParametersRequest uploadProcessParametersRequest = new UploadProcessParametersRequest(); + +uploadProcessParametersRequest.ProcessParameters = processParameters; +var response1 = stubManager.Run<UploadProcessParametersResponse>(uploadProcessParametersRequest); +*/ + + stubManager.Write("\n"); + stubManager.Write("HZone_1 \tHZone_3 \tHZone_5 \tHZone_7 \tHZone_9 \tHZone_11\tHAir_1 \tMixer \tHZone_2 \tHZone_4 \tHZone_6 \tHZone_8 \tHZone_10 \tHZone_12 \n"); + stubManager.Write("------- \t---------\t---------\t---------\t---------\t---------\t------- \t------- \t------- \t-----------\t-----------\t-----------\t-----------\t-----------\n"); + + for (int j = 0; j < 1; j++) + { + for (int i = 12; i < 26; i++)//12 + { + + //if(((i ==12) || (i ==26 ) ) && (j==0)) + + + + var response = stubManager.Run<StubTempSensorResponse>("StubTempSensorRequest" , i);// not in use only for compilation + /* + //----------------------------------------------------------------- + if(((i == 12) || (i == 20)) && (j == 0) ) + { + + command = 0x8000 + i; + } + else + { + + command = i; + } + var response = stubManager.Run<StubTempSensorResponse>("StubTempSensorRequest" , command); + Thread.Sleep(50); + //---------------------------------------------------------------------------- + */ + //var response = stubManager.Run<StubTempSensorResponse>("StubTempSensorRequest" ,/*0x100 +*/ i); //Add 0x100 for internal temperature + + float ftemp = (float)response.TemperatureCMultBy100; + ftemp = ftemp / 100; + + stubManager.Write(ftemp.ToString("F2")); + stubManager.Write("°C\t"); + +/* +stubManager.WriteHex(response.TemperatureCMultBy100,6); + stubManager.Write("\t");*/ + } + stubManager.Write("\n"); + Thread.Sleep(1000); + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing_new2.cs b/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing_new2.cs new file mode 100644 index 000000000..400a0d421 --- /dev/null +++ b/Software/Stubs Collection/stubs/Head_card_PT100__Horizontal_Printing_new2.cs @@ -0,0 +1,49 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; + +using Tango.Stubs; +using Tango.PMR.Printing; +using Tango.PMR.Hardware; + + +public void OnExecute(StubManager stubManager) +{ + + stubManager.Write("\n"); + stubManager.Write("HZone_1 \tHZone_3 \tHZone_5 \tHZone_7 \tHZone_9 \tHZone_11\tHAir_1 \tMixer \tHZone_2 \tHZone_4 \tHZone_6 \tHZone_8 \tHZone_10 \tHZone_12 \n"); + stubManager.Write("------- \t---------\t---------\t---------\t---------\t---------\t------- \t------- \t------- \t-----------\t-----------\t-----------\t-----------\t-----------\n"); + + for (int j = 0; j < 1; j++) + { + for (int i = 12; i < 26; i++) + { + + if(((i == 12) || (i == 20)) && (j == 0) ) + { + stubManager.Run<StubTempSensorResponse>("StubTempSensorRequest" , 0x8000 + i);//read odd (12+) and even (20+) + } + var response = stubManager.Run<StubTempSensorResponse>("StubTempSensorRequest" , i);//get from the buffer + + + float ftemp = (float)response.TemperatureCMultBy100; + ftemp = ftemp / 100; + + stubManager.Write(ftemp.ToString("F2")); + stubManager.Write("°C\t"); + + /* to display the data in hex - need also to unmark the lines in the embedded code + stubManager.WriteHex(response.TemperatureCMultBy100,6); + stubManager.Write("\t");*/ + } + stubManager.Write("\n"); + Thread.Sleep(1000); + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Head_i2c_functions.cs b/Software/Stubs Collection/stubs/Head_i2c_functions.cs new file mode 100644 index 000000000..f676ba592 --- /dev/null +++ b/Software/Stubs Collection/stubs/Head_i2c_functions.cs @@ -0,0 +1,27 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + // Request ---- + // Int32 : Amount + // Int32 : Delay + + // Response ---- + // Double : Progress + var response = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCA1401);//Turn on mixer (hrater ID on/off) + + Thread.Sleep(5000); + + var response1 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCA1400);//Turn OFF mixer + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/Heat I2C ACT test.cs b/Software/Stubs Collection/stubs/Heat I2C ACT test.cs new file mode 100644 index 000000000..1ad3a8f74 --- /dev/null +++ b/Software/Stubs Collection/stubs/Heat I2C ACT test.cs @@ -0,0 +1,33 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + + + var response2 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCAF101);//Actuators: ID, power, Direction + Thread.Sleep(100); + var response3 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCAF111);//Actuators: ID, power, Direction + Thread.Sleep(3000); + var response4 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCAF100);//Actuators: ID, power, Direction + Thread.Sleep(100); + var response5 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCAF110);//Actuators: ID, power, Direction + Thread.Sleep(3000); + var response6 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCAF001);//Actuators: ID, power, Direction + Thread.Sleep(100); + var response7 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCAF011);//Actuators: ID, power, Direction + Thread.Sleep(3000); + var response8 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCAF000);//Actuators: ID, power, Direction + Thread.Sleep(100); + var response9 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xFEAD, 0xCAF010);//Actuators: ID, power, Direction + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/I2C_RW_Main_Card_EEPROM_Save_Main_SN.cs b/Software/Stubs Collection/stubs/I2C_RW_Main_Card_EEPROM_Save_Main_SN.cs new file mode 100644 index 000000000..6ec538758 --- /dev/null +++ b/Software/Stubs Collection/stubs/I2C_RW_Main_Card_EEPROM_Save_Main_SN.cs @@ -0,0 +1,98 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +//---------------------- +const Int32 I2C_ID = 2; //MCU_I2C2 + +const Int32 I2C_Slave_Add = 0xA0; //Slave (EEPROM) address + +string str = "UM181700004";//main card S/N + +uint length = 11; +int i = 0; + +//---------------------- + +int adc_write(uint I2C_Slave_Add) +{ + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; + + UInt32 uInt32 = new UInt32(); + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + //-------------------------------------------------------------- + + for(i=0;i<length;i++) + stubI2CWriteBytesRequest.BytesTWrite.Add(str[i]);//Data 0 to write + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + +int adc_set_for_read_ch(uint I2C_Slave_Add) +{ + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; + + + UInt32 uInt32 = new UInt32(); + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + +int adc_read_ch(uint I2C_Slave_Add) +{ + StubI2CReadBytesRequest stubI2CReadBytesRequest = new StubI2CReadBytesRequest(); + stubI2CReadBytesRequest.I2CId = I2C_ID; + stubI2CReadBytesRequest.SlaveAddress = I2C_Slave_Add + 1; + stubI2CReadBytesRequest.NumberOfBytesToRead = length; // Number of bytes to read + + var response1 = stubManager.Run<StubI2CReadBytesResponse>(stubI2CReadBytesRequest); + uint temph=0; + + for(int i=0; i<stubI2CReadBytesRequest.NumberOfBytesToRead;i++) + { + temph=response1.ReadBytes[i]; + stubManager.Write((char) temph); + } + + return 1; +} + + +public void OnExecute(StubManager stubManager) +{ + + for (int i = 0; i<1; i++) + { + + adc_write(I2C_Slave_Add); + Thread.Sleep(5); //Sleep for 5 milli. - must! otherwise read 0xff (See data sheet ) + stubManager.Write("\n"); + + stubManager.Write("The eeprom data: "); + adc_set_for_read_ch(I2C_Slave_Add); + + adc_read_ch(I2C_Slave_Add); + + Thread.Sleep(1000); + + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/I2C_RW_Main_EEPROM_AVI _support_string.cs b/Software/Stubs Collection/stubs/I2C_RW_Main_EEPROM_AVI _support_string.cs new file mode 100644 index 000000000..00064ec7f --- /dev/null +++ b/Software/Stubs Collection/stubs/I2C_RW_Main_EEPROM_AVI _support_string.cs @@ -0,0 +1,109 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +//---------------------- +const Int32 I2C_ID = 2; //MCU_I2C2 + +const Int32 I2C_Slave_Add = 0xA0; // /Slave (EEPROM) address + +//---------------------- + +int adc_write(uint I2C_Slave_Add) +{ + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; + + UInt32 uInt32 = new UInt32(); + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + //-------------------------------------------------------------- + stubI2CWriteBytesRequest.BytesTWrite.Add(0x12);//Data 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('B');//Data 1 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('C');//Data 2 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('D');//Data 3 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('E');//Data 4 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('F');//Data 5 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('G');//Data 6 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('H');//Data 7 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('I');//Data 8 to write + stubI2CWriteBytesRequest.BytesTWrite.Add('J');//Data 9 to write + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + +int adc_set_for_read_ch(uint I2C_Slave_Add) +{ + StubI2CWriteBytesRequest stubI2CWriteBytesRequest = new StubI2CWriteBytesRequest(); + stubI2CWriteBytesRequest.I2CId = I2C_ID; + stubI2CWriteBytesRequest.SlaveAddress = I2C_Slave_Add; + + + UInt32 uInt32 = new UInt32(); + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + stubI2CWriteBytesRequest.BytesTWrite.Add(0);//Byte 0 to write + + var response = stubManager.Run<StubI2CWriteBytesResponse>(stubI2CWriteBytesRequest); + + return 1; +} + +int adc_read_ch(uint I2C_Slave_Add) +{ + StubI2CReadBytesRequest stubI2CReadBytesRequest = new StubI2CReadBytesRequest(); + stubI2CReadBytesRequest.I2CId = I2C_ID; + stubI2CReadBytesRequest.SlaveAddress = I2C_Slave_Add + 1; + stubI2CReadBytesRequest.NumberOfBytesToRead = 10; // Number of bytes to read + + var response1 = stubManager.Run<StubI2CReadBytesResponse>(stubI2CReadBytesRequest); + uint temph=0; + + for(int i=0; i<stubI2CReadBytesRequest.NumberOfBytesToRead;i++) + { + temph=response1.ReadBytes[i]; + //stubManager.WriteHex(temph,2); + if(((temph>='A') && (temph<='Z')) || ((temph>='a') && (temph<='z'))) + { + stubManager.Write((char) temph); + } + else + { + stubManager.WriteHex(temph,2); + } + stubManager.Write(" "); + } + + return 1; +} + + +public void OnExecute(StubManager stubManager) +{ + + for (int i = 0; i<1; i++) + { + + adc_write(I2C_Slave_Add); + Thread.Sleep(5); //Sleep for 5 milli. - must! otherwise read 0xff (See data sheet ) + stubManager.Write("\n"); + //stubManager.Write(i); + stubManager.Write("The Buffer is: "); + adc_set_for_read_ch(I2C_Slave_Add); + //Thread.Sleep(1); //Sleep for 10 milli. + adc_read_ch(I2C_Slave_Add); + + Thread.Sleep(1000); + + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/WD test.cs b/Software/Stubs Collection/stubs/WD test.cs new file mode 100644 index 000000000..f740ad54a --- /dev/null +++ b/Software/Stubs Collection/stubs/WD test.cs @@ -0,0 +1,49 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ +/* +stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"N", 6, false); +stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"N", 6, true); + +stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"H", 4, false); +stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"H", 4, true); + +stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"F", 6, false); +stubManager.Run<StubGPIOWriteBitResponse>("StubGPIOWriteBitRequest" ,"F", 6, true); +*/ + + for (int i = 0; i < 1; i++) + { + + + var response = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,0x60000000 + 0x160); + var response1 = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,0x60000400 + 0x140); + var response2 = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,0x60000800 + 0x140); + stubManager.WriteLineHex(response.Value,4); + stubManager.WriteLineHex(response1.Value,4); + stubManager.WriteLineHex(response2.Value,4); + stubManager.WriteLine(""); + + var response3 = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,0x60000000 + 0x0B2); + var response4 = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,0x60000000 + 0x0C2); + var response5 = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,0x60000400 + 0x0B2); + var response6 = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,0x60000800 + 0x0B2); + stubManager.WriteLineHex(response3.Value,4); + stubManager.WriteLineHex(response4.Value,4); + stubManager.WriteLineHex(response5.Value,4); + stubManager.WriteLineHex(response6.Value,4); + + Thread.Sleep(1000); //Sleep for 1000 milli. + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/head_card_fan_test.cs b/Software/Stubs Collection/stubs/head_card_fan_test.cs new file mode 100644 index 000000000..95c3825e0 --- /dev/null +++ b/Software/Stubs Collection/stubs/head_card_fan_test.cs @@ -0,0 +1,26 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ +// Request ---- +// Int32 : Amount +// Int32 : Delay + +// Response ---- +// Double : Progress +var response = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xfac0, 0x00);//Fan Click Head Card , Fan 1 Setting - 0xFF Full PWM 0x80 = 50% FF = 100% 0 - STOP +stubManager.WriteLineHex(response.Progress,2);//100% = 0xDC0, 50% = 0x1790, 0% = 0xFFF0 + +var response1 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xfac1, 0x00);//Fan Click Head Card , Fan 1 Setting - 0xFF Full PWM 0x80 = 50% FF = 100% 0 - STOP +stubManager.WriteLineHex(response1.Progress,2);//100% = 0xDC0, 50% = 0x1790, 0% = 0xFFF0 +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/midtank calibration/Midtankcalibration.cs b/Software/Stubs Collection/stubs/midtank calibration/Midtankcalibration.cs new file mode 100644 index 000000000..9a82365e1 --- /dev/null +++ b/Software/Stubs Collection/stubs/midtank calibration/Midtankcalibration.cs @@ -0,0 +1,69 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.EmbeddedParameters; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + +MidTankDataSetupRequest midTankDataSetupRequest = new MidTankDataSetupRequest(); + +MidTankData midTankData = new MidTankData(); +midTankData.MidTankId = 0; +midTankData.InitialOffsetA =2.54414609375 ; +midTankData.SlopeB = 0.915453384418902 ; + +MidTankData midTankData1 = new MidTankData(); +midTankData1.MidTankId = 1; +midTankData1.InitialOffsetA = 2.53565 ; +midTankData1.SlopeB = 0.912075327649828; + +MidTankData midTankData2 = new MidTankData(); +midTankData2.MidTankId = 2; +midTankData2.InitialOffsetA = 2.96895078125 ; +midTankData2.SlopeB = 0.92228512609367; + +MidTankData midTankData3 = new MidTankData(); +midTankData3.MidTankId = 3; +midTankData3.InitialOffsetA = 2.9264703125 ; +midTankData3.SlopeB = 0.939819063852105; + +MidTankData midTankData4 = new MidTankData(); +midTankData4.MidTankId = 4; +midTankData4.InitialOffsetA = 2.614946875 ; +midTankData4.SlopeB = 0.92573937750226; + +MidTankData midTankData5 = new MidTankData(); +midTankData5.MidTankId = 5; +midTankData5.InitialOffsetA = 2.1561578125; +midTankData5.SlopeB = 0; + +MidTankData midTankData6 = new MidTankData(); +midTankData6.MidTankId = 6; +midTankData6.InitialOffsetA = 2.8924859375; +midTankData6.SlopeB = 0.932726089785296; + +MidTankData midTankData7 = new MidTankData(); +midTankData7.MidTankId = 7; +midTankData7.InitialOffsetA = 2.92080625; +midTankData7.SlopeB = 0.919540229; + +midTankDataSetupRequest.MidTankInfo.Add(midTankData); +midTankDataSetupRequest.MidTankInfo.Add(midTankData1); +midTankDataSetupRequest.MidTankInfo.Add(midTankData2); +midTankDataSetupRequest.MidTankInfo.Add(midTankData3); +midTankDataSetupRequest.MidTankInfo.Add(midTankData4); +midTankDataSetupRequest.MidTankInfo.Add(midTankData5); +midTankDataSetupRequest.MidTankInfo.Add(midTankData6); +midTankDataSetupRequest.MidTankInfo.Add(midTankData7); + +var response = stubManager.Run<MidTankDataSetupResponse>(midTankDataSetupRequest); + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/midtank calibration/read_midtank_calibration.cs b/Software/Stubs Collection/stubs/midtank calibration/read_midtank_calibration.cs new file mode 100644 index 000000000..469772888 --- /dev/null +++ b/Software/Stubs Collection/stubs/midtank calibration/read_midtank_calibration.cs @@ -0,0 +1,37 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + int i; + + for(i=0;i<8;i++) + { + + var response = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xA, i); + stubManager.Write("\n Initial_Offset_A [#"); + stubManager.Write(i); + stubManager.Write("] = "); + stubManager.WriteLine(response.Progress); + } + + for(i=0;i<8;i++) + { + var response1 = stubManager.Run<ProgressResponse>("ProgressRequest" ,0xB, i); + stubManager.Write("\n Slope_B [#"); + stubManager.Write(i); + stubManager.Write("] = "); + stubManager.WriteLine(response1.Progress); + } + + +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/powestep01_change_mode.cs b/Software/Stubs Collection/stubs/powestep01_change_mode.cs new file mode 100644 index 000000000..75939ea87 --- /dev/null +++ b/Software/Stubs Collection/stubs/powestep01_change_mode.cs @@ -0,0 +1,25 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + + +Int32 i = 6; // to run only for specific motor + +public void OnExecute(StubManager stubManager) +{ + for (i = 6; i < 14; i++) + { + //stubManager.Run<ProgressResponse>("ProgressRequest" ,0x01, 0x010000 + (i<<8) + 0x00); //change motor driver 25 to voltage mode; + stubManager.Run<ProgressResponse>("ProgressRequest" ,0x01, 0x010000 + (i<<8) + 0x08); //change motor driver 06 to current mode; + Thread.Sleep(10); //Sleep for 10 milli. + + } +}
\ No newline at end of file diff --git a/Software/Stubs Collection/stubs/test_reg_readback.cs b/Software/Stubs Collection/stubs/test_reg_readback.cs new file mode 100644 index 000000000..d5ef91a3b --- /dev/null +++ b/Software/Stubs Collection/stubs/test_reg_readback.cs @@ -0,0 +1,20 @@ +using System; +using System.Text; +using System.Linq; +using System.Drawing; +using System.Diagnostics; +using System.Windows.Forms; +using System.Threading; +using System.Threading.Tasks; +using System.Collections.Generic; +using Tango.PMR.Stubs; +using Tango.Stubs; + +public void OnExecute(StubManager stubManager) +{ + +var response = stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,0x60000000 + 0x3F0, 0xAAAA); + +var response1 = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,0x60000000 + 0x3F0); +stubManager.WriteLineHex(response1.Value,4); +}
\ No newline at end of file |
