一个老外做的工程项目里面用于量程转换的程序,没看懂,大家分析分析

已锁定

明天

  • 帖子

    211
  • 精华

    3
  • 被关注

    9

论坛等级:侠客

注册时间:2006-08-14

普通 普通 如何晋级?

一个老外做的工程项目里面用于量程转换的程序,没看懂,大家分析分析

787

0

2010-12-30 17:25:20

TAR1 #BUFFER_AR1 // Trasnsfer address register 1 to BUFFER_AR1.

OPN "T" // Open DB60.
L DBLG // Load length of shared DB60 (bytes).
L 18 // Number of bytes for each data in DB60.
/I
T #NUMBER_OF_DATA_IN_DB // Number of data into the shared DB60.


L P#DBX 0.0 // Load pointer to first byte in DB60.
L 2 // 2 (bytes).
SLD 3 // Shift Left 3 positions (Dobleword).
+D // Pointer to third byte in DB60.
LAR1 // Load Address Register 1 from Accumulator 1.


L #NUMBER_OF_DATA_IN_DB


NEXT: T #LOOP_COUNTER // Transfer low word from ACU

1toLOOP_COUNTER.
L D [AR1,P#8.0] // Load into ACU 1 the

double Word whose memory
L D [AR1,P#4.0] // location is calculated (AR1 + 8.0).
-R
T #SUBTRACT_LSV_FROM_HSV // HSV - LSV.



L W [AR1,P#0.0] // Load Field input (INTEGER).
ITD // INTEGER TO DOUBLE INTEGER.
DTR // DOUBLE INTEGER TO REAL.
L 2.764800e+004 // Load module nominal range (0 - 27648).
/R // Slope.



L #SUBTRACT_LSV_FROM_HSV
*R
L D [AR1,P#4.0] // Low Scaling Value (LSV).
+R
T D [AR1,P#12.0] // Transfer to Scaling Value (SV).




L P#18.0 // Number of bytes for each data in DB60.
+AR1 // Add Accumulator 1 to Address Register 1.
L #LOOP_COUNTER
LOOP NEXT // Decrement LOOP_COUNTER and go to NEXT if <>0.




LAR1 #BUFFER_AR1 // Restore Initial Address Register.
一个老外做的工程项目里面用于量程转换的程序,没看懂,大家分析分析 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54787条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
X 图片
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。