AMX编程某案例(快速编程入门)
look ePROGRAM_NAME='BEIJING 15-07-2000 TRAINING 2' (*程序文件one life名,最后修改日期、时间*)
(* DATE:07/15/00 TIME:18:14:34 *)
(***********************************************************)
(* System Type : 系统类型 *)
(***********************************************************)
(***********************************************************)
(* DEVICE NUMBER DEFINITIONS GO BELOW *)
(***********************************************************)
DEFINE_DEVICE (*定义_设备号*)
PROJ=1 (*定义投影机_1#*)
RELAY=7 (*定义继电器_7#*)
VCD=8 (*定义VCD_8#*)努力工作
VOL=85 (*定义调音合_85#*)
WP=87 (*定义墙身按键_87*)
TP=128 (*定义触摸屏_128#*)
DEFINE_CONNECT_LEVEL (*定义拉条与设备值相关联*)
(TP,1,VOL,1,VOL,2) (*定义TP,1分别VOL,1T和VOL,2相关联*)
(***********************************************************)
(* CONSTANT DEFINITIONS GO BELOW *)
(***********************************************************)
pc什么意思DEFINE_CONSTANT (*定义_常量*)
SCREEN_UP_B=1 (*定义电动幕_向上_按键=1*)
SCREEN_STOP_B=2 (*定义电动幕_停止_按键=2*)
SCREEN_DOWN_B=3 (*定义电动幕_向下_按键=3*)
SCREEN_UP_FB=101 (*定义电动幕_向上_按键反馈=101*)利用RELAY7的9~255空余的地址
SCREEN_STOP_FB=102 (*定义电动幕_停止_按键反馈=102*) 存储反馈信息
SCREEN_DOWN_FB=103 (*定义电动幕_向下_按键反馈=103*)
triangle blue
PLAY_B=11 (*定义播放_按键=11*)
STOP_B=12 (*定义停止_按键=12*)
PAUSE_B=13 (*定义暂停_按键=13*)
SKIP_FWD_B=14 (*定义跳转_快进_按键=14*)
SKIP_REW_B=15 (*定义跳转_快退_按键=15*)
SCAN_FWD_B=16 (*定义搜索_快进=16*)
SCAN_REW_B=17 (*定义搜索_快退_按键=17*)
POWER_B=19 (*定义电源_按键=19*)
VOL_UP_B=21 (*音量_增加_按键=21*)
VOL_DOWN_B=22 (*音量_减少_按键=22*)
VOL_MUTE_B=23 (*音量_静音_按键=23*)
VOL_SLIDER=24 (*音量_拉条按钮号=24*)
VOL_PRESET_B=25 (*音量_预置_按键=25*)
PROJ_ON_B=31 (*投影机_开_按键=21*)
thursdays
PROJ_OFF_B=32 (*投影机_关_按键=21*)
PROJ_VIDEO_B=33 (*投影机_切换视频_按键=21*)
PROJ_RGB_B=34 (*投影机_切换VGA_按键=21*)
PROJ_ON_FB=104 (*投影机_开_按键反馈=21*)
PROJ_OFF_FB=105 (*投影机_开_按键反馈=21*)
(***********************************************************)
(* VARIABLE DEFINITIONS GO BELOW *)
(***********************************************************)
DEFINE_VARIABLE (*设置变量*)
CURRENT_VOL_LEVEL (*定义音量值变量*)
PRESET_VOL_LEVEL
STORE_MODE
PROJ_BUSY (*定义投影机输入端子*)
(***********************************************************)
(* LATCHING DEFINITIONS GO BELOW *)
(***********************************************************)
DEFINE_LATCHING
(***********************************************************)
(* MUTUALLY EXCLUSIVE DEFINITIONS GO BELOW *)
(***********************************************************)
DEFINE_MUTUALLY_EXCLUSIVE (*定义互锁*)
([RELAY,SCREEN_UP_FB]..[RELAY,SCREEN_DOWN_FB]) (*定义电动幕上_停_下按钮反馈互锁*)
([7,101],[7,102],[7,103])
([7,101]..[7,103])
([RELAY,PROJ_ON_FB],[RELAY,PROJ_OFF_FB]) (*定义投影机开_关按钮反馈互锁*)
(***********************************************************)
(* SUBROUTINE DEFINITIONS GO BELOW *) (*定义子程序*)
(***********************************************************)
(*当在IF判断语句里用OR时必须在DEFINE_START语句里将其另一种状态先置为开,*)
(*否则在第一次的起动时其按键会没有响应*)
DEFINE_CALL 'SCREEN UP' (*定义电动幕_向上子程序为"SCREEN UP"*)
{ IF (NOT[RELAY,SCREEN_UP_FB]) (*判断电动幕向上反馈铵钮不是开则运行以下程序*)
{ CANCEL_WAIT 'SCREEN WAIT' (*取消等待“SCREEN WAIT”命令*)
ON[RELAY,SCREEN_UP_FB] (*将电动幕向上反馈按钮置为开*)
OFF[RELAY,1] (*将继电器1置为关*)
OFF[RELAY,2] (*将继电器2置为关*)
WAIT 5 (*等待0.5秒执行下行程序*)counlor
{ ON[RELAY,1] (*将继电器1置为开*) }
(*下面的一段程序是执行屏幕下降10秒钟后将继电器1,2关闭,这样可防止继电器长时间处于通电状态*)
WAIT 100 'SCREEN WAIT' (*等待10秒,并将其定义为‘SCREEN WAIT’子程序*)
unpc
{OFF[RELAY,1] (*将继电器1置为关*)
OFF[RELAY,2] (*将继电器2置为关*)
ON[RELAY,SCREEN_STOP_FB] (*将电动幕停止反馈按钮置为开*)
}
}
}
DEFINE_CALL 'SCREEN STOP' (*定义电动幕_停止子程序为"SCREEN UP"*)
{ ON[RELAY,SCREEN_STOP_FB] (*将电动幕停止反馈按钮置为开*)
OFF[RELAY,1] (*将继电器1置为关*)
OFF[RELAY,2] (*将继电器2置为关*) }
DEFINE_CALL 'SCREEN DOWN' (*定义电动幕_下降子程序为"SCREEN DOWN"*)
{
IF (NOT[RELAY,SCREEN_DOWN_FB]) (*判断电动幕向下反馈铵钮不是开则运行以下程序*)
绯闻女孩第三季插曲{
CANCEL_WAIT 'SCREEN WAIT' (*取消等待“SCREEN WAIT”命令*)
ON[RELAY,SCREEN_DOWN_FB] (*将电动幕向下反馈按钮置为开*)
OFF[RELAY,1] (*将继电器1置为关*)
OFF[RELAY,2] (*将继电器2置为关*)
WAIT 5 (*等待0.5秒执行下行程序*)
volte是什么意思 {
ON[RELAY,2] (*将继电器2置为开*) 这时是先将非供电继电器打开
WAIT 1 (*等待0.1秒) 等待0.1秒使非供电继电器动作完成
ON[RELAY,1] (*将继电器1置为开*) 再将供电继电器打开
}
WAIT 100 'SCREEN WAIT' (*等待10秒, 并将其定义为’SCREEN WAIT’子程序*)
{
OFF[RELAY,1] (*将继电器1置为关*)
OFF[RELAY,2] (*将继电器2置为关*)
ON[RELAY,SCREEN_STOP_FB] (*将电动幕停止反馈按钮置为开*)
}
}
}
(***********************************************************)
(* STARTUP CODE GOES BELOW *)
(***********************************************************)
DEFINE_START (*设定初使状态*)
SEND_COMMAND PROJ,'SET BAUD 19200,N,8,1' (*向投影机发射通信设置指令*)