沉迷學(xué)習(xí)
一個什么正在努力學(xué)習(xí)的實習(xí)生
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 14 個
工控威望: 111 點
下載積分: 927 分
在線時間: 3(小時)
注冊時間: 2018-03-13
最后登錄: 2020-06-28
查看沉迷學(xué)習(xí)的 主題 / 回貼
樓主  發(fā)表于: 2018-06-19 19:44
rt,求一份冒泡算法參考。。。如果可以,網(wǎng)絡(luò)視圖再好不過
沉迷學(xué)習(xí)
一個什么正在努力學(xué)習(xí)的實習(xí)生
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 14 個
工控威望: 111 點
下載積分: 927 分
在線時間: 3(小時)
注冊時間: 2018-03-13
最后登錄: 2020-06-28
查看沉迷學(xué)習(xí)的 主題 / 回貼
1樓  發(fā)表于: 2018-06-19 19:45
另外,再問一下,西門子PLC中有像三菱PLC里的SER數(shù)據(jù)查找指令嗎?
worker02
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 115 個
工控威望: 294 點
下載積分: 723 分
在線時間: 280(小時)
注冊時間: 2008-08-01
最后登錄: 2024-12-07
查看worker02的 主題 / 回貼
2樓  發(fā)表于: 2018-06-20 10:51
這些都可以自已寫然后放入庫中調(diào)用,現(xiàn)成的不一定符合自己的應(yīng)用。就當(dāng)給自己練練手也是好的。
FUNCTION FC1006 : VOID
//Know_How_Protect;
VAR_TEMP
   i         :INT;
   S         :BOOL;
   END_VAR
VAR_INPUT
    DB_No    :INT;
    DB_DW    :INT;
    In_Data  :INT;
    Lenght   :INT;
END_VAR
VAR_OUTPUT
    RFPos    :INT;
    Total    :INT;
        END_VAR;
       IF In_Data>0 THEN
         Total:=0;
         RFPos:=0;
         S:=FALSE;
        FOR I:= 0 TO((Lenght*2)-2) BY 2 DO
         IF WORD_TO_INT(WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+I])=In_Data THEN
            IF  S=false THEN
            RFPos:=(DB_DW+I);
            END_IF;
            S:=TRUE;
            Total:=Total+1;
            END_IF;
   END_FOR;
     ELSE
       Total:=0;
       RFPos:=0;
       S:=FALSE;
  END_IF;  
   END_FUNCTION
以上是數(shù)據(jù)查找的原代碼,不知道能不能符合你的要求。

FUNCTION FC1005 : VOID
Know_How_Protect;
VAR_TEMP
   i:INT;
   J:INT;
   II:INT;
  END_VAR
VAR_INPUT
    DB_No:Int;
    DB_DW:INT;
    Lenght:INT;
   On_Off:BOOL;
END_VAR;
     //II:=0;  
     FOR I:= 0 TO (Lenght-1) DO
       FOR J:= 0 to((Lenght*2)-2) BY 2 DO
         IF j<((Lenght*2)-2) THEN
            IF On_Off then
           IF (WORD_TO_INT(WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J])> WORD_TO_INT(WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J+2])) THEN
              II:=WORD_TO_INT(WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J]);
              WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J]:=WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J+2];
              WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J+2]:=INT_TO_WORD(II);
            END_IF;
        ELSE
           IF (WORD_TO_INT(WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J])< WORD_TO_INT(WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J+2])) THEN
              II:=WORD_TO_INT(WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J]);
              WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J]:=WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J+2];
              WORD_TO_BLOCK_DB(INT_TO_WORD(DB_No)).DW[DB_DW+J+2]:=INT_TO_WORD(II);
           END_IF;
        END_IF;
        END_IF;
        END_FOR;

    END_FOR;
  
   END_FUNCTION
以上是數(shù)據(jù)排序源代碼
[ 此帖被worker02在2018-06-20 10:59重新編輯 ]
沉迷學(xué)習(xí)
一個什么正在努力學(xué)習(xí)的實習(xí)生
級別: 探索解密
精華主題: 0
發(fā)帖數(shù)量: 14 個
工控威望: 111 點
下載積分: 927 分
在線時間: 3(小時)
注冊時間: 2018-03-13
最后登錄: 2020-06-28
查看沉迷學(xué)習(xí)的 主題 / 回貼
3樓  發(fā)表于: 2018-06-20 18:46
引用
引用第2樓worker02于2018-06-20 10:51發(fā)表的  :
這些都可以自已寫然后放入庫中調(diào)用,現(xiàn)成的不一定符合自己的應(yīng)用。就當(dāng)給自己練練手也是好的。
FUNCTION FC1006 : VOID
//Know_How_Protect;
VAR_TEMP
   i         :INT;
.......

額。。。請問怎么把這個用在博圖V14里面呢。。。
worker02
級別: 略有小成
精華主題: 0
發(fā)帖數(shù)量: 115 個
工控威望: 294 點
下載積分: 723 分
在線時間: 280(小時)
注冊時間: 2008-08-01
最后登錄: 2024-12-07
查看worker02的 主題 / 回貼
4樓  發(fā)表于: 2018-06-21 09:13
引用
引用第3樓沉迷學(xué)習(xí)于2018-06-20 18:46發(fā)表的  :

額。。。請問怎么把這個用在博圖V14里面呢。。。


我是在S7下編寫應(yīng)用的,博圖上我沒用過,一直都是用S7.不知道是否可以移植。