Add Comments, Bug Fix
This commit is contained in:
Binary file not shown.
@@ -1,16 +1,16 @@
|
||||
{
|
||||
"Version": 1,
|
||||
"WorkspaceRootPath": "D:\\WORK\\ManLin\\Verify\\Prometheus\\1KS_FT_EngineeringMachine\\UserProgram_time\\",
|
||||
"WorkspaceRootPath": "D:\\WORK\\ManLin\\Verify\\UserProgram_time\\",
|
||||
"Documents": [
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{E96B1A19-D109-4F67-B1AA-5BF15E580D77}|Testrong.User.Program\\Testrong.User.Program.csproj|d:\\work\\manlin\\verify\\prometheus\\1ks_ft_engineeringmachine\\userprogram_time\\testrong.user.program\\userprogram.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"AbsoluteMoniker": "D:0:0:{E96B1A19-D109-4F67-B1AA-5BF15E580D77}|Testrong.User.Program\\Testrong.User.Program.csproj|d:\\work\\manlin\\verify\\userprogram_time\\testrong.user.program\\userprogram.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{E96B1A19-D109-4F67-B1AA-5BF15E580D77}|Testrong.User.Program\\Testrong.User.Program.csproj|solutionrelative:testrong.user.program\\userprogram.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{A2FE74E1-B743-11D0-AE1A-00A0C90FFFC3}|\u003CMiscFiles\u003E|C:\\ProgramData\\Testrong\\ATE_Tester\\setting\\NLog.config||{FA3CD31E-987B-443A-9B81-186104E8DAC1}"
|
||||
},
|
||||
{
|
||||
"AbsoluteMoniker": "D:0:0:{E96B1A19-D109-4F67-B1AA-5BF15E580D77}|Testrong.User.Program\\Testrong.User.Program.csproj|D:\\WORK\\ManLin\\Verify\\Prometheus\\1KS_FT_EngineeringMachine\\UserProgram_time\\testrong.user.program\\keysight53220a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"AbsoluteMoniker": "D:0:0:{E96B1A19-D109-4F67-B1AA-5BF15E580D77}|Testrong.User.Program\\Testrong.User.Program.csproj|D:\\WORK\\ManLin\\Verify\\UserProgram_time\\testrong.user.program\\keysight53220a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
|
||||
"RelativeMoniker": "D:0:0:{E96B1A19-D109-4F67-B1AA-5BF15E580D77}|Testrong.User.Program\\Testrong.User.Program.csproj|solutionrelative:testrong.user.program\\keysight53220a.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
|
||||
}
|
||||
],
|
||||
@@ -21,8 +21,12 @@
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 2,
|
||||
"SelectedChildIndex": 3,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
@@ -37,9 +41,9 @@
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 2,
|
||||
"Title": "Keysight53220A.cs",
|
||||
"DocumentMoniker": "D:\\WORK\\ManLin\\Verify\\Prometheus\\1KS_FT_EngineeringMachine\\UserProgram_time\\Testrong.User.Program\\Keysight53220A.cs",
|
||||
"DocumentMoniker": "D:\\WORK\\ManLin\\Verify\\UserProgram_time\\Testrong.User.Program\\Keysight53220A.cs",
|
||||
"RelativeDocumentMoniker": "Testrong.User.Program\\Keysight53220A.cs",
|
||||
"ToolTip": "D:\\WORK\\ManLin\\Verify\\Prometheus\\1KS_FT_EngineeringMachine\\UserProgram_time\\Testrong.User.Program\\Keysight53220A.cs",
|
||||
"ToolTip": "D:\\WORK\\ManLin\\Verify\\UserProgram_time\\Testrong.User.Program\\Keysight53220A.cs",
|
||||
"RelativeToolTip": "Testrong.User.Program\\Keysight53220A.cs",
|
||||
"ViewState": "AQIAAHMAAAAAAAAAAAAYwKkAAAAiAAAA",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
@@ -49,11 +53,11 @@
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 0,
|
||||
"Title": "UserProgram.cs",
|
||||
"DocumentMoniker": "D:\\WORK\\ManLin\\Verify\\Prometheus\\1KS_FT_EngineeringMachine\\UserProgram_time\\Testrong.User.Program\\UserProgram.cs",
|
||||
"DocumentMoniker": "D:\\WORK\\ManLin\\Verify\\UserProgram_time\\Testrong.User.Program\\UserProgram.cs",
|
||||
"RelativeDocumentMoniker": "Testrong.User.Program\\UserProgram.cs",
|
||||
"ToolTip": "D:\\WORK\\ManLin\\Verify\\Prometheus\\1KS_FT_EngineeringMachine\\UserProgram_time\\Testrong.User.Program\\UserProgram.cs*",
|
||||
"RelativeToolTip": "Testrong.User.Program\\UserProgram.cs*",
|
||||
"ViewState": "AgIAAOADAAAAAAAAAAAQwPUDAAAYAAAAAAAAAA==",
|
||||
"ToolTip": "D:\\WORK\\ManLin\\Verify\\UserProgram_time\\Testrong.User.Program\\UserProgram.cs",
|
||||
"RelativeToolTip": "Testrong.User.Program\\UserProgram.cs",
|
||||
"ViewState": "AgIAAH8KAAAAAAAAAAAowK4KAAA3AAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2024-06-18T12:27:43.78Z",
|
||||
"EditorCaption": ""
|
||||
|
||||
@@ -21,8 +21,12 @@
|
||||
"DocumentGroups": [
|
||||
{
|
||||
"DockedWidth": 200,
|
||||
"SelectedChildIndex": 2,
|
||||
"SelectedChildIndex": 3,
|
||||
"Children": [
|
||||
{
|
||||
"$type": "Bookmark",
|
||||
"Name": "ST:0:0:{1c4feeaa-4718-4aa9-859d-94ce25d182ba}"
|
||||
},
|
||||
{
|
||||
"$type": "Document",
|
||||
"DocumentIndex": 1,
|
||||
@@ -53,7 +57,7 @@
|
||||
"RelativeDocumentMoniker": "Testrong.User.Program\\UserProgram.cs",
|
||||
"ToolTip": "D:\\WORK\\ManLin\\Verify\\UserProgram_time\\Testrong.User.Program\\UserProgram.cs",
|
||||
"RelativeToolTip": "Testrong.User.Program\\UserProgram.cs",
|
||||
"ViewState": "AgIAALAKAAAAAAAAAAAQwMUKAAApAAAAAAAAAA==",
|
||||
"ViewState": "AgIAABYMAAAAAAAAAAAAwCcMAAAeAAAAAAAAAA==",
|
||||
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
|
||||
"WhenOpened": "2024-06-18T12:27:43.78Z",
|
||||
"EditorCaption": ""
|
||||
|
||||
@@ -1,39 +1,24 @@
|
||||
using System.Collections.Generic;
|
||||
using ExternalCalibration;
|
||||
using Newtonsoft.Json;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Runtime.Remoting.Contexts;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using Testrong.Core.Common;
|
||||
using Testrong.Core.Communicate;
|
||||
using Testrong.Core.Primitives.Extend;
|
||||
using Testrong.Core.Primitives;
|
||||
using Testrong.Core.Model.ACTiming;
|
||||
using Testrong.Core.Model.ChannelMap;
|
||||
using Testrong.Core.Model.Dps;
|
||||
using Testrong.Core.Model.Enums;
|
||||
using Testrong.Core.Model.Pattern;
|
||||
using Testrong.Core.Model.Ppmu;
|
||||
using Testrong.Core.Model.Relay;
|
||||
using Testrong.Core.Primitives.TestrongSystem;
|
||||
using Testrong.Core.Model.Dps;
|
||||
using Testrong.Core.Model.ChannelMap;
|
||||
using Testrong.Core.Model.Pattern;
|
||||
using Testrong.Core.Model.Enums;
|
||||
using Testrong.Core.Model.ACTiming;
|
||||
using Testrong.Core.Primitives.Interface;
|
||||
using System;
|
||||
using System.Text;
|
||||
using System.IO;
|
||||
using System.Threading;
|
||||
using ExternalCalibration;
|
||||
using System.Runtime.Remoting.Contexts;
|
||||
using System.Collections;
|
||||
using Testrong.Core.Model;
|
||||
using System.Globalization;
|
||||
using Testrong.Core.Primitives.TestrongSystem.Obsolete;
|
||||
using System.ComponentModel;
|
||||
using System.Xml.Linq;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using Testrong.Core.Model.Binning;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Xml.Serialization;
|
||||
using System.Diagnostics.Contracts;
|
||||
using Testrong.Core.Primitives;
|
||||
using Testrong.Core.Primitives.Extend;
|
||||
using Testrong.Core.Primitives.Service.AcTiming;
|
||||
using System.Data.SqlClient;
|
||||
using System.Text.RegularExpressions;
|
||||
using Testrong.Core.Primitives.TestrongSystem;
|
||||
|
||||
namespace Testrong.User.Program
|
||||
{
|
||||
@@ -480,8 +465,8 @@ namespace Testrong.User.Program
|
||||
List<TestInfoSet> TestInfo = new List<TestInfoSet>();
|
||||
int port = 200;
|
||||
string ksightConnStr = "GPIB1::22::INSTR";
|
||||
#endregion
|
||||
TestVersion SelectTestVersion = Select_Version[Readjson(CONFIG_JSON_PATH).Version];
|
||||
#endregion
|
||||
|
||||
#region 函数定义
|
||||
|
||||
@@ -496,7 +481,23 @@ namespace Testrong.User.Program
|
||||
return get;
|
||||
}
|
||||
|
||||
public void metadata_handler(StreamWriter swdata,int SlotNum, List<int> slotList, string arm_dna, IFlowRunnerContext context, bool init_Flag, string Type = "NULL", int Channel = -1, string Mode = "NULL", string Rload = "NaN", string Range = "N/A", string filepath = "N/A", string filetime = "N/A")
|
||||
|
||||
/*
|
||||
* StreamWriter swdata: File Handler, Should be Initialized ahead,
|
||||
* int SlotNum: Current Slot Number,
|
||||
* List<int> slotList: Slot List,
|
||||
* string arm_dna: DNA Data from Zynq,
|
||||
* IFlowRunnerContext context: info from ATE Software,
|
||||
* bool init_Flag: choose from Header to Body| True=Header/False=Body,
|
||||
* string Type:[OPTIONAL] Only need if init_Flag==False, Channel Type, Possible Value="PMU","DPS", "NULL"(Default),
|
||||
* int Channel:[OPTIONAL] Only need if init_Flag==False, Channel Number, Default = -1,
|
||||
* string Mode:[OPTIONAL] Only need if init_Flag==False, Test Mode, Possible Value="FVMV","FVMI","FIMV","FIMI","FZMV"(PMU Only), "NULL"(Default),
|
||||
* string Rload:[OPTIONAL] Only need if init_Flag==False,Resistance Load, Default = "NaN",
|
||||
* string Range:[OPTIONAL] Only need if init_Flag==False,Range, Possible Value="5uA", "20uA", "200uA", "2mA", "60mA", "1A"(DPS Only), Default = "N/A",
|
||||
* string filepath:[OPTIONAL] Only need if init_Flag==False, CSV File Path, Default = "N/A",
|
||||
* string filetime:[OPTIONAL] Only need if init_Flag==False, CSV File Creation Time, Default = "N/A"
|
||||
*/
|
||||
public void Metadata_handler(StreamWriter swdata, int SlotNum, List<int> slotList, string arm_dna, IFlowRunnerContext context, bool init_Flag, string Type = "NULL", int Channel = -1, string Mode = "NULL", string Rload = "NaN", string Range = "N/A", string filepath = "N/A", string filetime = "N/A")
|
||||
{
|
||||
//Are We Writing the header of MetaData?
|
||||
if (init_Flag == true)
|
||||
@@ -604,6 +605,11 @@ namespace Testrong.User.Program
|
||||
else return -1;
|
||||
}
|
||||
|
||||
private int GetDPSTempSensorIndex(int channel)
|
||||
{
|
||||
return ((channel-1)/4);
|
||||
}
|
||||
|
||||
public int GetFileSize(string path)
|
||||
{
|
||||
System.IO.FileInfo fileInfo = null;
|
||||
@@ -642,7 +648,8 @@ namespace Testrong.User.Program
|
||||
foreach (FileInfo file in di.EnumerateFiles())
|
||||
{
|
||||
file.Delete();
|
||||
};
|
||||
}
|
||||
;
|
||||
}
|
||||
private string[] GetAllPmuPins()
|
||||
{
|
||||
@@ -830,15 +837,16 @@ namespace Testrong.User.Program
|
||||
* double[] ForceValue: ForceValue
|
||||
* double[] AteMeasure: ATE Measure Value
|
||||
* double[] DmmMeasure: DMM Measure Value
|
||||
* double[] TempValue: Temperature Value(May Not Available)
|
||||
*/
|
||||
public void WriteSingleFile(string filename,int slot, string dna, string type,int channel, string mode, string rload, double[,] extR, string range, double[] ForceValue, double[] AteMeasure, double[] DmmMeasure)
|
||||
public void WriteSingleFile(string filename, int slot, string dna, string type, int channel, string mode, string rload, double[,] extR, string range, double[] ForceValue, double[] AteMeasure, double[] DmmMeasure, double[] TempValue)
|
||||
{
|
||||
StreamWriter sw = new StreamWriter(filename, true, Encoding.UTF8);
|
||||
sw.AutoFlush = true;
|
||||
sw.Write("Tester_Name,Foo\n");
|
||||
sw.Write($"Slot_No,{slot}\n");
|
||||
sw.Write($"Board_Dna,{dna}\n");
|
||||
sw.Write("Channel_Type,{type}\n");
|
||||
sw.Write($"Channel_Type,{type}\n");
|
||||
sw.Write($"Channel_No,{channel}\n");
|
||||
sw.Write($"Mode,{mode}\n");
|
||||
sw.Write($"R_Load,{rload}\n");
|
||||
@@ -895,7 +903,7 @@ namespace Testrong.User.Program
|
||||
sw.Write($"{(DmmMeasure[writeLine] / Convert.ToDouble(rload)):F15},");
|
||||
}
|
||||
}
|
||||
sw.Write($"{0:F8}\n");
|
||||
sw.Write($"{TempValue[writeLine]:F8}\n");
|
||||
}
|
||||
sw.Flush();
|
||||
sw.Close();
|
||||
@@ -1296,64 +1304,21 @@ namespace Testrong.User.Program
|
||||
}
|
||||
//-----Start Slot Number-----
|
||||
StreamWriter swdata;
|
||||
if (SlotNum == slotList[0])
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8)
|
||||
{
|
||||
dmm.InitDMM(ksightConnStr);
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8);
|
||||
swdata.AutoFlush = true;
|
||||
swdata.WriteLine("Tester_Name,Board_Id,Slot_Ip,Stil_Version");
|
||||
for (int w = 0; w < 12; w++)
|
||||
{
|
||||
if (w == (slotList[0] - 1))
|
||||
{
|
||||
swdata.WriteLine($"Slot{SlotNum},{arm_dna},{context.Communicator.ServerIP},V1.0.0");
|
||||
}
|
||||
else
|
||||
{
|
||||
swdata.WriteLine($"Slot{(w + 1)}");
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < 1; i++)
|
||||
{
|
||||
swdata.WriteLine();
|
||||
}
|
||||
swdata.Write("Slot_Dna,Channel_Type,Channel_No,Mode,R_Load,I_Range,V_Range,Meas_Range,File_Path,File_Time\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
int Cried = slotList.FindIndex(x => x.Equals(SlotNum));
|
||||
while (true)
|
||||
{
|
||||
Thread.Sleep(1000);
|
||||
if (File.Exists(EXT_CAL_PATH + slotList[Cried - 1] + ".flag")) //Wait until previous thread flags completion
|
||||
{
|
||||
File.Delete(EXT_CAL_PATH + slotList[Cried - 1] + ".flag");
|
||||
break;
|
||||
}
|
||||
}
|
||||
File.Move(METADATA_PATH, EXT_CAL_PATH + "metadata_temp" + ".csv");
|
||||
StreamReader sr = new StreamReader(EXT_CAL_PATH + "metadata_temp" + ".csv", Encoding.UTF8);
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8);
|
||||
swdata.AutoFlush = true;
|
||||
int line = 0;
|
||||
while (!sr.EndOfStream)
|
||||
{
|
||||
string tmp = sr.ReadLine();
|
||||
if (line == slotList[Cried])
|
||||
{
|
||||
swdata.WriteLine("Slot" + SlotNum + "," + arm_dna + "," + context.Communicator.ServerIP + "," + "V1.0.0");
|
||||
}
|
||||
else
|
||||
{
|
||||
swdata.WriteLine(tmp);
|
||||
}
|
||||
line++;
|
||||
}
|
||||
sr.Close();
|
||||
File.Delete(EXT_CAL_PATH + "metadata_temp" + ".csv");
|
||||
dmm.InitDMM(ksightConnStr);
|
||||
}
|
||||
AutoFlush = true
|
||||
};
|
||||
|
||||
Metadata_handler(
|
||||
swdata: swdata,
|
||||
SlotNum: SlotNum,
|
||||
slotList: slotList,
|
||||
arm_dna: arm_dna,
|
||||
context: context,
|
||||
init_Flag: true
|
||||
);
|
||||
|
||||
dmm.InitDMM(ksightConnStr);
|
||||
string filetime = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
|
||||
for (int loopk = 0; loopk < 256; loopk++)
|
||||
{
|
||||
@@ -1364,25 +1329,20 @@ namespace Testrong.User.Program
|
||||
double VoltageStep = VoltageStepDefault;
|
||||
string filepath = "Slot" + SlotNum + "_PMU_" + "ch" + ChannelPmu[loopk] + "_" + "FVMV" + "_" + "Hi-Z" + "_" + "2mA" + ".csv";
|
||||
string filename = EXT_CAL_PATH + filepath;
|
||||
StreamWriter sw = new StreamWriter(filename, true, Encoding.UTF8);
|
||||
int ch = ChannelPmu[loopk];
|
||||
|
||||
sw.AutoFlush = true;
|
||||
sw.Write("Tester_Name,Foo\n");
|
||||
sw.Write($"Slot_No,{SlotNum}\n");
|
||||
sw.Write($"Board_Dna,{arm_dna}\n");
|
||||
sw.Write("Channel_Type,PMU\n");
|
||||
sw.Write($"Channel_No,{ChannelPmu[loopk]}\n");
|
||||
sw.Write($"Mode,FVMV\n");
|
||||
sw.Write($"R_Load,Hi-Z\n");
|
||||
sw.Write($"R_Int,{0}\n");
|
||||
sw.Write($"R_Ext,{ExtBoard_Res[ChannelPmu[loopk] - 1, SlotNum - 1]}\n");
|
||||
sw.Write($"I_Range,2mA\n");
|
||||
sw.Write("V_Range,20V\n");
|
||||
sw.Write("Meas_Range,13V\n");
|
||||
sw.Write("\n");
|
||||
sw.Write("Force Value,ATE Measure,DMM Measure,Temperature\n");
|
||||
StreamWriter sw = new StreamWriter(filename, true, Encoding.UTF8)
|
||||
{
|
||||
AutoFlush = true
|
||||
};
|
||||
|
||||
double[] AteMeasure = new double[SampliCount];
|
||||
double[] ForceValue = new double[SampliCount];
|
||||
double[] DMMValue = new double[SampliCount];
|
||||
double[] TempValue = new double[SampliCount];
|
||||
|
||||
extCaliHandle.SetPpmuExternalCalibration(extConnStr, extPort, SlotNum, ExternalCalibrationMode.Channel, ch, ExtCaliVI.V, ExtCaliLoad.no_load, 0);//change channel
|
||||
|
||||
if (loopk == 0)
|
||||
{
|
||||
DelayHelper.Sleep(20);
|
||||
@@ -1390,31 +1350,60 @@ namespace Testrong.User.Program
|
||||
for (int p = 0; p < SampliCount; p++)
|
||||
{
|
||||
PPMU.Force(PmuPinName, ForceVoltage, PpmuMode.FVMV, PpmuIRange._2mA, VRange.Normal);
|
||||
sw.Write($"{ForceVoltage:F8},");
|
||||
|
||||
Thread.Sleep(20);
|
||||
List<SiteInfo> siList = PPMU.Measure(PmuPinName, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FVMV"), 128, 100);
|
||||
double chResult = GetATEChannelMeasure(siList, PmuPinName);
|
||||
sw.Write($"{chResult:F8},");
|
||||
|
||||
double dmmRead = dmm.GetDmmMeasureData(KeysightDMM3458A.KeysightMeasMode.VOLT, 1, 7.5);//dmm 3458A read
|
||||
sw.Write($"{dmmRead:F8},");
|
||||
|
||||
double[] readTemp = PPMU.ReadTemperature();
|
||||
sw.Write($"{readTemp[GetPMUTempSensorIndex(ChannelPmu[loopk])]:F8}\n");
|
||||
double chTemp = readTemp[GetPMUTempSensorIndex(ch)];
|
||||
|
||||
|
||||
ForceValue[p] = ForceVoltage;
|
||||
AteMeasure[p] = chResult;
|
||||
DMMValue[p] = dmmRead;
|
||||
TempValue[p] = chTemp;
|
||||
ForceVoltage += VoltageStep;
|
||||
}
|
||||
|
||||
PPMU.Force(PmuPinName, 0, PpmuMode.FVMV, PpmuIRange._2mA, VRange.Normal);
|
||||
|
||||
WriteSingleFile(
|
||||
filename: filename,
|
||||
slot: SlotNum,
|
||||
dna: arm_dna,
|
||||
type: "PMU",
|
||||
channel: ch,
|
||||
mode: "FVMV",
|
||||
rload: "Hi-Z",
|
||||
extR: ExtBoard_Res,
|
||||
range: "2mA",
|
||||
ForceValue: ForceValue,
|
||||
AteMeasure: AteMeasure,
|
||||
DmmMeasure: DMMValue,
|
||||
TempValue:TempValue
|
||||
);
|
||||
|
||||
sw.Flush();
|
||||
sw.Close();
|
||||
swdata.Write($"{arm_dna},");
|
||||
swdata.Write("PMU,");
|
||||
swdata.Write($"{ChannelPmu[loopk]},");
|
||||
swdata.Write($"FVMV,");
|
||||
swdata.Write($"Hi-Z,");
|
||||
swdata.Write($"2mA,");
|
||||
swdata.Write("20V,");
|
||||
swdata.Write("13V,");
|
||||
swdata.Write($"{filepath},");
|
||||
swdata.Write($"{filetime}\n");
|
||||
swdata.Flush();
|
||||
|
||||
Metadata_handler(
|
||||
swdata: swdata,
|
||||
SlotNum: SlotNum,
|
||||
slotList: slotList,
|
||||
arm_dna: arm_dna,
|
||||
context: context,
|
||||
init_Flag: false,
|
||||
Type: "PMU",
|
||||
Channel: ch,
|
||||
Mode: "FVMV",
|
||||
Rload: "Hi-Z",
|
||||
Range: "2mA",
|
||||
filepath: filepath,
|
||||
filetime: filetime
|
||||
);
|
||||
}
|
||||
if (SlotNum < slotList[slotList.Count - 1])
|
||||
{
|
||||
@@ -1589,77 +1578,22 @@ namespace Testrong.User.Program
|
||||
}
|
||||
//-----Start Slot Number-----
|
||||
StreamWriter swdata;
|
||||
if (SlotNum == slotList[0])
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8)
|
||||
{
|
||||
AutoFlush = true
|
||||
};
|
||||
Metadata_handler(
|
||||
swdata: swdata,
|
||||
SlotNum: SlotNum,
|
||||
slotList: slotList,
|
||||
arm_dna: arm_dna,
|
||||
context: context,
|
||||
init_Flag:true
|
||||
);
|
||||
dmm.InitDMM(ksightConnStr);
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8);
|
||||
swdata.AutoFlush = true;
|
||||
swdata.WriteLine("Tester_Name,Board_Id,Slot_Ip,Stil_Version");
|
||||
for (int w = 0; w < 12; w++)
|
||||
{
|
||||
if (w == (slotList[0] - 1))
|
||||
{
|
||||
swdata.WriteLine($"Slot{SlotNum},{arm_dna},{context.Communicator.ServerIP},V1.0.0");
|
||||
}
|
||||
else
|
||||
{
|
||||
swdata.WriteLine($"Slot{(w + 1)}");
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < 1; i++)
|
||||
{
|
||||
swdata.WriteLine();
|
||||
}
|
||||
swdata.Write("Slot_Dna,Channel_Type,Channel_No,Mode,R_Load,I_Range,V_Range,Meas_Range,File_Path,File_Time\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
int Cried = slotList.FindIndex(x => x.Equals(SlotNum));
|
||||
while (true)
|
||||
{
|
||||
Thread.Sleep(1000);
|
||||
if (File.Exists(EXT_CAL_PATH + slotList[Cried - 1] + ".flag")) //Wait until previous thread flags completion
|
||||
{
|
||||
File.Delete(EXT_CAL_PATH + slotList[Cried - 1] + ".flag");
|
||||
break;
|
||||
}
|
||||
}
|
||||
File.Move(METADATA_PATH, EXT_CAL_PATH + "metadata_temp" + ".csv");
|
||||
StreamReader sr = new StreamReader(EXT_CAL_PATH + "metadata_temp" + ".csv", Encoding.UTF8);
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8);
|
||||
swdata.AutoFlush = true;
|
||||
int line = 0;
|
||||
while (!sr.EndOfStream)
|
||||
{
|
||||
string tmp = sr.ReadLine();
|
||||
if (line == slotList[Cried])
|
||||
{
|
||||
swdata.WriteLine("Slot" + SlotNum + "," + arm_dna + "," + context.Communicator.ServerIP + "," + "V1.0.0");
|
||||
}
|
||||
else
|
||||
{
|
||||
swdata.WriteLine(tmp);
|
||||
}
|
||||
line++;
|
||||
}
|
||||
sr.Close();
|
||||
File.Delete(EXT_CAL_PATH + "metadata_temp" + ".csv");
|
||||
dmm.InitDMM(ksightConnStr);
|
||||
}
|
||||
extCaliHandle.SetPpmuExternalCalibration(extConnStr, extPort, 1, ExternalCalibrationMode.Channel, 1, ExtCaliVI.V, ExtCaliLoad.RC_RL7, 0);
|
||||
double rload = GetRloadValue(dmm, 2000, 5);
|
||||
string filetime = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
|
||||
Dictionary<int, int> M013_PMU = new Dictionary<int, int>()
|
||||
{
|
||||
{166,114 },
|
||||
{167,113 },
|
||||
{168,112 },
|
||||
{169,111 },
|
||||
{230,242 },
|
||||
{231,241 },
|
||||
{232,240 },
|
||||
{233,239 }
|
||||
};
|
||||
for (int loopk = 0; loopk < 256; loopk++)
|
||||
{
|
||||
double ForceVoltage = -2;
|
||||
@@ -1709,17 +1643,22 @@ namespace Testrong.User.Program
|
||||
PPMU.Force(PmuPinName, 0, PpmuMode.FVMV, PpmuIRange._2mA, VRange.Normal);
|
||||
sw.Flush();
|
||||
sw.Close();
|
||||
swdata.Write($"{arm_dna},");
|
||||
swdata.Write("PMU,");
|
||||
swdata.Write($"{ChannelPmu[loopk]},");
|
||||
swdata.Write($"FVMV,");
|
||||
swdata.Write($"{rload},");
|
||||
swdata.Write($"2mA,");
|
||||
swdata.Write("20V,");
|
||||
swdata.Write("13V,");
|
||||
swdata.Write($"{filepath},");
|
||||
swdata.Write($"{filetime}\n");
|
||||
swdata.Flush();
|
||||
|
||||
Metadata_handler(
|
||||
swdata: swdata,
|
||||
SlotNum: SlotNum,
|
||||
slotList: slotList,
|
||||
arm_dna: arm_dna,
|
||||
context: context,
|
||||
init_Flag: false,
|
||||
Type: "PMU",
|
||||
Channel: ch,
|
||||
Mode: "FVMV",
|
||||
Rload: rload.ToString(),
|
||||
Range: "2mA",
|
||||
filepath: filepath,
|
||||
filetime: filetime
|
||||
);
|
||||
}
|
||||
swdata.Flush();
|
||||
swdata.Close();
|
||||
@@ -2234,12 +2173,14 @@ namespace Testrong.User.Program
|
||||
throw ex;
|
||||
}
|
||||
//-----Start Slot Number-----
|
||||
//Write Meta DATA
|
||||
// Write MetaData.csv Header
|
||||
StreamWriter swdata;
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8);
|
||||
swdata.AutoFlush = true;
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8)
|
||||
{
|
||||
AutoFlush = true
|
||||
};
|
||||
|
||||
metadata_handler(
|
||||
Metadata_handler(
|
||||
swdata: swdata,
|
||||
SlotNum: SlotNum,
|
||||
slotList: slotList,
|
||||
@@ -2270,6 +2211,9 @@ namespace Testrong.User.Program
|
||||
Dictionary<int, double[]> AteMeasureDir = new Dictionary<int, double[]>();
|
||||
Dictionary<int, double[]> ForceValueDir = new Dictionary<int, double[]>();
|
||||
Dictionary<int, double[]> DmmMeasureDir = new Dictionary<int, double[]>();
|
||||
Dictionary<int, double[]> TempValueDir = new Dictionary<int, double[]>();
|
||||
|
||||
|
||||
List<int> testCh = new List<int>();
|
||||
ExtCaliLoad Rcut = (Mode == "FVMV") ? ExtCaliLoad.no_load : Rcut_MIFI[Range];
|
||||
string Rload = (Mode == "FVMV" || Mode == "FZMV") ? "Hi-Z" : strRloadFvmi[Range];
|
||||
@@ -2382,6 +2326,11 @@ namespace Testrong.User.Program
|
||||
string[] PmuPinName_FZ = new string[1];
|
||||
string[] PmuPinName_FV = new string[1];
|
||||
string[] PmuPinName_FZFV = new string[2];
|
||||
|
||||
double[] AteMeasure = new double[SampliCount];
|
||||
double[] ForceValue = new double[SampliCount];
|
||||
double[] TempValue = new double[SampliCount];
|
||||
|
||||
for (int loopk = 0; loopk < ListChannels.Count/*ListChannels.Count*/; loopk++)//-----Loop Channel-----
|
||||
{
|
||||
if (Type == "PMU")
|
||||
@@ -2424,8 +2373,6 @@ namespace Testrong.User.Program
|
||||
ForceVoltage = VoltageInitialSet;
|
||||
}
|
||||
}
|
||||
double[] AteMeasure = new double[5];
|
||||
double[] ForceValue = new double[5];
|
||||
switch (Info[loopi].Mode)
|
||||
{
|
||||
case "FVMV":
|
||||
@@ -2441,6 +2388,9 @@ namespace Testrong.User.Program
|
||||
dmm.TriggerSingleMeasure();
|
||||
List<SiteInfo> siList = PPMU.Measure(PmuPinName, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FVMV"), testParaSet_pmu_fvmv[Range].avgTimes, testParaSet_pmu_fvmv[Range].samDelay);
|
||||
double chResult = GetATEChannelMeasure(siList, PmuPinName);
|
||||
double[] readTemp = PPMU.ReadTemperature();
|
||||
double chTemp = readTemp[GetPMUTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
AteMeasure[p] = chResult;
|
||||
ForceValue[p] = ForceVoltage;
|
||||
ForceVoltage += VoltageStep;
|
||||
@@ -2462,6 +2412,9 @@ namespace Testrong.User.Program
|
||||
dmm.TriggerSingleMeasure();
|
||||
List<SiteInfo> siList = PPMU.Measure(PmuPinName, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FVMI"), testParaSet_pmu_fvmi[Range].avgTimes, testParaSet_pmu_fvmi[Range].samDelay);
|
||||
double chResult = GetATEChannelMeasure(siList, PmuPinName);
|
||||
double[] readTemp = PPMU.ReadTemperature();
|
||||
double chTemp = readTemp[GetPMUTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
AteMeasure[p] = chResult;
|
||||
ForceValue[p] = ForceVoltage / (Convert.ToDouble(RlPmuFv[Range]) + ExtBoard_Res[ch - 1, SlotNum - 1]);
|
||||
ForceVoltage += VoltageStep;
|
||||
@@ -2482,6 +2435,9 @@ namespace Testrong.User.Program
|
||||
dmm.TriggerSingleMeasure();
|
||||
List<SiteInfo> siList = PPMU.Measure(PmuPinName, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FVMI"), testParaSet_pmu_fvmi[Range].avgTimes, testParaSet_pmu_fvmi[Range].samDelay);
|
||||
double chResult = GetATEChannelMeasure(siList, PmuPinName);
|
||||
double[] readTemp = PPMU.ReadTemperature();
|
||||
double chTemp = readTemp[GetPMUTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
AteMeasure[p] = chResult;
|
||||
ForceValue[p] = ForceVoltage / (Convert.ToDouble(RlPmuFv[Range]) + ExtBoard_Res[ch - 1, SlotNum - 1]);
|
||||
if (RangesPmu[Range] == PpmuIRange._20uA)
|
||||
@@ -2524,6 +2480,9 @@ namespace Testrong.User.Program
|
||||
double chResult = GetATEChannelMeasure(siList, PmuPinName);
|
||||
AteMeasure[p] = chResult / (Convert.ToDouble(RlPmuFi[Range]) + ExtBoard_Res[ch - 1, SlotNum - 1]);
|
||||
ForceValue[p] = ForceCurrent;
|
||||
double[] readTemp = PPMU.ReadTemperature();
|
||||
double chTemp = readTemp[GetPMUTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
}
|
||||
PPMU.Force(PmuPinName, 0, PpmuMode.FVMV, RangesPmu[Range], VRange.Normal);
|
||||
Thread.Sleep(10);
|
||||
@@ -2543,6 +2502,9 @@ namespace Testrong.User.Program
|
||||
dmm.TriggerSingleMeasure();
|
||||
List<SiteInfo> siList = PPMU.Measure(PmuPinName_FZ, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FVMV"), testParaSet_pmu_fzmv[Range].avgTimes, testParaSet_pmu_fzmv[Range].samDelay);
|
||||
double chResult = GetATEChannelMeasure(siList, PmuPinName_FZ);
|
||||
double[] readTemp = PPMU.ReadTemperature();
|
||||
double chTemp = readTemp[GetPMUTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
AteMeasure[p] = chResult;
|
||||
ForceValue[p] = ForceVoltage;
|
||||
ForceVoltage += VoltageStep;
|
||||
@@ -2557,9 +2519,10 @@ namespace Testrong.User.Program
|
||||
break;
|
||||
default: break;
|
||||
}
|
||||
AteMeasureDir.Add(ListChannels[loopk], AteMeasure);
|
||||
ForceValueDir.Add(ListChannels[loopk], ForceValue);
|
||||
testCh.Add(ListChannels[loopk]);
|
||||
AteMeasureDir.Add(ch, AteMeasure);
|
||||
ForceValueDir.Add(ch, ForceValue);
|
||||
TempValueDir.Add(ch, TempValue);
|
||||
testCh.Add(ch);
|
||||
}
|
||||
else if (Type == "DPS")
|
||||
{
|
||||
@@ -2596,8 +2559,6 @@ namespace Testrong.User.Program
|
||||
}
|
||||
break;
|
||||
}
|
||||
double[] AteMeasure = new double[5];
|
||||
double[] ForceValue = new double[5];
|
||||
switch (Info[loopi].Mode)
|
||||
{
|
||||
case "FVMV":
|
||||
@@ -2615,6 +2576,9 @@ namespace Testrong.User.Program
|
||||
dmm.TriggerSingleMeasure();
|
||||
List<SiteInfo> siList = DPS.Measure(DpsPinName, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FVMV"), testParaSet_dps_fvmv[Range].avgTimes, testParaSet_dps_fvmv[Range].samDelay);
|
||||
double chResult = GetATEChannelMeasure(siList, DpsPinName);
|
||||
double[] readTemp = DPS.ReadTemperature();
|
||||
double chTemp = readTemp[GetDPSTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
ForceValue[p] = ForceVoltage;
|
||||
AteMeasure[p] = chResult;
|
||||
ForceVoltage += VoltageStep;
|
||||
@@ -2642,6 +2606,9 @@ namespace Testrong.User.Program
|
||||
Thread.Sleep(50);
|
||||
List<SiteInfo> siList = DPS.Measure(DpsPinName, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FVMI"), testParaSet_dps_fvmi[Range].avgTimes, testParaSet_dps_fvmi[Range].samDelay);
|
||||
double chResult = GetATEChannelMeasure(siList, DpsPinName);
|
||||
double[] readTemp = DPS.ReadTemperature();
|
||||
double chTemp = readTemp[GetDPSTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
ForceValue[p] = CurrValue;
|
||||
AteMeasure[p] = chResult;
|
||||
ForceVoltage += VoltageStep;
|
||||
@@ -2678,6 +2645,9 @@ namespace Testrong.User.Program
|
||||
}
|
||||
List<SiteInfo> siList = DPS.Measure(DpsPinName, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FVMI"), testParaSet_dps_fvmi[Range].avgTimes, testParaSet_dps_fvmi[Range].samDelay);
|
||||
double chResult = GetATEChannelMeasure(siList, DpsPinName);
|
||||
double[] readTemp = DPS.ReadTemperature();
|
||||
double chTemp = readTemp[GetDPSTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
ForceValue[p] = CurrValue;
|
||||
AteMeasure[p] = chResult;
|
||||
ForceVoltage += VoltageStep;
|
||||
@@ -2732,6 +2702,9 @@ namespace Testrong.User.Program
|
||||
}
|
||||
List<SiteInfo> siList = DPS.Measure(DpsPinName, true, context.BinHandler.GetBinningByTestSuite("ExtCalibration_FIMV"), testParaSet_dps_fimv[Range].avgTimes, testParaSet_dps_fimv[Range].samDelay);
|
||||
double chResult = GetATEChannelMeasure(siList, DpsPinName);
|
||||
double[] readTemp = DPS.ReadTemperature();
|
||||
double chTemp = readTemp[GetDPSTempSensorIndex(ch)];
|
||||
TempValue[p] = chTemp;
|
||||
ForceValue[p] = ForceCurrent;
|
||||
AteMeasure[p] = chResult / Convert.ToDouble(RlDpsFi[Range]);
|
||||
}
|
||||
@@ -2741,9 +2714,10 @@ namespace Testrong.User.Program
|
||||
break;
|
||||
default: break;
|
||||
}
|
||||
AteMeasureDir.Add(ListChannels[loopk], AteMeasure);
|
||||
ForceValueDir.Add(ListChannels[loopk], ForceValue);
|
||||
testCh.Add(ListChannels[loopk]);
|
||||
AteMeasureDir.Add(ch, AteMeasure);
|
||||
ForceValueDir.Add(ch, ForceValue);
|
||||
TempValueDir.Add(ch, TempValue);
|
||||
testCh.Add(ch);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2774,10 +2748,11 @@ namespace Testrong.User.Program
|
||||
range: Range,
|
||||
ForceValue: ForceValueDir[ch],
|
||||
AteMeasure: AteMeasureDir[ch],
|
||||
DmmMeasure: DmmMeasureDir[ch]
|
||||
DmmMeasure: DmmMeasureDir[ch],
|
||||
TempValue: TempValueDir[ch]
|
||||
);
|
||||
|
||||
metadata_handler(
|
||||
Metadata_handler(
|
||||
swdata: swdata,
|
||||
SlotNum: SlotNum,
|
||||
slotList: slotList,
|
||||
@@ -2817,10 +2792,11 @@ namespace Testrong.User.Program
|
||||
range: Range,
|
||||
ForceValue: ForceValueDir[ch],
|
||||
AteMeasure: AteMeasureDir[ch],
|
||||
DmmMeasure:DmmMeasureDir[ch]
|
||||
DmmMeasure: DmmMeasureDir[ch],
|
||||
TempValue: TempValueDir[ch]
|
||||
);
|
||||
|
||||
metadata_handler(
|
||||
Metadata_handler(
|
||||
swdata: swdata,
|
||||
SlotNum: SlotNum,
|
||||
slotList: slotList,
|
||||
@@ -2910,74 +2886,7 @@ namespace Testrong.User.Program
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
[TestrongTestCase]
|
||||
public void Reset(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationReset(context);
|
||||
}
|
||||
|
||||
[TestrongTestCase]
|
||||
public void DmmGetRes(IFlowRunnerContext context)
|
||||
{
|
||||
DmmGetResValue(context, SelectTestVersion);
|
||||
}
|
||||
|
||||
[TestrongTestCase]
|
||||
public void Ext_Calibration_Pre(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationCollect(context, SelectTestVersion, true, true);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void Write_CalFiles(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationWriteCalFiles(context);
|
||||
}
|
||||
|
||||
[TestrongTestCase]
|
||||
public void Ext_Calibration_Post(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationCollect(context, SelectTestVersion, true, false);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void RintReset(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_Reset(context);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void Rint_Pre(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_FVMV_2mA_Pre(context, SelectTestVersion);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void RintDataUpload(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_DataUpload(context);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void Rint_Post(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_FVMV_2mA_Post(context, SelectTestVersion);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void PmurUpload(IFlowRunnerContext context)
|
||||
{
|
||||
Pmur_Upload(context);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void ReTest(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationCollect(context, SelectTestVersion, false, false);
|
||||
}
|
||||
|
||||
[TestrongTestCase]
|
||||
public void Freq_Test(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationFreqCollect(context, SelectTestVersion);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void Rint_FVMI_Gnd(IFlowRunnerContext context)
|
||||
void Rint_GND_FVMI_2mA(IFlowRunnerContext context)
|
||||
{
|
||||
List<int> ChannelPmu = new List<int>();
|
||||
for (int m = 0; m < 256; m++)
|
||||
@@ -3028,61 +2937,18 @@ namespace Testrong.User.Program
|
||||
}
|
||||
//-----Start Slot Number-----
|
||||
StreamWriter swdata;
|
||||
if (SlotNum == slotList[0])
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8)
|
||||
{
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8);
|
||||
swdata.AutoFlush = true;
|
||||
swdata.WriteLine("Tester_Name,Board_Id,Slot_Ip,Stil_Version");
|
||||
for (int w = 0; w < 12; w++)
|
||||
{
|
||||
if (w == (slotList[0] - 1))
|
||||
{
|
||||
swdata.WriteLine($"Slot{SlotNum},{arm_dna},{context.Communicator.ServerIP},V1.0.0");
|
||||
}
|
||||
else
|
||||
{
|
||||
swdata.WriteLine($"Slot{(w + 1)}");
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < 1; i++)
|
||||
{
|
||||
swdata.WriteLine();
|
||||
}
|
||||
swdata.Write("Slot_Dna,Channel_Type,Channel_No,Mode,R_Load,I_Range,V_Range,Meas_Range,File_Path,File_Time\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
int Cried = slotList.FindIndex(x => x.Equals(SlotNum));
|
||||
while (true)
|
||||
{
|
||||
Thread.Sleep(1000);
|
||||
if (File.Exists(EXT_CAL_PATH + slotList[Cried - 1] + ".flag")) //Wait until previous thread flags completion
|
||||
{
|
||||
File.Delete(EXT_CAL_PATH + slotList[Cried - 1] + ".flag");
|
||||
break;
|
||||
}
|
||||
}
|
||||
File.Move(METADATA_PATH, EXT_CAL_PATH + "metadata_temp" + ".csv");
|
||||
StreamReader sr = new StreamReader(EXT_CAL_PATH + "metadata_temp" + ".csv", Encoding.UTF8);
|
||||
swdata = new StreamWriter(METADATA_PATH, true, Encoding.UTF8);
|
||||
swdata.AutoFlush = true;
|
||||
int line = 0;
|
||||
while (!sr.EndOfStream)
|
||||
{
|
||||
string tmp = sr.ReadLine();
|
||||
if (line == slotList[Cried])
|
||||
{
|
||||
swdata.WriteLine("Slot" + SlotNum + "," + arm_dna + "," + context.Communicator.ServerIP + "," + "V1.0.0");
|
||||
}
|
||||
else
|
||||
{
|
||||
swdata.WriteLine(tmp);
|
||||
}
|
||||
line++;
|
||||
}
|
||||
sr.Close();
|
||||
File.Delete(EXT_CAL_PATH + "metadata_temp" + ".csv");
|
||||
}
|
||||
AutoFlush = true
|
||||
};
|
||||
Metadata_handler(
|
||||
swdata: swdata,
|
||||
SlotNum: SlotNum,
|
||||
slotList: slotList,
|
||||
arm_dna: arm_dna,
|
||||
context: context,
|
||||
init_Flag: true
|
||||
);
|
||||
string filetime = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
|
||||
for (int loopk = 0; loopk < 256; loopk++)
|
||||
{
|
||||
@@ -3174,5 +3040,76 @@ namespace Testrong.User.Program
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
[TestrongTestCase]
|
||||
public void Reset(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationReset(context);
|
||||
}
|
||||
|
||||
[TestrongTestCase]
|
||||
public void DmmGetRes(IFlowRunnerContext context)
|
||||
{
|
||||
DmmGetResValue(context, SelectTestVersion);
|
||||
}
|
||||
|
||||
[TestrongTestCase]
|
||||
public void Ext_Calibration_Pre(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationCollect(context, SelectTestVersion, true, true);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void Write_CalFiles(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationWriteCalFiles(context);
|
||||
}
|
||||
|
||||
[TestrongTestCase]
|
||||
public void Ext_Calibration_Post(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationCollect(context, SelectTestVersion, true, false);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void RintReset(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_Reset(context);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void Rint_Pre(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_FVMV_2mA_Pre(context, SelectTestVersion);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void RintDataUpload(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_DataUpload(context);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void Rint_Post(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_FVMV_2mA_Post(context, SelectTestVersion);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void PmurUpload(IFlowRunnerContext context)
|
||||
{
|
||||
Pmur_Upload(context);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void ReTest(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationCollect(context, SelectTestVersion, false, false);
|
||||
}
|
||||
|
||||
[TestrongTestCase]
|
||||
public void Freq_Test(IFlowRunnerContext context)
|
||||
{
|
||||
ExternalCalibrationFreqCollect(context, SelectTestVersion);
|
||||
}
|
||||
[TestrongTestCase]
|
||||
public void Rint_FVMI_Gnd(IFlowRunnerContext context)
|
||||
{
|
||||
Rint_GND_FVMI_2mA(context);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
+1
-1
@@ -1 +1 @@
|
||||
6294ce1c6de551d5f3754fa8d57d8f6d1fe0c8f0
|
||||
8336289dafd7be8d8ceb71ec0bfb414b5e10ce0020e044e9f7d2ae18b0c1e638
|
||||
|
||||
@@ -2413,3 +2413,46 @@ F:\syy\Prometheus\1KS_FT_EngineeringMachine\UserProgram_time\Testrong.User.Progr
|
||||
F:\syy\Prometheus\1KS_FT_EngineeringMachine\UserProgram_time\Testrong.User.Program\obj\x64\Debug\Testrong.User.Program.csproj.CopyComplete
|
||||
F:\syy\Prometheus\1KS_FT_EngineeringMachine\UserProgram_time\Testrong.User.Program\obj\x64\Debug\UserProgram.dll
|
||||
F:\syy\Prometheus\1KS_FT_EngineeringMachine\UserProgram_time\Testrong.User.Program\obj\x64\Debug\UserProgram.pdb
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\UserProgram.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\UserProgram.pdb
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\NLog.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Transport.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Buffers.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Codecs.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Threading.Tasks.Dataflow.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Common.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Buffers.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Globalization.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\AutoMapper.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Datalog.Interfaces.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Hardware.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\MxFFTCalc.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\MWArray.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\MathNet.Numerics.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Gramar.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Threading.Tasks.Extensions.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Runtime.CompilerServices.Unsafe.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.Logging.Abstractions.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.Logging.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\STDF.Library.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.ValueTuple.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Antlr4.Runtime.Standard.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.Options.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.DependencyInjection.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Extensions.Primitives.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Microsoft.Bcl.AsyncInterfaces.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Model.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\Testrong.Core.Primitives.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Transport.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Buffers.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Codecs.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\System.Threading.Tasks.Dataflow.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\DotNetty.Common.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\AutoMapper.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\bin\x64\Debug\STDF.Library.xml
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\obj\x64\Debug\Testrong.User.Program.csproj.AssemblyReference.cache
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\obj\x64\Debug\Testrong.User.Program.csproj.CoreCompileInputs.cache
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\obj\x64\Debug\Testrong.A8AD3C05.Up2Date
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\obj\x64\Debug\UserProgram.dll
|
||||
D:\WORK\ManLin\Verify\UserProgram_time\Testrong.User.Program\obj\x64\Debug\UserProgram.pdb
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user