求高师分析程序

已锁定

人生笑看

西门子1847工业学习平台

  • 帖子

    35
  • 精华

    0
  • 被关注

    2

论坛等级:游士

注册时间:2010-07-10

普通 普通 如何晋级?

求高师分析程序

690

3

2012-02-06 20:28:17

L #LIST_DB
T #DBNR
OPN DB [#DBNR]
L DBW 436
+ 1
T DBW 436
//-------------------------------------

AN DBX 80.0
AN DBX 30.0
AN DBX 30.4
AN DBX 30.5
S DBX 30.0
// ------------------------
// Generate edge SEND_REQ
// ------------------------
A(
O DBX 30.4
O DBX 30.5
)
A DBX 30.0
R DBX 30.0

A DBX 30.0 //Flankenauswertung SENDEN
FP DBX 28.0 //Flankenmerker
= DBX 28.1 //Impulsmerker

AN DBX 28.1
JC MV

//-------------------------------------------------------------------------------
// Auftrag aus Liste 1 bearbeiten
// read order out of list 1
// *) Auftragsliste2 deaktiviert 17.09.03 B.Wagner
//-------------------------------------------------------------------------------
L #ALi1_DB //Auftragsliste 1 oeffnen -- open list1
T #DBNR
OPN DB [#DBNR]
LAR1 DBD 0 //Zeiger restaurieren -- restore pointer
L W [AR1,P#0.0]
L W#16#EEEE //ENDE-Kennung -- sign for "end of list"
<>I
JC Tra1 // *)
/// SPB Tran //Auftragsdaten kopieren -- copy order data *)
LAR1 P#DBX 16.0 //Listenende gefunden, Zeiger auf Listenanfang setzen
TAR1 DBD 0 //end of list reached, set pointer to start of list
JU Tra1

// Wenn die Liste 1 einmal vollstaendig abgearbeitet wurde, wird ein Auftrag
// ausder Liste 2 bearbeitet
// each time the end of list 1 is reached, one order from list 2 is handled
//-------------------------------------------------------------------------------
// Auftrag aus Liste 2 bearbeiten
// read order out of list 1
//-------------------------------------------------------------------------------
L #LIST_DB
T #DBNR
OPN DB [#DBNR]
L DBW 436 // Zeit f黵 einen Pufferdurchlauf Liste 1
L 6
*I
T DBW 438
L 0
T DBW 436
//-------------------------------------------------------------------------------

L #ALi2_DB //Auftragsliste 2 oeffnen -- open List 2
T #DBNR
OPN DB [#DBNR]
LAR1 DBD 0 //Zeiger restaurieren -- restore pointer
L W [AR1,P#0.0]
L W#16#EEEE //ENDE-Kennung -- sign for "end of list"
<>I
JC Tran
LAR1 P#DBX 16.0 //Listenende gefunden, Zeiger auf Listenanfang setzen
TAR1 DBD 0 //end of list reached, set pointer to start of list
Tran: TAR1 DBD 0 //Adressregister 1 sichern - save addressregister 1
Tra1: NOP 0 // *)
//------------------------------------------------------------------------------//
//Pointer auf Datenquelle setzen
//create source pointer
//------------------------------------------------------------------------------
LAR1 P##ANY_Pointer1 //Adresse ANY_Pointer in AR1 laden -- load address of pointer
L DBD 0 //Zeiger auf Datenwort -- pointer to dataword
T LD [AR1,P#6.0]
L #DBNR
T LW [AR1,P#4.0] //DB-Nummer -- db number
L W#16#6 //Anzahl Daten 4 Byte -- number of data
T LW [AR1,P#2.0]
L W#16#1002 //Byte 0 immer 10H, 2 fuer Datentyp Byte
T LW [AR1,P#0.0] //byte 0 always 10H, 2 for datatype byte
//------------------------------------------------------------------------------
// Pointer auf Datenziel setzen
// create destination pointer
//------------------------------------------------------------------------------
LAR1 P##ANY_Pointer2 //Adresse ANY_Pointer in AR1 laden -- load address of pointer
L 20 //Daten im LIST_DB ab DBB20 ablegen -- transfer data to DBB20
SLD 3
OD DW#16#84000000
T LD [AR1,P#6.0]
T LD [AR1,P#6.0]
L #LIST_DB
T LW [AR1,P#4.0]
L W#16#6
T LW [AR1,P#2.0]
L W#16#1002
T LW [AR1,P#0.0]
请高师指点P##ANY_Pointer1 和P##ANY_Pointer2 值是怎么来的!谢谢
求高师分析程序 已锁定
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-300/400

共有54617条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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