為什么通信數據區在輸入指針形式的絕對地址時不允許輸入?
答:通信數據區 “DATA” 在輸入指針形式的地址時,雖然輸入地址格式完全正確,但仍會出現紅色 “P#DB3.DBX0.0 BYTE 100”,表示地址錯誤而不允許輸入。這是因為在創建通信數據區 DB 塊時選擇了“Symbolic access only(僅符號尋址)”,只能用符號尋址方式訪問這個DB塊。只要在創建DB塊時,不勾選“Symbolic access only(僅符號尋址)”,就可以正常輸入指針形式的絕對地址了。
Tblock 通信指令是同步傳輸還是異步傳輸?
答:Tblock 通信指令是異步于程序傳輸的,每個掃描周期分配給通信任務的時間百分比可以在CPU屬性中的 “Communication load(通信負載)" 中設定,默認值是 “20%”。這就要求在每個通信任務完成之前要保證數據區數據的一致性。
為何發送通信任務不執行或只執行了一次?
答:在執行發送指令時,“REQ” 輸入端的每次上升沿會激活通信任務一次。如果這個位一直為“1”,則通信任務只會執行一次。
為何在使用TCP協議通信時,通信接收區的數據會錯位?.
答:如果通信數據區與接收數據區的長度不一致,則會導致接收區的數據錯位。