与Sharp7库进行C#和Siemens S7通信-GetAgBlockInfo参数?

问题描述

功能

tuples

如果我想使用此fc读取DB,BlockType的参数是什么? 我试过了:S7Consts.S7AreaDB,132,0x41,65

解决方法

如果你想读取任何数据块,你可以使用DBRead方法。

首先配置您的设备和数据块:https://github.com/fbarresi/Sharp7/blob/master/README.md

然后你可以像这样读取数据块:

var _s7Client = new S7Client();
int connectionResult = _s7Client.ConnectTo("192.168.0.1",1);//write your PLC IP address
if(connectionResult == 0)
{
    var buffer = new byte[6];
    int readResult = _s7Client.DBRead(1,buffer.Length,buffer); //parameters: dbNumber,startingAddress,readLength,buffer

    if(readResult == 0)
    {
        byte x = S7.GetByteAt(buffer,0); //parameters: buffer,position
        string y = S7.GetCharsAt(buffer,2,4); //parameters: buffer,position,length(byte)
    }
    else
    {
        //read error
    }
}
else
{
    //connection error
}


相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...