wincc7的常用c语言,WINCC几个常用C语言编程-20210311144534.docx-原创力文档

WINCC几个常用 C 语言编程

全局脚本编程(按钮连续增减)

说明: 1、建立全局脚本函数

2 、建立全局动作C 脚本

、在启动画面的打开画面中调用全局脚本函数

、在计算机的启动选项中选中全局脚本全局脚本函数 InitAction ()

extern char

tagname[30] = " " ;

extern

SHORT count = 0;

extern

FLOAT low = 0;

extern

FLOAT high = 0;

extern

FLOAT step = 0;

void

InitAction()

按钮左键按下连续增加

extern char

tagname[30];

extern

SHORT count;

extern

FLOAT low;

extern

FLOAT high;

extern

FLOAT step;

strcpy(tagname,"S32i_varia_but_04");

count = 1;

low = 0;

high =1400;

step =0.5;

按钮左键按下连续减少

extern char

tagname[30];

extern

SHORT count;

extern

FLOAT low;

extern

FLOAT high;

extern

FLOAT step;

strcpy(tagname,"S32i_varia_but_04");

count = 2;

low = 0;

high =1400;

step =0.5;

按钮左键松开停止增减

externSHORT count;

count=0;

全局动作 C 脚本( counter.pas

)

#include

"apdefap.h"

int gscAction( void )

{

extern char

tagname[30];

extern

SHORT count;

extern

FLOAT

low;

extern

FLOAT

high;

extern

FLOAT

step;

FLOAT value;

if((count==1)||(count==2)) {

//get current value

value = GetTagFloat (tagname);

if(count==1)

{

//inc

value = value+step;

if(value>high) (value=high); //high lim

it

if

}//if

(count==2)

{

//dec

value = value-step;

if(value

//low limi

t

}//if

SetTagFloat (tagname,value);

}//if

return (0);

}

全局脚本函数( InitAction)文件:

C脚本( counter.pas )文件:

按钮左键连续增加文件:

按钮左键松开文件:

C脚本编程(按钮按击增减)

1、直接调用 C动作方式实现:

#include

"apdefap.h"

voidOnLButtonDown(char * lpszPictureName,

ar * lpszPropertyName,UINTnFlags,int

char * lpszObjectName, x, int y)

ch

{

FLOAT value;

value=GetTagFloat("S32i_varia_but_00"); //get tag value

if

else

(value>1300) (value=1400);

value=value+100;

//check limit

//inc valu

e

SetTagFloat("S32i_varia_but_00",value); //set new value

2、调用函数方式实现( incdecvalue ):

FLOAT value;

value=GetTagFloat ("S32i_varia_but_04");

IncDecValue(&value,0,1400,100,1);

SetTagFloat ("S32i_varia_but_04",value);

项目函数( incdecvalue )

voidIncDecValue(FLOAT *value,FLOAT low,FLOAT high,FLOAT step,DWORD

a)

{

FLOATv;

v=*value; //get current value

switch(a){

case0: {

if(v

e

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值