macro_command main()
short c[6]
GetData(c[0], "本机 触摸屏", LW, 276, 1)
GetData(c[1], "本机 触摸屏", LW, 9019, 1)
GetData(c[2], "本机 触摸屏", RW, 1000, 1)
c[3]=c[0]*10
if c[1]<=3 and c[0]>1 then
c[5]=c[3]-10+1500+c[2]
else if c[1]<18 then
c[5]=c[3]+c[2]+1000
else
c[5]=c[3]+1500+c[2]
end if
c[4]=c[5]-10
SetData(c[5], "本机 触摸屏", RW, 1001, 1)
SetData(c[4], "本机 触摸屏", LW, 9200, 1)
end macro_command
以前的计数程序是在三菱PLC上的,因为D数据不够用现在把程序转到屏上,有些指令不会
大神帮忙一下
第一个问题:比如有个计数按钮LB100 ,上升沿触发宏指令要使地址为RW C[5]里的数据加1
第二个问题:条件跳转。上面程序读取个C[6]变量如果数据小于5跳转到第50条,大于5跳转到80条,没有的话我就用子程序重新编,
第三个问题:计算,
要把RW1011到RW1019里的数据相加写到RW1010或者RW1020都可以,一共31组
直到RW1311到RW1319,中间两位是日期就是把当天的计数合计
这个实现起来应该不太难,只是的写的代码里边没有注释。不太容易一下子看得明白。
第一个问题:比如有个计数按钮LB100 ,上升沿触发宏指令要使地址为RW C[5]里的数据加1 --------》这个自加一很容易实现的。肯定需要Gata获取并自定义变量方便计算使用。
第二个问题:条件跳转。上面程序读取个C[6]变量如果数据小于5跳转到第50条,大于5跳转到80条,没有的话我就用子程序重新编,
-----------》这个跳转的要求,没看明白跳转执行的软元件是哪一个?什么叫50条?什么叫80条?不太懂表达的什么意思
第三个问题:计算,
要把RW1011到RW1019里的数据相加写到RW1010或者RW1020都可以,一共31组
直到RW1311到RW1319,中间两位是日期就是把当天的计数合计
------》 这个思路流程图理清楚了,也不算太难吧。Rw1011到Rw1019应该是9个数值相加把结果保存在rw1010里边。 这都不算太难的事 。
其实你能写出来这些代码,我觉得你说的问题都不是问题的。