zhou1211
級別: 略有小成
精華主題: 1 篇
發(fā)帖數量: 205 個
工控威望: 362 點
下載積分: 1172 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2024-09-18
查看zhou1211的 主題 / 回貼
樓主  發(fā)表于: 2021-01-10 14:57
圖片:
VAR
A : array[0..10] OF FB_XX;
END_VAR
   CODESYS 編程可以這樣做數組功能塊調用



西門子定義變量這樣定義就提示不支持,求教是什么原因。資料上說可以
[ 此帖被zhou1211在2021-01-10 17:02重新編輯 ]
ajunn
級別: 家園?
精華主題: 0
發(fā)帖數量: 522 個
工控威望: 682 點
下載積分: 1659 分
在線時間: 1028(小時)
注冊時間: 2008-11-05
最后登錄: 2024-11-08
查看ajunn的 主題 / 回貼
1樓  發(fā)表于: 2021-01-10 22:55
優(yōu)秀
[ 此帖被ajunn在2021-01-11 07:42重新編輯 ]
zhou1211
級別: 略有小成
精華主題: 1 篇
發(fā)帖數量: 205 個
工控威望: 362 點
下載積分: 1172 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2024-09-18
查看zhou1211的 主題 / 回貼
2樓  發(fā)表于: 2021-01-11 08:50
問題已解決,原來只有靜態(tài)變量中能添加,DB全局中也不能,還有什么地方可以定義,感謝提示
heiheiwodeai
級別: 略有小成
精華主題: 0
發(fā)帖數量: 245 個
工控威望: 367 點
下載積分: 974 分
在線時間: 329(小時)
注冊時間: 2013-03-26
最后登錄: 2024-11-08
查看heiheiwodeai的 主題 / 回貼
3樓  發(fā)表于: 2021-01-11 10:42
圖片:
圖片:
西門子FB類型的數組,只能在FB里創(chuàng)建,所以你先創(chuàng)建一個最外層的Fb,然后把以后已寫好的功能直接在此FB里創(chuàng)建就行,Fb數組只能由背景數據庫生產,不能自己新建
[ 此帖被heiheiwodeai在2021-01-11 10:50重新編輯 ]
zhou1211
級別: 略有小成
精華主題: 1 篇
發(fā)帖數量: 205 個
工控威望: 362 點
下載積分: 1172 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2024-09-18
查看zhou1211的 主題 / 回貼
4樓  發(fā)表于: 2021-01-14 15:45
引用
引用第3樓heiheiwodeai于2021-01-11 10:42發(fā)表的  :
西門子FB類型的數組,只能在FB里創(chuàng)建,所以你先創(chuàng)建一個最外層的Fb,然后把以后已寫好的功能直接在此FB里創(chuàng)建就行,Fb數組只能由背景數據庫生產,不能自己新建

好像你很熟西門子,順便問一下,西門子不能使用枚舉吧
heiheiwodeai
級別: 略有小成
精華主題: 0
發(fā)帖數量: 245 個
工控威望: 367 點
下載積分: 974 分
在線時間: 329(小時)
注冊時間: 2013-03-26
最后登錄: 2024-11-08
查看heiheiwodeai的 主題 / 回貼
5樓  發(fā)表于: 2021-01-15 15:06
枚舉不行,如果多人開發(fā),就提前約定規(guī)則
zhou1211
級別: 略有小成
精華主題: 1 篇
發(fā)帖數量: 205 個
工控威望: 362 點
下載積分: 1172 分
在線時間: 66(小時)
注冊時間: 2013-11-04
最后登錄: 2024-09-18
查看zhou1211的 主題 / 回貼
6樓  發(fā)表于: 2021-01-17 10:20
引用
引用第4樓zhou1211于2021-01-14 15:45發(fā)表的  :

好像你很熟西門子,順便問一下,西門子不能使用枚舉吧

1:
那比如說做通訊的時候,考慮到對方讀取具體地址,如:
stAdsCom  at %mw1000 : ST_ADS;
在博途中如何實現

2: 一般codesys無視對象類型是這樣的
VAR
    pAdr  : pvoid;(目標變量初始指針)
    pByte : pointer to byte;(指針指向byte數據類型,相當于 ref to)
    wWordBase : word;

END_VAR
//程序
pAdr := adr(wWordBase );
pByte := pAdr;
pByte^ := 16#fe;
pByte := pAdr +1;
pByte^ := 16# ff;
//結果是地址指向Word類型的wWordBase 用byte通過指針偏移一次組合而成
這種情況常用于將數據分解成原始byte,再組合成自定義類型的情況,非常常用

請問這種寫指針偏移的方法博途怎么做?
[ 此帖被zhou1211在2021-01-17 15:26重新編輯 ]