using System; namespace MainShell.Hardware.Acs { public sealed class AcsBondingCommunicationAdress { public const string PA_X1PosArrayName = "PA_X1Pos_Array"; public const string PA_X2PosArrayName = "PA_X2Pos_Array"; public const string PA_Y1PosArrayName = "PA_Y1Pos_Array"; public const string PA_Y2PosArrayName = "PA_Y2Pos_Array"; public const string PA_RowSumName = "PA_RowSum"; public const string PA_RowPointCountArrayName = "PA_RowPointCount_Array"; public const string PA_CZIsBondingArrayName = "PA_CZIsBonding_Array"; public const string PA_BigChangeRowArrayName = "PA_BigChangeRow_Array"; public const string AP_FBStartName = "AP_FBStart"; public const string PA_BonDataSendFinishName = "PA_BonDataSendFinish"; public const string PA_BonNumberName = "PA_BonNumber"; public const string PA_BonEndName = "PA_BonEnd"; public const string PA_PadPitchName = "PA_PadPitch"; public const string PA_CZoffsetName = "PA_CZoffset"; public const string PA_X1FBPosSymbol = "PA_X1FBPos"; public const string PA_X2FBPosSymbol = "PA_X2FBPos"; public const string PA_Y1FBPosSymbol = "PA_Y1FBPos"; public const string PA_Y2FBPosSymbol = "PA_Y2FBPos"; public const string PA_RowSumSymbol = "PA_RowSum"; public const string PA_RowPointCountSymbol = "PA_RowPointCount"; public const string PA_CZIsBondingSymbol = "PA_CZIsBonding"; public const string PA_BigChangeRowSymbol = "PA_BigChangeRow"; public const string AP_FBStartSymbol = "AP_FBStart"; public const string PA_BonDataSendFinishSymbol = "PA_BonDataSendFinish"; public const string PA_BonNumberSymbol = "PA_BonNumber"; public const string PA_BonEndSymbol = "PA_BonEnd"; public const string PA_PadPitchSymbol = "PA_PadPitch"; public const string PA_CZoffsetSymbol = "PA_CZoffset"; public AcsBondingCommunicationAdress(string addressSuffix) { if (addressSuffix == null) { throw new ArgumentNullException(nameof(addressSuffix)); } PA_X1Pos_Array = AcsAddressDefinition.CreateDoubleSymbol(PA_X1PosArrayName, PA_X1FBPosSymbol + addressSuffix, 10000, "A 区 X1 位置数组,长度为 10000。"); PA_X2Pos_Array = AcsAddressDefinition.CreateDoubleSymbol(PA_X2PosArrayName, PA_X2FBPosSymbol + addressSuffix, 10000, "A 区 X2 位置数组,长度为 10000。"); PA_Y1Pos_Array = AcsAddressDefinition.CreateDoubleSymbol(PA_Y1PosArrayName, PA_Y1FBPosSymbol + addressSuffix, 10000, "A 区 Y1 位置数组,长度为 10000。"); PA_Y2Pos_Array = AcsAddressDefinition.CreateDoubleSymbol(PA_Y2PosArrayName, PA_Y2FBPosSymbol + addressSuffix, 10000, "A 区 Y2 位置数组,长度为 10000。"); PA_RowSum = AcsAddressDefinition.CreateInt32Symbol(PA_RowSumName, PA_RowSumSymbol + addressSuffix, 1, "A 区已下发的固晶行数。"); PA_RowPointCount_Array = AcsAddressDefinition.CreateInt32Symbol(PA_RowPointCountArrayName, PA_RowPointCountSymbol + addressSuffix, 10000, "A 区每行固晶点数数组。"); PA_CZIsBonding_Array = AcsAddressDefinition.CreateBoolSymbol(PA_CZIsBondingArrayName, PA_CZIsBondingSymbol + addressSuffix, 10000, "A 区各点是否处于固晶状态。"); PA_BigChangeRow_Array = AcsAddressDefinition.CreateBoolSymbol(PA_BigChangeRowArrayName, PA_BigChangeRowSymbol + addressSuffix, 10000, "A 区大跨行标记数组。"); AP_FBStart = AcsAddressDefinition.CreateInt32Symbol(AP_FBStartName, AP_FBStartSymbol + addressSuffix, 1, "A 区固晶启动标志,1 表示启动。"); PA_BonDataSendFinish = AcsAddressDefinition.CreateInt32Symbol(PA_BonDataSendFinishName, PA_BonDataSendFinishSymbol + addressSuffix, 1, "补固数据发送完成标志。"); PA_BonNumber = AcsAddressDefinition.CreateInt32Symbol(PA_BonNumberName, PA_BonNumberSymbol + addressSuffix, 1, "各区补固次数。"); PA_BonEnd = AcsAddressDefinition.CreateInt32Symbol(PA_BonEndName, PA_BonEndSymbol + addressSuffix, 1, "补固结束标志。"); PA_PadPitch = AcsAddressDefinition.CreateDoubleSymbol(PA_PadPitchName, PA_PadPitchSymbol + addressSuffix, 1, "焊盘间距参数。"); PA_CZoffset = AcsAddressDefinition.CreateDoubleSymbol(PA_CZoffsetName, PA_CZoffsetSymbol + addressSuffix, 1, "CZ 偏移量。"); } public AcsAddressDefinition PA_X1Pos_Array { get; } public AcsAddressDefinition PA_X2Pos_Array { get; } public AcsAddressDefinition PA_Y1Pos_Array { get; } public AcsAddressDefinition PA_Y2Pos_Array { get; } public AcsAddressDefinition PA_RowSum { get; } public AcsAddressDefinition PA_RowPointCount_Array { get; } public AcsAddressDefinition PA_CZIsBonding_Array { get; } public AcsAddressDefinition PA_BigChangeRow_Array { get; } public AcsAddressDefinition AP_FBStart { get; } public AcsAddressDefinition PA_BonDataSendFinish { get; } public AcsAddressDefinition PA_BonNumber { get; } public AcsAddressDefinition PA_BonEnd { get; } public AcsAddressDefinition PA_PadPitch { get; } public AcsAddressDefinition PA_CZoffset { get; } } }