半导体行业-SECS/GEM协议 C#与SECS/GEM通信 S2F17获取时间 WinForm集成SECS/GEM通信协议 C#与SECS集成资料大全 C#对接SECS资料明细实战例子
前面一篇文章介绍了C#和secs集成的例子
C#与SECS/GEM基础通信
S10F3 终端单个显示例子
最新例子下载-----> 需要源代码下载
这篇来介绍如何使用S2F17获取对方信息例子
查帮助文档SECS E5帮助文档
返回时间的格式有两种
/// <summary>
/// 发送S2F17
/// </summary>
public async static void S2F17()
{
if (SecsBase.secsGem.State != ConnectionState.Selected)
return;
try
{
SecsMessage msg = new SecsMessage(2, 17, "S2F17", null);
//Task<SecsMessage> msgTask=SecsBase.secsGem.SendAsync(msg);
//Task.WaitAll(msgTask);
//msg = msgTask.Result;
SecsMessage reply = await SecsBase.secsGem.SendAsync(msg);
string yymm = reply.SecsItem.GetValue<string>(); //获取日期
SecsBase.S2f18Msg = yymm;
Main.mainForm.showTime();
}
catch (SecsException ex)
{
Console.WriteLine(ex);
}
}
/// <summary>
/// 接收S2F17
/// </summary>
/// <param name="e"></param>
public static void S2F17(PrimaryMessageWrapper e) {
S2F18(e);
}
/// <summary>
/// 返回日期
/// </summary>
/// <param name="e"></param>
public async static void S2F18(PrimaryMessageWrapper e)
{
try
{
string ymd = DateTime.Now.ToString("yyMMddHHmmss", System.Globalization.DateTimeFormatInfo.InvariantInfo);
SecsMessage msg = new SecsMessage(2, 18, "S2F18",
Item.A(ymd)
);
await e.ReplyAsync(msg);
}
catch (SecsException ex)
{
Console.WriteLine(ex);
}
}