根据别人写的程序后所做的注释和修改-PLC技术网(www.plcjs.com)-可编程控制器技术门户


根据别人写的程序后所做的注释和修改

 (点击题目可以 在互联 网中搜索该题 目的相关内容)
日期:2006-8-25 9:52:00     来源:   作者:xiaolei-sun 点击:
点击【 大  中  小 】,可以选择字体的大小,以便你阅读.

循环读模拟量入DB
      L     #DB_NO
              局域变量(存储的是块号)
      T     LW     0
                将数据块的块号存放在LW0中!
      OPN   DB [LW 0]
           打开数据块!
      L     #PIW_ADDR
           将模拟通道的起始地址左移三位,以便与寄存器内部寻址的格式相匹配!
      SLD   3
      T     LD     4
      L     #DBD_ADDR
          将数据块内双字地址左移三位,以便与寄存器内部寻址的格式相匹配!
      SLD   3
                    因双字做寄存器间接寻址时,低三位必须为0

    T     LD     8
      L     #CH_LEN
              将通道数量传到累加器1中!

NEXT: T     LW     0
      L     LD     4
                将模拟通道起始地址传数据到累加器1中!
      LAR1  
                     将累加器1中的内容送到地址寄存器1中!
      L     PIW [AR1,P#0.0]
        将第一次采集的模拟量数据存到LW2中!
      T     LW     2

     { CALL  "Read Analog Value 464-2"
       IN     :=LW2
       HI_LIM :=5.000000e+002
       LO_LIM :=-1.000000e+001      
将模拟量转换成工程量
       BIPOLAR:=TRUE

RET_VAL:=LW10
       OUT    :=LD12   }


      L     LD     8
      LAR1  
      L     LD     2
      T     DBD [AR1,P#0.0]
        将采集到的模拟量存储 在数据块中!(从字地址DBW_Addr)开始
      L     LD     4
      +     L#16
      T     LD     4
                 将模拟量的起始地址加16,表示采集下一个模拟通道的数据!
      L     LD     8
      +     L#32
      T     LD     8
             数据块字地址加32(因为采集后的模拟量是以32位的数保存在数据块内)
      L     LW     0
   

DEC  1             将通道字节数减一。

JN UMP            如果通道数未采集结束,则继续循环采集。如果一个循环完毕的话,则重新

 L     #CH_LEN      设置起始参数!

 L     #PIW_ADDR         将模拟通道的起始地址左移三位,以便与寄存器内部寻址的格式相匹配!
      SLD   3
      T     LD     4

 UMPLOOP NEXT
PIW_Addr 
:模拟块通道起始地址
CHI_LEN 
:要读入的 通道数
DB_NO 
:存储数据块的块号
DBW_Addr 
:存储在数据块中的双字地址

上一篇: 请教96回路温度控制PLC配置,很急
下一: 差压变送器在应用中的故障诊断与分析