91美女视频-亚洲免费观看视频-欧美a∨-久热在线视频-日韩黄网站-成av人片在线观看www-久操综合-超碰av在线播放-性欧美欧美巨大69-婷婷二区-av男人的天堂网-中文字幕一区在线播放-玖草在线观看-国产网址在线观看-免费在线不卡av

王生彬
王生斌
級別: 論壇先鋒
精華主題: 0
發帖數量: 598 個
工控威望: 1796 點
下載積分: 6039 分
在線時間: 273(小時)
注冊時間: 2007-09-07
最后登錄: 2026-01-25
查看王生彬的 主題 / 回貼
樓主  發表于: 2009-07-16 11:41
step7中的難點:間接尋址示例,中文詳細注釋。


  

推薦歡迎糾錯,防止誤導。
  
FUNCTION "DBtoDB" : VOID //該功能塊的作用是把一個數據塊中的指定的一批數據,復制到另一個塊的指定位置。  
TITLE =                  //標題,這里沒有指定  
AUTHOR : BaiZH           //作者 感謝您,BaiZH,通過您的這個例子我基本入明白了間接尋址的用法。不過具體在什么情況下使用我還得繼續努力。  
FAMILY : IR               //分類  
NAME : DBtoDB              //名稱  
VERSION : 0.1              //版本  
VAR_INPUT                                                              //輸入型變量聲明開始  
  SRC_DB : INT ; //Source DB Block Number                           //整型值,要復制的源數據塊塊號  
  SRC_SttAddr : INT ; //Start Address of the Sending Data in SRC_DB  //源數據塊的要復制的數據起始地址  
  SendNum : INT ; //Words Number Need Sending                         //要復制的數據量  
  DST_DB : INT ; //Destination DB Block Number                       //目標數據塊號  
  DST_SttAddr : INT ; //Start Address of the Receiving Data in DST_DB //目標數據塊中數據起始地址  
END_VAR  
VAR_IN_OUT                                                              //輸入輸出變量聲明                                                        
  Enable : BOOL ; //Enable Bit                                        //使能此功能塊位  
END_VAR  
VAR_TEMP                                                                //聲明臨時變量  
  DB_LOAD_TEMP : INT ;                                               //存放臨時數據塊塊號  
  Loop_Val : INT ;                                                     //Send Data Loop Value //循環次數  
  DB_SAVE : INT ;                                                     //保存進入此函數前,系統已經打開的數據塊號  
  DI_SAVE : INT ;                                                     //同上  
  AR1_SAVE : DWORD ;                                                    //保存進入此函數前,地址寄存器1中的值  
  AR2_SAVE : DWORD ;                                                 //同上  
