网上下载的modbus,库存储区分配好后,编译时遇到了以下问题,请各位老师帮忙,多谢。看看子程序是否存在问题及如何解决?
MBUS_CTRL (SBR3)
网络 19,行 22,错误 33: (操作数 1) 指令操作数使用了未定义的全局符号或局部变量。MBUS_MSG (SBR4)
网络 27,行 2,错误 67:操作数的数目与标准指令要求不匹配。
网络 34,行 2,错误 67:操作数的数目与标准指令要求不匹配
问题补充:
首先感谢各位老师的指教,我觉得和主程序无关,我把主程序就留一个指令(如照片所示)还是这3个报警,所以主要还是子程序的问题,但是子程序也如照片所示,是灰色的,没法更改,看看那位老师愿意详细指点一下?多谢。
图片说明:
最佳答案
在你使用者库时,要给库分配库存储区,库存储区的地址要未使用。看下面官方资料关于如何使用Modbus RTU通讯的介绍资料 ,介绍资料里面就有如何分配库的使用。
S7-200 Modbus RTU 通信:http://www.ad.siemens.com.cn/service/article/S7-200/S7-200modbus/Default.aspx#librarymemory
关于补充问题回答:子程序里面的东西是无法修改,这是你调用库时子程序里面的东西已经自动给配好了,无法修改。你还没有吧下面的错误图片发出来。
网络 19,行 22,错误 33: (操作数 1) 指令操作数使用了未定义的全局符号或局部变量。MBUS_MSG (SBR4)
网络 27,行 2,错误 67:操作数的数目与标准指令要求不匹配。
网络 34,行 2,错误 67:操作数的数目与标准指令要求不匹配
上面这三个编译错误程序的图片才是问题关键,你发出来,大家很难给你合适的参考答案。还有我上面的链接里面有关于通讯的例子程序,你可以把例子程序下载下来看一下,参考例子程序来编写你自己的程序。
图片说明:
提问者对于答案的评价:
感谢Siemens automation及各位老师的指点,谢谢各位好朋友。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc365134.html