当前位置: 主页 > PLC控制

关于数据类型的问题

看官网上视频教学,S71200的MODBUS与S7通讯定义读写数据区的时候总是用数组,然后用指针引用,能不能不用数组,直接在数据块里定义不同类型的变量,然后在通讯指令里用指针引用啊?如:P#DB8.DBX20.0WORD10等,还有结构类型STRUCT,S7通讯上的PUT与GET指令在软件帮助里说“传送数据结构(例如Struct)时,参数ADDR_i处必须使用数据类型CHAR“不知道什么意思

最佳答案

和数据类型没有关系,主要是DB定义的长度够用就行;
如:P#DB1.DBX0.0bool800,则DB块里定义的数据长度有100个字节就可以,这100个字节可以是800个bool,可以是50个int,可以是25个DINT或REAL;

“传送数据结构(例如Struct、array)时,参数ADDR_i处必须使用数据类型CHAR,byte,word或Dword“,我这么理解的,就是当DB里定义的数据类型是Struct、array时(假设为长度100字节的数组),则ADDR_i这里需要填写成例如,P#DB1.DBX0.0CHAR100或P#DB1.DBX0.0byte100或P#DB1.DBX0.0word50或P#DB1.DBX0.0Dword25

提问者对于答案的评价:
根据你所说的我做了S7和MODBUS通讯的实验,和你说的一样,谢谢!

专家置评

已阅,最佳答案正确。

  • 关注微信

猜你喜欢

微信公众号