设为首页
收藏本站
开启辅助访问
切换到窄版
积分充值
登录
立即注册
微信扫码登录
首页
首页
共享资源
BBS
视频教程
AI聊天机器人
VIP充值
论坛
搜索
搜索
程序分享
文库分享
软件下载
变频手册
干货教程
成套课件
使用必看
GPT3.5免费体验版
万能程序翻译
WinCC脚本编程机器人(VIP免费)
GPT3.5完整版(VIP免费)
自控工程师3.5(VIP免费)
GPT4.0完整版-线路1(VIP免费)
自控工程师4.0版-线路1(VIP免费)
GPT更多线路及版本
最新提现记录
恭喜
admin
于 2023-6-6 15:17 成功提现
500元
恭喜
admin
于 2023-5-3 09:45 成功提现
400元
本版
用户
智控联盟
»
共享资源
›
精选专区
›
ChatGPT专区
›
编程序专区
›
WINCC6.2
返回列表
发新帖
WINCC6.2
[复制链接]
1566
|
7
|
2023-4-13 10:03:39
|
显示全部楼层
|
阅读模式
WINCC6.2中用C脚本写程序实现如下目的:
BOOL量QRR变为1时,Alarm03.wav循环播放;
BOOL量QRR变为0时,停止声音
回复
使用道具
举报
chatGPT_小智
|
2023-4-13 10:04:10
|
显示全部楼层
您可以使用WinCC的C脚本编写以下代码来实现您的要求:
[code]BOOL bLastQRR = FALSE; //用于记录上一次的QRR状态
BOOL bCurQRR = FALSE; //用于记录当前的QRR状态
while(TRUE)
{
bCurQRR = READ_QRR_STATE(); //获取当前的QRR状态
if(bCurQRR != bLastQRR) //如果当前的QRR状态与上一次不同
{
if(bCurQRR) //如果当前的QRR状态为1(开启)
{
SOUND_PLAY("Alarm03.wav", TRUE); //循环播放声音文件
}
else //如果当前的QRR状态为0(关闭)
{
SOUND_STOP(); //停止播放声音文件
}
bLastQRR = bCurQRR; //更新上一次的QRR状态为当前状态
}
SLEEP(100); //延时100毫秒
}[/code]
请注意,在上述代码中,我们使用了以下两个函数:
1. READ_QRR_STATE():该函数用于读取QRR的当前状态。请根据您的实际情况修改该函数。
2. SOUND_PLAY("Alarm03.wav", TRUE)和SOUND_STOP():这两个函数用于播放和停止声音文件。其中,第一个参数是声音文件的名称,第二个参数用于指定是否循环播放(TRUE表示循环播放,FALSE表示仅播放一次)。请根据您的实际情况修改这些函数。
回复
使用道具
举报
这般难离舍
|
2023-4-13 10:09:43
|
显示全部楼层
BOOL bLastQRR = FALSE;
BOOL bCurQRR = FALSE;
while(TRUE)
{
bCurQRR = READ_QRR_STATE();
if(bCurQRR != bLastQRR)
{
if(bCurQRR)
{
SOUND_PLAY("Alarm03.wav", TRUE);
}
else
{
SOUND_STOP();
}
bLastQRR = bCurQRR;
}
SLEEP(100);
}
我这样写后 编译报错:
expected before 'while'
expected before 'if'
expected before '}'
回复
使用道具
举报
chatGPT_小智
|
2023-4-13 10:09:59
|
显示全部楼层
[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid=2935&ptid=1285][color=#999999]这般难离舍 发表于 2023-04-13 10:09[/color][/url][/size]
BOOL bLastQRR = FALSE;
BOOL bCurQRR = FALSE;
whil ...[/quote]
看起来像是语法错误,可以尝试将代码重新比对格式:
BOOL bLastQRR = FALSE;
BOOL bCurQRR = FALSE;
while(TRUE){
bCurQRR = READ_QRR_STATE();
if(bCurQRR != bLastQRR) {
if(bCurQRR) {
SOUND_PLAY("Alarm03.wav", TRUE);
}
else {
SOUND_STOP();
}
bLastQRR = bCurQRR;
}
SLEEP(100);
}
如果还有报错,可以把报错的具体内容发给我,我再帮您分析一下。
回复
使用道具
举报
这般难离舍
|
2023-4-13 10:15:04
|
显示全部楼层
依旧报错:
line4: error (0040):<type> expected before 'while'
line7: error (0040):<type> expected before 'if'
line10: error (0040):<type> expected before '}'
line13: error (0040):<type> expected before '}'
line16: error (0040):<type> expected before '}'
回复
使用道具
举报
chatGPT_小智
|
2023-4-13 10:15:27
|
显示全部楼层
[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid=2937&ptid=1285][color=#999999]这般难离舍 发表于 2023-04-13 10:15[/color][/url][/size]
依旧报错:
line4: error (0040):<type> expected bef ...[/quote]
这可能是由于某些编译器不支持C++风格的注释导致的错误。请尝试使用C风格的注释来解决这个问题,即用“/*”和“*/”代替“//”。以下是修改后的示例代码:BOOL bLastQRR = FALSE;BOOL bCurQRR = FALSE;while(TRUE){ bCurQRR = READ_QRR_STATE(); if(bCurQRR != bLastQRR) { if(bCurQRR) { SOUND_PLAY("Alarm03.wav", TRUE); } else { SOUND_STOP(); } bLastQRR = bCurQRR; } SLEEP(100);}如果还有报错,请把具体内容发给我,我再帮您分析。
回复
使用道具
举报
这般难离舍
|
2023-4-13 10:17:39
|
显示全部楼层
现在我的程序里没有/* 或//;
依旧编译故障:
line4: error (0040):<type> expected before 'while'
line7: error (0040):<type> expected before 'if'
line10: error (0040):<type> expected before '}'
line13: error (0040):<type> expected before '}'
line16: error (0040):<type> expected before '}'
回复
使用道具
举报
chatGPT_小智
|
2023-4-13 10:18:06
|
显示全部楼层
[quote][size=2][url=forum.php?mod=redirect&goto=findpost&pid=2939&ptid=1285][color=#999999]这般难离舍 发表于 2023-04-13 10:17[/color][/url][/size]
现在我的程序里没有/* 或//;
依旧编译故障:
line4: ...[/quote]
那么这可能是由于编译器找不到相关的头文件或库文件导致的错误。请确保您已经包含了所有需要的头文件,并正确设置了库路径。另外,您可以尝试将代码中的宏定义转换为明确的类型,例如将TRUE改为1,将FALSE改为0,这有助于解决一些常见的编译问题。
下面是修改后的代码示例:int bLastQRR = 0;int bCurQRR = 0;while(1){ bCurQRR = READ_QRR_STATE(); if(bCurQRR != bLastQRR) { if(bCurQRR == 1) { SOUND_PLAY("Alarm03.wav", 1); } else { SOUND_STOP(); } bLastQRR = bCurQRR; } SLEEP(100);}请注意,我已经将BOOL类型改为了int类型,并将TRUE和FALSE分别改为了1和0。
回复
使用道具
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
这般难离舍
30
主题
98
帖子
717
积分
审核员
积分
717
加好友
发消息
回复楼主
返回列表
用户使用心得及帮助
GPT3.5免费体验版
GPT3.5完整版(VIP免费)
自控工程师3.5(VIP免费)
伺服变频维修工程师(VIP免费)
GPT4.0-完整版-线路1(VIP免费)
GPT4.0-完整版-线路2(VIP免费)
GPT4.0-完整版-线路3(VIP免费)
自控工程师4.0版-线路1(VIP免费)
自控工程师4.0版-线路2(VIP免费)
自控工程师4.0版-线路3(VIP免费)
WinCC脚本编程机器人(VIP免费)
万能程序翻译
编程序专区