发表于:2005-05-12 15:31:00
1楼
制作步骤:
希望各位在读此文章前,先对HITECH人机界面的配方功能有初步了解,尤其是RCPNO的作用,否则可能会看不明白
1、使用ADP 6.0软件,各位如没有可到WWW.ACEPILLAR.COM下载
2、新建一程序,设定读写配方地址,长度设为10,组数设为100
3、变量标签表中:
TOP @100
NO @200
TEMP_1 @300
TEMP_2 @301
TEMP_3 @302
4、制作十个数值输入,为@0~@9,用于输入数据;
5、制作一个数值输入,为NO,用于选择将所输入的数据放到配方数据的什么位置;
6、制作一数值显示,为TOP,用于显示目前共有多少组配方;
7、制作一保持型按钮,命名为删除按钮,用于将选定的NO组数据删除,
删除按钮OFF宏:
IF NO > 0 THEN DO
IF TOP > 0 THEN DO
IF TOP > NO THEN DO
TEMP_1 = ADD(NO, 1)
TEMP_2 = SUB(TOP, NO)
FOR TEMP_2
RCPNO = TEMP_1
BMOV(@30, RCPW0, 10)
RCPNO = SUB(TEMP_1, 1)
BMOV(RCPW0, @30, 10)
TEMP_1 = ADD(TEMP_1, 1)
NEXT
ENDIF
IF TOP >= NO THEN DO
RCPNO = TOP
FILL(RCPW0, 0, 10)
TOP = SUB(TOP, 1)
ENDIF
ENDIF
ENDIF
END
主要思想为,首先将NO+1组的数据保存到@30~@39中,然后将其保存到NO组中,再将NO+2组的数据保存到@30~@39中,然后将其保存到NO+1组
中,直到最后一组;
8、制作一保持型按钮,命名为插入按钮,用于将@0~@9中的数据插入到配方的NO组,原NO组及以后的数据向后移动,
插入按钮OFF宏:
IF NO > 0 THEN DO
IF TOP >= NO THEN DO
TEMP_1 = TOP
TEMP_2 = SUB(TOP, NO)
TEMP_2 = ADD(TEMP_2, 1)
FOR TEMP_2
RCPNO = TEMP_1
BMOV(@30, RCPW0, 10)
RCPNO = ADD(TEMP_1, 1)
BMOV(RCPW0, @30, 10)
TEMP_1 = SUB(TEMP_1, 1)
NEXT
RCPNO = NO
BMOV(RCPW0, @0, 10)
TOP = ADD(TOP, 1)
ELSE DO
RCPNO = NO
BMOV(RCPW0, @0, 10)
TOP = NO
ENDIF
ENDIF
END
主要思想为,首先将TOP组的数据保存到@30~@39中,然后将其放到TOP+1组中,再将TOP-1组放到TOP组中,直到NO组放到NO+1组中,然后再
将@0~@9的数据放到NO组。
9、制作一保持型按钮,命名为填充按钮,用于将@0~@9中的数据填充到配方的NO组,其它数据不变。
填充按钮OFF宏:
IF NO > 0 THEN DO
RCPNO = NO
BMOV(RCPW0, @0, 10)
IF NO > TOP THEN DO
TOP = NO
ENDIF
ENDIF
END
主要思想为,将数据放到NO组。