wincc中的C语言中没有delay函数

我想实现一个按钮按下后10s内不能操作该按钮,用C语言实现时发现不能识别delay();。我查了C库函数文件,没有发现delay函数需要头文件。那么如何在Wincc中实现delay效果呢?只能用空循环吗?

问题补充:
用上位机是因为下位机计时器不够用了。

最佳答案

在下位机(PLC)里做是很简单的,但是这个是一个操作逻辑上的处理,按道理说还是应该在上位机(PC)里做更合适。根据你的要求,C语言代码如下:

#pragma option(mbcs)
#pragma code("Kernel32.dll")
void Sleep(int Milliseconds);
#pragma code()
SetTagDWord("test1",GetTagDWord("test1")+1);
SetOperation(lpszPictureName,lpszObjectName,0);
Sleep(10000);
SetOperation(lpszPictureName,lpszObjectName,1);
/*注释:test1是一个内部变量用来做为测试使用,点一次把test1这个变量+1,这个可以实现你要的功能,不要使用Delay,它会一直占用CPU资源,并不会将 进程挂起!而且它的延时精度不唯一,因为它和CPU的时钟频率有关*/

提问者对于答案的评价:
大家的帮助我都很感谢,可惜最佳答案只能给一人, Ken.Carrey的回答很用心。我把最大的一份感谢给他。

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc265548.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午3:49
下一篇 2019年6月11日 上午3:50

相关推荐

  • 组态王串口通讯问题

    我用单片机做了一个数据采集的模块,现在想把数据传到组态王,我没有板卡的,所以我想直接用单片机的串口通讯连到电脑串口上上,不知道能行不,怎么设置组态王,向各位请教。之前我是用vb做的…

    SIMATIC WinCC 2019年6月11日
  • 博图WINCC 创建UDT

    博图wincc怎么创建UDT类型变量…. 在做面板实例的时候我的接口是UDT类型.使用GetLinkedTag函数返回接口的名称时无法返回….请问如何解决 最佳答…

    SIMATIC WinCC 2021年7月5日
  • wincc运行错误

    wincc6.2版本,运行一段时间后数据连接不上并出现没有连接到Automation License Manager,重新安装系统后运行几天也是一样出现故障。请…

    2017年6月12日
  • MODBUS OPC SERVER 软件在那里能下载到?

    最佳答案 找供应商要MODBUS OPC SERVER 提问者对于答案的评价:ok

    SIMATIC WinCC 2019年6月11日
  • 在Automation licene manager 中删除

    为什么不可以删除,每次删除时会出现Error deleting license keys提示框,内容是The authorization&n…

    SIMATIC WinCC 2019年6月11日
  • 通过wincc或者step7怎么实现智能化温度控制?

    想设计一个基于wincc组态软件的PID神经网络智能化温度控制系统,现在困扰我的是怎么实现(模拟实现),是不是要涉及wincc中的ActiveX控件或者.net控件还是……怎么开发…

    SIMATIC WinCC 2021年7月5日
  • wincc上位组态的‘ole对象’控件

    1-wincc上位组态的‘ole对象’控件做的Microsoft Graph图表可以链接wincc的变量吗?2-如果可以怎么做?3-如果不可以用,有没有实现此类功能的控件…

    SIMATIC WinCC 2020年11月1日
  • wincc7.0 制作报表问题。

    wincc7.0做报表,使用报表控件。显示出来的变量是小数点后好多位。比如:13.12344567890。我想取小数点后两位就行,13.12,请问该如何进行设置?我变量用的是归档变…

    2017年8月18日
  • Wincc窗口问题

    "画面窗口用了变量前缀,致使该画面中的所有变量自动加了前缀。"怎么解决?谢谢! 问题补充:我为了同一窗口能显示不同的画面以及标题,画面窗口使用变量前缀,结果运行…

    SIMATIC WinCC 2019年6月11日
  • wincc画面变量显示框闪动

    近期我们的wicc监控画面,变量显示框内背景色和数值无规则闪动,模拟时钟有时也闪,也不是一直闪,只是不定时闪.其他画面都正常.是干扰还是别的原因?该如何处理?望高人指点. 问题补充…

    SIMATIC WinCC 2019年6月11日