step7 microwin 用户自定义库后,再调用库时无法进行库存储器分配
问题补充:
自定义的库,可以正常调用,只是不能进行库存储器地址的分配,导致如果调用2个以上自定义的库,就会出现地址重复使用,程序数据混乱
图片说明:
钻石用户推荐最佳答案
此回答已完善
step7 microwin 用户自定义库,需分配好库指令数据区(Library Memory)。
库指令数据区是相应库的子程序和中断程序所要用到的变量存储空间。
如果在编程时不分配库指令数据区,编译时会产生许多相同的错误(错误18)。
http://www.ad.siemens.com.cn/productportal/prods/s7-200-portal/micropower2013/s7-200/microwin/instruction_library/library_memory.htm
1)可以使用Suggest Address(推荐地址)设置库指令存储数据区,但要注意编程软件设置的数据区地址,只考虑到了其他一般寻址,而未考虑到诸如Modbus数据保持寄存器区等的设置。应当确保不与其他任何已使用的数据区重叠、冲突。与已有的库指令数据存储区规避,不应重复按系统Suggest Address(推荐地址)按钮分配库指令存储区地址,否则也会造成混乱。
2)在STEP 7-Micro/WIN32 V3.1中,有分配库指令数据区时有不同的操作方法,需要在Symbol Table(符号表)中设置一个首地址。建议使用当时最新的编程版本。
在编程时,凡用到V存储区地址处都使用“符号寻址”,为每个变量指定一个符号。然后按照上述方法生成自定义库。注意此时使用V存储区的绝对寻址,或者定义符号表有误,则不能正常生成库指令。
参考资料:http://www.ad.siemens.com.cn/productportal/prods/s7-200-portal/micropower2013/smart%20sms/008.html
提问者对于答案的评价:
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc360974.html