1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
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;
include "..\..\Defines\Tango_Defines_Basic.cs"
include "Tango_Defines_LimitSwitch.cs"
//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\LAB_Tests\Main_PCB\ATP_Test\Scripts\Defines\Tango_Defines_Basic.cs"
//include "C:\To_Backup\Mulberry\Mulberry_current\Customers\Twine\Tango\LAB_Tests\Main_PCB\ATP_Test\Scripts\Defines\Tango_Defines_LimitSwitch.cs"
//MF 23092018 2 spare LS not include
const Int32 F3_CARTx_PRES_02_Direct = 0x60000870;
const Int32 F3_LOW_Cart_Led1 = 0x60000ba4;
const Int32 F3_High_Cart_Led1 = 0x60000ba6;
const Int32 F3_LOW_Cart_Led2 = 0x60000ba8;
const Int32 F3_High_Cart_Led2 = 0x60000baa;
const Int32 F3_LOW_Cart_Led3 = 0x60000bac;
const Int32 F3_High_Cart_Led3 = 0x60000bae;
const Int32 F3_PreScalar_Leds = 0x60000be8;
public void OnExecute(StubManager stubManager)
{
uint Temp = 0;
uint Temp1 = 0;
int counter = 0;
stubManager.Write("\nReading register F3_CARTx_PRES_02_Direct: ");
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led1,100);//Low 8 bit
var response = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,F3_PreScalar_Leds,250);
stubManager.WriteHex(response.Value,4);
Temp = response.Value;
stubManager.Write("\nActivate limit switches one-by-one");
while ( counter != 1000)
{
response = stubManager.Run<StubFpgaReadRegResponse>("StubFpgaReadRegRequest" ,F3_CARTx_PRES_02_Direct);
if (response.Value != Temp)
{
stubManager.WriteHex(response.Value,4);
Temp1=response.Value & 0x080;
if (Temp1 ==0x0080)
{
stubManager.Write("\nCART1_PRES");
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led1,255);//Low 8 bit
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_High_Cart_Led1,255);//High 8 bit
}
Temp1=response.Value & 0x0040;
if (Temp1 ==0x0040)
{
stubManager.Write("\nCART2_PRES");
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led2,255);//Low 8 bit
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_High_Cart_Led2,255);//High 8 bit
}
Temp1=response.Value & 0x0020;
if (Temp1 ==0x0020)
{
stubManager.Write("\nCART3_PRES");
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led3,255);//Low 8 bit
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_High_Cart_Led3,255);//High 8 bit
}
counter = counter + 1;
}
Thread.Sleep(1000);
Temp = response.Value;
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led1,10);//Low 8 bit
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_High_Cart_Led1,1);//High 8 bit
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led2,10);//Low 8 bit
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_High_Cart_Led2,1);//High 8 bit
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_LOW_Cart_Led3,10);//Low 8 bit
stubManager.Run<StubFpgaWriteRegResponse>("StubFpgaWriteRegRequest" ,F3_High_Cart_Led3,1);//High 8 bit
}
}
|