引用 | 回复
| 管理
| 设为最佳回复
| 2006-09-12 09:56:00 10楼 vinger 启动触摸屏"PLC控制"-->"切换窗口功能",然后写宏指令,读取PLC的年月日 与触摸屏内部时钟比较,如果正确,写入所要切换到的窗口数字.
宏指令如下:
Macro_Command main()
int year,month,day
int plc_year,plc_month,plc_day
int winnum
winnum=40
GetData(year,RW_Bcd,200,1)
GetData(month,RW_Bcd,201,1)
GetData(day,RW_Bcd,202,1)
GetData(plc_year,RW_Bcd,60005,1)
GetData(plc_month,RW_Bcd,60004,1)
GetData(plc_day,RW_Bcd,60003,1)
If year==plc_year And month==plc_month And day==plc_day Then
SetData(winnum,LW_BIN,10,1)
End If
End Macro_Command
说明:
1.设置LW10为切换窗口寄存器
引用 | 回复
| 管理
| 设为最佳回复
| 2006-09-12 23:47:00 11楼 老菜鸟 TO:“深圳市正盈科技有限公司”
刚刚对你写的宏指令进行了离线模拟:
我加了3个RW200,RW201,RW202数字输入元件进行模拟,当把RW200,RW201,RW202的值设置为当前系统日期时,LW10的值不会被赋为40(因为我设置了显示LW10值的显示元件,LW10的值始终为0)。
而手动将LW10的值设为40时,将弹出40#窗口(当然40#窗口的安全等级不会高于当前安全等级)。。。。。。
我看了下宏指令,没看出问题...请解答问题出在哪里??? 引用 | 回复
| 管理
| 设为最佳回复
| 2006-09-13 21:12:00 12楼 老菜鸟 顶一下! 引用 | 回复
| 管理
| 设为最佳回复
| 2006-09-13 21:47:00 13楼 老菜鸟 今天晚上测试成功!
昨晚犯了常识性错误。。。见笑了。。。 引用 | 回复
| 管理
| 设为最佳回复
| 2006-09-13 21:48:00 14楼 老菜鸟 再次谢谢! 引用 | 回复
| 管理
| 设为最佳回复
| 2006-09-16 09:48:00 15楼 vinger TO:老菜鸟
AN:请问"常识性错误"是什么意思? 引用 | 回复
| 管理
| 设为最佳回复
| 2006-09-16 12:43:00 16楼 老菜鸟 因为还必须建一个运行宏指令的PLC控制单元。
你上面没说,我也没建,所以。。。呵呵 |