END_VAR  
BEGIN  //在STEP7的BLOCK中編輯時的程序主要從這里開始  
NETWORK  
TITLE =Send Data  
//Move data from DB to DB  
      A     #Enable;    //使能位,ENABLE為1執行以下程序  
      JCN   END;         //否則跳轉到最后  
      TAR1  #AR1_SAVE; // Save AR and Opened DB //保存進入此函數前的數據到臨時變量中,以備離開時復原  
      TAR2  #AR2_SAVE;  
      L     DBNO;     //同上,保存調用前的現場數據,以備調用完畢復原主程序的現場數據  
      T     #DB_SAVE;  //一個DBNO,一個DINO,是因為要同時打開兩個數據塊,只能一個背景數據塊,一個共享數據塊。  
      L     DINO;  
      T     #DI_SAVE;  
      L     #SRC_DB; //Open DB  //把要打開的數據塊塊號通過中間變量#DB_LOAD_TEMP傳送
      T     #DB_LOAD_TEMP;  
      OPN   DB [#DB_LOAD_TEMP];  
      L     #DST_DB; //Open DB  
      T     #DB_LOAD_TEMP;  
      OPN   DI [#DB_LOAD_TEMP];  
      L     #SRC_SttAddr; //Load Start Address //要復制的數據起始地址  
      SLD   3; //左移位,使的地址指針最右邊三位保證為0,確保符合地址格式的要求。詳細: http://bbs.e10000.cn/a/a.asp?B=302&;ID=608300  
      LAR1  ;  
      L     #DST_SttAddr;  
      SLD   3;  
      LAR2  ;  
      L     #SendNum;  開始循環程序,把復制的數據量放入循環變量中  
LP1:  T     #Loop_Val; //Move Data  
      L     DBW [AR1,P#0.0];  
      T     DIW [AR2,P#0.0];  
      +AR1  P#2.0;  //指針移位  
      +AR2  P#2.0;  
      L     #Loop_Val;  
      LOOP  LP1; //循環變量減1,判斷循環條件  
      LAR1  #AR1_SAVE; //Recover Original AR and DB//這里在執行完功能后,開始恢復調用前的主程序現場數據。  
      LAR2  #AR2_SAVE;  
      OPN   DB [#DB_SAVE];  
      OPN   DI [#DI_SAVE];  
      SET   ; //系統將RLO置1,代表FB(FC)執行完畢,相當于功能塊的ENO使能輸出位。再次感謝cvlsam。  
      R     #Enable;  
END:  NOP   0;  
END_FUNCTION  

luoshenglong
級別: *
精華主題: * 篇
發帖數量: * 個
工控威望: * 點
下載積分: * 分
在線時間: (小時)
注冊時間: *
最后登錄: *
查看luoshenglong的 主題 / 回貼
1樓  發表于: 2010-04-11 23:19
hao,這個文章真的很不錯,再接再厲
homexuejun
級別: 探索解密
精華主題: 0
發帖數量: 57 個
工控威望: 121 點
下載積分: 465 分
在線時間: 23(小時)
注冊時間: 2010-04-22
最后登錄: 2025-02-12
查看homexuejun的 主題 / 回貼
2樓  發表于: 2010-06-05 20:24
還是有點看不懂樓主多指點可以不qq437803317
wangyd
級別: 略有小成
精華主題: 0
發帖數量: 123 個
工控威望: 214 點
下載積分: 467 分
在線時間: 58(小時)
注冊時間: 2010-06-28
最后登錄: 2024-08-01
查看wangyd的 主題 / 回貼
3樓  發表于: 2010-07-07 19:32
我是新手,覺得有用,下了一個留著,謝謝樓主!
chaocheng
級別: 探索解密
精華主題: 0
發帖數量: 13 個
工控威望: 130 點
下載積分: 592 分
在線時間: 9(小時)
注冊時間: 2014-05-18
最后登錄: 2025-02-14
查看chaocheng的 主題 / 回貼
4樓  發表于: 2022-09-20 11:41
很好的帖子,現在發現,昨晚上看了一個類似功能的塊,異曲同工啊。

主站蜘蛛池模板: 中文字幕在线观看欧美 | 黄色免费av网站 | 亚洲天堂2014 | 韩国女主播裸体摇奶 | 顶级嫩模啪啪呻吟不断好爽 | 亚洲第一视频在线 | 9191在线视频 | 国产福利久久久 | 亚洲av无码不卡 | 国产日产久久高清欧美一区 | 99热这里只有精 | 亚洲黄色精品 | 少妇性生活视频 | 麻豆网站 | 天美乌鸦星空mv | 成年人网站免费 | 你懂的91| 亚洲另类色综合网站 | 妞干网这里只有精品 | 图书馆的女友在线观看 | 天天干人人干 | 日本亚洲色大成网站www久久 | 日本美女一区二区三区 | 欧美在线视频观看 | 我们的生活第五季在线观看免费 | 超碰com| 国产中文欧美日韩在线 | 岛国激情 | 娇妻被肉到高潮流白浆 | 人妻体内射精一区二区三区 | 久久精品亚洲精品 | 91网站免费入口 | 亚洲第一免费网站 | 亚洲情侣av | 久久综合一区二区三区 | 草草影院国产 | 麻豆传媒在线免费 | 久久首页| 野花视频在线观看免费 | 亚洲av色香蕉一区二区三区 | 色哟哟国产| 校园sm主奴调教1v1罚视频 | 乱色精品无码一区二区国产盗 | 69久久久久 | 人人爽人人澡 | 国产午夜精品久久 | 日本熟妇一区二区 | 亚洲激情另类 | 嫩草嫩草嫩草嫩草嫩草嫩草 | 污视频免费在线 | 精品久久久久久无码国产 | 国产亚洲精品久久777777 | 欧美福利一区二区三区 | 国语对白在线观看 | 麻豆视频播放 | 亚洲欧美系列 | 亚洲精选一区 | 手机在线免费看av | 日韩三级中文字幕 | 久久538| 密色av | 亚洲香蕉在线观看 | 辟里啪啦国语版免费观看 | 三年电影在线观看 | 色视频在线播放 | 国产情侣一区二区 | 中文二区 | 99热| 夜夜爽夜夜操 | av自拍 | 色天堂在线视频 | 久爱视频在线观看 | xxsm.com | 操久久久 | 中文字幕免费视频 | 91成人在线观看国产 | 综合成人在线 | 国产资源第一页 | 女人脱了内裤趴开腿让男躁 | 黄色免费av| 久久综合一区二区 | 玖玖精品 | 亚洲毛片一区二区 | 日韩v| 色老头在线视频 | 国产日韩精品在线观看 | 少妇xxxx| 精品福利电影 | 又大又粗又爽18禁免费看 | 亚洲国产一区在线观看 | ass亚洲熟妇毛耸耸pics | 看av的网址| 91插插影库 | 射综合网| 黄色一节片 | 黄网页在线观看 | 性一级视频| 日本涩涩视频 | 私人午夜影院 |