ADSLOGSTR(msgCtrlMask:= ADSLOG_MSGTYPE_LOG,msgFmtStr:='OSIO:%s',strArg:='Autostrsys');
我正在TwinCAT 3中使用此函数,但是当我运行我的代码时,由于ADSLOGSTR函数,它被挂起了。如果我对此发表评论,那么它工作正常,但在那种情况下,我看不到任何消息。
为什么由于此消息显示功能(ADSLOGSTR)而导致系统挂起?
答案 0 :(得分:0)
在没有看到完整示例的情况下,我们都必须猜测出什么问题了。
我的猜测是您在每个周期都调用该函数。您需要确保只调用一次,就像这样:
IF NOT bAdsLogStrBeenCalled THEN
ADSLOGSTR(...);
bAdsLogStrBeenCalled := TRUE;
END_IF