📄 untitled.pr
字号:
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy,4)*/
system CentralSys;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy(1),209(65,20))*/
signal PutOn,PutOff,Num, PhoneNum_Out,PhoneNum_In;
signallist UserInput = PutON,PutOff,Num;
signal Available,BusyLine,BusyNetWork;
signal Release,NormalRing,BusyLR,BusyNR,stopRing;
signallist RingType = NormalRing,BusyLR,BusyNR,stopRing;
signallist CalledUser_State= Available,BusyLine,BusyNetWork;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy(1),164(36,82))*/
channel /*#E*/
User_Interface nodelay from env to Call_Handle with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy(1),165(42,92))*/
(UserInput);
endchannel User_Interface;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy(1),155(177,75))*/
channel /*#E*/
Interface_User nodelay from Call_Handle to env with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy(1),156(152,95))*/
PutOn,PutOff,PhoneNum_Out;
from env to Call_Handle with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy(1),157(130,82))*/
(CalledUser_State),(RingType),PhoneNum_In;
endchannel Interface_User;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy(1),149(75,75))*/
block Call_Handle referenced;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CentralSys.ssy,4)*/
endsystem CentralSys;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk,4)*/
block Call_Handle;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),338(60,20))*/
signallist UserCtrl = PutOn,PutOff;
signal toRing , dsplCtrl ;
signal dsplIn,dsplOut,dsplNo,dsplRmv,dsplCnt;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),278(145,82))*/
signalroute /*#E*/
CallIn_State from CallIn to env with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),279(170,117))*/
PutOn,
PutOff;
from env to CallIn with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),280(153,95))*/
PhoneNum_In,(RingType);
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),185(72,82))*/
signalroute /*#E*/
CallIn_Manage from UserCtrlManage to CallIn with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),186(97,90))*/
PutOn,
PutOff;
from CallIn to UserCtrlManage with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),187(55,107))*/
Release;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),122(32,117))*/
signalroute /*#E*/
to_Manage from env to UserCtrlManage with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),123(37,127))*/
(UserInput);
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),197(75,160))*/
signalroute /*#E*/
CallOut_Manage from UserCtrlManage to CallOut with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),198(95,170))*/
(UserCtrl);
from CallOut to UserCtrlManage with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),199(72,140))*/
Release;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),287(148,172))*/
signalroute /*#E*/
CallOut_State from CallOut to env with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),288(165,130))*/
PhoneNum_Out,
PutOff;
from env to CallOut with
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),289(154,152))*/
(CalledUser_State);
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),140(115,80))*/
process CallIn referenced;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),119(60,115))*/
process UserCtrlManage referenced;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),143(115,155))*/
process CallOut referenced;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),134(2,127))*/
connect User_Interface and to_Manage;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk(1),293(192,122))*/
connect Interface_User and CallIn_State, CallOut_State;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Call_Handle.sbk,4)*/
endblock Call_Handle;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr,4)*/
process UserCtrlManage
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr,1)*/
;fpar
NormalRing integer,
BusyLineR integer,
BusyNR integer,
dsplIn integer,
dsplOut integer,
dsplNo integer,
dsplRmv integer,
dsplCnt integer;
signalset PhoneNumIN;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),146(5,60))*/
signal PutOn,PutOff;
signal PhoneNumIN;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),140(5,85))*/
procedure Deal_Key_Down referenced;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),143(5,110))*/
procedure Deal_Signal_In referenced;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),116(95,35))*/
start /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),155(80,65))*/
task {/*#E*/
NormalRing:=0;
BusyLineR:=1;
BusyNR:=2;
dsplIn:=0;
dsplOut:=1;
dsplNo:=3;
dsplRmv:=4;
dsplCnt:=5;
};
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),173(95,110))*/
nextstate /*#E*/
idle;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),173(95,110))*/
state /*#E*/
idle;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),167(90,130))*/
input /*#E*/
PhoneNumIN;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),197(85,155))*/
call /*#E*/
Deal_Signal_In;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),200(85,180))*/
call /*#E*/
Deal_Key_Down;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),209(100,205))*/
stop /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr(1),173(95,110))*/
endstate;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\UserCtrlManage.spr,4)*/
endprocess UserCtrlManage;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd,4)*/
procedure Deal_Key_Down
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd,1)*/
;fpar
in KeyInput integer,
dsplCtrl integer,
toRIng integer;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),263(5,40))*/
dcl KeyInfo integer;
dcl PutOn integer;
dcl PutOff integer;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),119(100,15))*/
start /*#E*/
;
grst0:
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),269(90,50))*/
task {/*#E*/
KeyInfo:=KeyInput;
PutOn:= 11;
PutOff:=10;};
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),185(90,85))*/
decision /*#E*/
KeyInfo = PutOff;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),194(112,107))*/
(false):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),191(90,115))*/
decision /*#E*/
KeyInfo = PutOn;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),251(145,125))*/
(false):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),341(140,140))*/
task /*#E*/
dsplCtrl:=dsplNo;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),269(90,50))*/
join /*#E*/
grst0;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),212(112,140))*/
(true):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),329(95,155))*/
task /*#E*/
dsplCtrl := dsplOut;
grst1:
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),203(105,215))*/
return /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),191(90,115))*/
enddecision;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),200(52,97))*/
(true):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),317(40,140))*/
task /*#E*/
dsplCtrl := dsplRmv;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),203(105,215))*/
join /*#E*/
grst1;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd(1),185(90,85))*/
enddecision;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Key_Down.spd,4)*/
endprocedure Deal_Key_Down;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd,4)*/
procedure Deal_Signal_In
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd,1)*/
;fpar
toRing integer,
dsplCtrl integer,
PhoneNumIN integer;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd(1),116(70,25))*/
start /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd(1),188(60,40))*/
decision /*#E*/
PhoneNUmIN>0;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd(1),191(55,45))*/
(true):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd(1),167(25,55))*/
task /*#E*/
dsplCtrl:=dsplIn;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd(1),176(20,85))*/
task /*#E*/
toRing:=NormalRing;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd(1),194(90,67))*/
(false):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd(1),188(60,40))*/
enddecision;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd(1),149(32,115))*/
return /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Deal_Signal_In.spd,4)*/
endprocedure Deal_Signal_In;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr,4)*/
process CallIn
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr,1)*/
;fpar
PhoneNum_In integer,
dsplCtrl integer,
toRing integer;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),122(5,45))*/
dcl IsAvailable boolean ;
dcl IsPutOn boolean;
dcl PhoneNo integer ;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),146(10,70))*/
procedure On_Busy referenced;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),149(5,90))*/
procedure Get_Through referenced;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),116(105,20))*/
start /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),182(95,45))*/
task {/*#E*/
PhoneNo:=PhoneNum_In;
toRing:=-1;
dsplCtrl:=-1;};
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),152(95,75))*/
decision /*#E*/
IsAvailable;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),161(90,80))*/
(false):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),158(50,110))*/
call /*#E*/
On_Busy;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),167(137,80))*/
(true):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),164(140,110))*/
call /*#E*/
Get_Through;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),152(95,75))*/
enddecision;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr(1),215(105,165))*/
stop /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\CallIn.spr,4)*/
endprocess CallIn;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\On_Busy.spd,4)*/
procedure On_Busy;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\On_Busy.spd(1),116(95,45))*/
start /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\On_Busy.spd(1),119(100,75))*/
return /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\On_Busy.spd,4)*/
endprocedure On_Busy;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd,4)*/
procedure Get_Through
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd,1)*/
;fpar
dsplIn integer,
NormalRing integer,
dsplCtrl integer,
toRing integer;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd(1),128(5,50))*/
dcl IsPutOn,UserSet boolean ;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd(1),116(90,55))*/
start /*#E*/
;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd(1),194(85,75))*/
task /*#E*/
dsplCtrl:=dsplIn;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd(1),200(80,100))*/
task /*#E*/
toRing:=NormalRing;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd(1),182(80,125))*/
task /*#E*/
IsPutOn:=UserSet;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd(1),149(85,155))*/
decision /*#E*/
IsPutOn;
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd(1),158(120,157))*/
(true):
/*#SDTREF(SDL,E:\协议工程_075590_林昕\PE_075590_林昕\Get_Through.spd(1),155(120,200))*/
nextstate /*#E*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -