zhang2601312
級別: 探索解密
![]() |
圖片:
![]() 用1200通過開放用戶通訊的發(fā)送數(shù)據(jù)和接收數(shù)據(jù)功能塊問題。發(fā)送讀取下屬設(shè)備報文超過2個寄存器的話返回的報文就出錯(一直在正確的和錯誤的來回閃)只讀取2個寄存器返回的報文就沒問題。請問下這是什么原因?qū)е碌哪。謝謝各位了 |
---|---|
|
zhang2601312
級別: 探索解密
![]() |
感覺不是輪詢的問題,就是我發(fā)送讀取2個寄存器的時候返回的報文是正確的。發(fā)送讀取超過2個寄存器的返回報文就出錯(在對的報文和錯的報文之間來回跳動)可能會是別的原因嗎? |
---|---|
|
世界杯之殤
級別: 探索解密
![]() |
你敢不敢把LEN對應(yīng)的字長度改一下? 關(guān)于LEN的描述: 要通過作業(yè)發(fā)送的最大字節(jié)數(shù)。如果在參數(shù) DATA 中使用純符號值,則 LEN 參數(shù)的值必須為“0”。 樓主留言:如果我想讀10個字節(jié)的數(shù)據(jù)這個RCVD_LEN應(yīng)該填寫多少呢。 |
---|---|
|
世界杯之殤
級別: 探索解密
![]() |
對應(yīng)就是10!然后實際數(shù)據(jù)長度必須大于等于這個長度才不會報錯 樓主留言:直接在RCVD_LEN寫入數(shù)值不行,建立DB塊UDINT數(shù)值傳送過去也不行哦。 |
---|---|
|
世界杯之殤
級別: 探索解密
![]() |
離線以后直接賦值啊,常量都可以!如果是變量賦值要求uint類型的 如果你發(fā)送區(qū)DATA的是優(yōu)化訪問快,就把這個設(shè)置成0,然后發(fā)送和接受端的數(shù)據(jù)類型及長度要一致也可以! tips: 打開博圖,然后F1,或者右側(cè)拖動指令的地方放在需要了解的指令上面變成黃色后點擊可以進入幫助,里面會有詳細的參數(shù)說明 樓主留言:我弄錯了,是LEN區(qū)。我以為是RCVD_LEN區(qū)。LEN區(qū)可以寫入數(shù)值,但是我寫入了并且把優(yōu)化塊取消了還是沒用。返回的報文還是亂的 |
---|---|
|