恭喜,你发布的帖子
发布于 2017-01-04 15:38:44
2楼
L #DB_SCALE //3
T #DB_SCALE_TEMP //DB3
L #DB_RESULT //4
T #DB_RESULT_TEMP //DB4,区别DB,使用DI4
OPN DB [#DB_SCALE_TEMP] //打开DB3
OPN DI [#DB_RESULT_TEMP] //打开DI4
L P#DBX 0.0 //地址寄存器AR1,P#DB3.DBX0.0
LAR1
L P#DIX 0.0 //地址寄存器AR2,P#DI4.DIX0.0
LAR2
L #START_ADD //128
SLD 3 //左移3位,变指针格式
T #ADD
L #COUNT //循环数34
NEXT: T #COUNT_TEMP
L DBD [AR1,P#0.0] //DB3.DBD0给到#HI_LIM
T #HI_LIM
L DBD [AR1,P#4.0] //DB3.DBD4给到#LOW_LIM
T #LOW_LIM
A DBX [AR1,P#8.0] //DB3.DBX8.0
= #BIPOLAR
L PIW [#ADD] //PIW128 硬件组态里边去看对应的模拟量
T #INPUT
CALL "SCALE" //上边各种赋值在这里的应用
IN :=#INPUT
HI_LIM :=#HI_LIM
LO_LIM :=#LOW_LIM
BIPOLAR:=#BIPOLAR
RET_VAL:=#RET_RE
OUT :=#OUTPUT
L #OUTPUT // the result will be saved on the DB_RESULT
T DID [AR2,P#0.0] //DB4.DBD0
L #RET_RE // the state word will be saved on the DB_RESULT
T DIW [AR2,P#4.0] //DB4.DBW4
L #ADD // outside input address will be accusumed and saved in the temp val
L P#2.0
+D
T #ADD // //P#130 循环开始前的赋值工作
+AR1 P#10.0 //Address offset accumulation for input 新的AR1, P#DB3.DBX10.0
+AR2 P#6.0 //Address offset accumulation for output 新的AR2, P#DI4.DIX6.0
L #COUNT_TEMP // cyclely get the values 34次循环开始
LOOP NEXT // cyclely get the values
BEU
推荐帖推荐理由:指令说明的很清楚(推荐人:自控龙龙)
请填写推广理由:
分享
只看
楼主