为什么通信数据区在输入指针形式的绝对地址时不允许输入?
答:通信数据区 “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协议通信时,通信接收区的数据会错位?.
答:如果通信数据区与接收数据区的长度不一致,则会导致接收区的数据错位。