aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/PPC/Tango.PPC.Common/UpdatePackages/IPPCPackage.cs
blob: d9dc70135c47628a8c8ddff82dbacd40cfb1d215 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Tango.PPC.Common.UpdatePackages
{
    public interface IPPCPackage
    {
        Task Run(PackageContext context);
    }
}
/ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
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;

include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\Software\Stub_scripts\Tango_Defines_Basic.cs"
include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\Software\Stub_scripts\Interfaces\Tango_Defines_GPI.cs"


int MidtankFloat(Int32 Fpga, Int32 Addr)
{

	string[] BitsToCheck = { "rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd",	"rsvd"};
	var RetVal = Fpga_Read_Reg(Fpga, Addr, 0);
	
	if ( (Fpga == FPGA3) && (Addr == F3_MIDTANK_01_Direct))
	{
		BitsToCheck = F3_MIDTANK_01_Bits;
		
	}
	else if ( (Fpga == FPGA3) && (Addr == F3_MIDTANK_02_Direct))
	{
		BitsToCheck = F3_MIDTANK_02_Bits;
	}	
		
	for (int i=0; i<16; i++)
	{
		
		if ( ( RetVal.Value & (0x1<<i)) == (0x1<<i))
		{
			stubManager.Write("\n\t\t\tGPI activated: ");
			stubManager.Write(BitsToCheck[i]);
			stubManager.Write("\t\t\tBit no.: ");
			stubManager.Write(i);
			//stubManager.Write("\n");
		}
		
	}
	
	return 1;
}	
                             	
                            

public void OnExecute(StubManager stubManager)
{
 	
	for (int i=0; i<10000; i++)
		{
			
			//stubManager.Write("\nIndex =");
			//stubManager.Write(i);
			Thread.Sleep(1000);
			
			stubManager.Write("\nScanning: F3_MIDTANK_01_Direct");
			MidtankFloat(FPGA3, F3_MIDTANK_01_Direct);
			stubManager.Write("\n\n");
			
			
			stubManager.Write("\nScanning: F3_MIDTANK_02_Direct");
			MidtankFloat(FPGA3, F3_MIDTANK_02_Direct);
			stubManager.Write("\n\n");
				
		}
}