zhou1211
級(jí)別: 略有小成
|
1: 那比如說做通訊的時(shí)候,考慮到對(duì)方讀取具體地址,如: stAdsCom at %mw1000 : ST_ADS; 在博途中如何實(shí)現(xiàn) 2: 一般codesys無視對(duì)象類型是這樣的 VAR pAdr : pvoid;(目標(biāo)變量初始指針) pByte : pointer to byte;(指針指向byte數(shù)據(jù)類型,相當(dāng)于 ref to) wWordBase : word; END_VAR //程序 pAdr := adr(wWordBase ); pByte := pAdr; pByte^ := 16#fe; pByte := pAdr +1; pByte^ := 16# ff; //結(jié)果是地址指向Word類型的wWordBase 用byte通過指針偏移一次組合而成 這種情況常用于將數(shù)據(jù)分解成原始byte,再組合成自定義類型的情況,非常常用 請問這種寫指針偏移的方法博途怎么做? |
---|---|
本帖最近評(píng)分記錄: |
wlmissyou
級(jí)別: 探索解密
|
回答: 第一個(gè)問題:這個(gè)要具體到何種通信方式,你的問題有些籠統(tǒng) 第二個(gè)問題:在博圖平臺(tái)上有 300 400 和1200 1500兩個(gè)系列,300 400使用非優(yōu)化的數(shù)據(jù)塊,所以對(duì)變量的高低字節(jié)或高低字,使用AT指令來實(shí)現(xiàn)聲明。如下示意: CrcVariable : Word; // CRC校驗(yàn)用變量字 CrcByte AT CrcVariable : Array[0..1] of Byte; // CRC校驗(yàn)用變量的高低字節(jié) 1200和1500可以使用符號(hào)尋址的后面跟上絕對(duì)尋址的位或字節(jié)或字。請參考以下網(wǎng)址: https://support.industry.siemens.com/cs/document/57374718/如何在-step-7-(tia-portal)-中使用符號(hào)方式按位,字節(jié),或字訪問非結(jié)構(gòu)?dti=0&lc=zh-CN |
---|---|
|