增加了初始弹窗,但是没有成功
更改了CAN和LIN协调 更改了配置程序的名称顺序
This commit is contained in:
73
CapMachine.Wpf/LinDrive/LDFParser.cs
Normal file
73
CapMachine.Wpf/LinDrive/LDFParser.cs
Normal file
@@ -0,0 +1,73 @@
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Text;
|
||||
|
||||
namespace CapMachine.Wpf.LinDrive
|
||||
{
|
||||
/// <summary>
|
||||
/// LDF文件解析
|
||||
/// </summary>
|
||||
public class LDFParser
|
||||
{
|
||||
public const Int32 LDF_PARSER_OK = 0;//没有错误
|
||||
public const Int32 LDF_PARSER_FILE_OPEN = (-1);//打开文件出错
|
||||
public const Int32 LDF_PARSER_FILE_FORMAT = (-2);//文件格式错误
|
||||
public const Int32 LDF_PARSER_DEV_DISCONNECT = (-3);//设备未连接
|
||||
public const Int32 LDF_PARSER_HANDLE_ERROR = (-4);//LDF Handle错误
|
||||
public const Int32 LDF_PARSER_GET_INFO_ERROR = (-5);//获取解析后的数据出错
|
||||
public const Int32 LDF_PARSER_DATA_ERROR = (-6);//数据处理错误
|
||||
public const Int32 LDF_PARSER_SLAVE_NACK = (-7);//从机未响应数据
|
||||
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern UInt64 LDF_ParserFile(int DevHandle, int LINIndex, byte isMaster, StringBuilder pLDFFileName);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetProtocolVersion(UInt64 LDFHandle);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetLINSpeed(UInt64 LDFHandle);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetFrameQuantity(UInt64 LDFHandle);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetFrameName(UInt64 LDFHandle, int index, StringBuilder pFrameName);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetFrameSignalQuantity(UInt64 LDFHandle, StringBuilder pFrameName);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetFrameSignalName(UInt64 LDFHandle, StringBuilder pFrameName, int index, StringBuilder pSignalName);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_SetSignalValue(UInt64 LDFHandle, StringBuilder pFrameName, StringBuilder pSignalName, double Value);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetSignalValue(UInt64 LDFHandle, StringBuilder pFrameName, StringBuilder pSignalName, double[] pValue);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetSignalValueStr(UInt64 LDFHandle, StringBuilder pFrameName, StringBuilder pSignalName, StringBuilder pValueStr);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_SetFrameRawValue(UInt64 LDFHandle, StringBuilder pFrameName, StringBuilder pRawData);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetFrameRawValue(UInt64 LDFHandle, StringBuilder pFrameName, StringBuilder pRawData);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetFramePublisher(UInt64 LDFHandle, StringBuilder pFrameName, StringBuilder pPublisher);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetMasterName(UInt64 LDFHandle, StringBuilder pMasterName);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetSchQuantity(UInt64 LDFHandle);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetSchName(UInt64 LDFHandle, int index, StringBuilder pSchName);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetSchFrameQuantity(UInt64 LDFHandle, StringBuilder pSchName);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_GetSchFrameName(UInt64 LDFHandle, StringBuilder pSchName, int index, StringBuilder pFrameName);
|
||||
|
||||
/// <summary>
|
||||
///将帧数据发送到LIN总线,或者向从机读取数据,内部会根据主机名称和帧发布者自动判断是发送数据还是读取数据,发送数据校验模式是通过协议版本号自动判断的。
|
||||
// 若是发送数据给从机,需要先调用LDF_SetSignalValue函数设置该帧里面每个信号的值。
|
||||
//若是向从机读数据,调用该函数后,可以通过调用LDF_GetSignalValue函数获取读到的值。
|
||||
/// LDFHandle ldf文件解析句柄,通过LDF_ParserFile函数获取 。
|
||||
/// pFrameName 帧名称。
|
||||
/// </summary>
|
||||
/// <param name="LDFHandle"></param>
|
||||
/// <param name="pFrameName"></param>
|
||||
/// <param name="FillBitValue"></param>
|
||||
/// <returns></returns>
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_ExeFrameToBus(UInt64 LDFHandle, StringBuilder pFrameName, byte FillBitValue);
|
||||
[DllImport("USB2XXX.dll")]
|
||||
public static extern Int32 LDF_ExeSchToBus(UInt64 LDFHandle, StringBuilder pSchName, byte FillBitValue);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user