接受到了。应答的服务器知道并且要求应答,或者服务器不知道并且要求应答时出现
P2CAN_Client超时。
_Server对服务器的要求是它应当在P2CAN信息的解读时间应当短于P2CAN_Server(见图7.3)时间内应答信息,这就是说,诊断
。
图10 ——发送下一条请求太早的例子
a) 客户端诊断应用层通过发送N_USData.req功能地址请求信息到网络层。网络层传递信息到服务器。 b) 客户端通过NUSData.con只是请求信息的完成。客户机使用默认的P2CAN定时器。
c) 服务器通过N_USData.ind指示请求信息的完成。服务器使用默认的P2CAN_Server_Client值开启P2CAN_Client值开启P2CAN_Server定时器。
d) 对于请求的信息,假定只有服务器#1支持请求信息,也就是说服务器#2不会应答信息。服务器#1
是快速服务器,能很快处理完请求的信息并在P2CAN_Server时间内发送应答信息。
e) 客户机接收到应答信息。这通过N_USData.ind指示。客户机仅仅期待服务器#1的应答信息,因此
它停止P2CAN_Client定时器。
f) 服务器#2是慢速服务器,并且在一段时间内(诊断服务数据解读时间)解读请求信息,最坏的情况
下,在网络层接收到请求信息之前进行了最后一次请求的信息检查。这就是说,请求会存储在一个
缓冲区并且在检查请求信息的例程时执行。当服务器#2处理该条请求时,它确定了它不需要应答,因为它不支持该条请求信息。如图所示,这有可能在服务器#1完成应答信息之后或是在客户机下一条请求信息之后发生。
g) 客户机在所有期待的应答信息完成之后,会立即发送下一条请求。
h) 服务器通过N_USData.ind指示请求信息的完成。但仅仅在快速服务器#1中进行,因为在服务器#2
不处理最近一条信息。
i) 客户机新的请求的完成通过N_USData.con指示。
图11描述了客户机(基于图10说明的通信情况)P3CAN_Functional定时处理。除此之外
_Functional图11显示了客户机功能地址(0x3E)的请求。在S3Client超时且P3CAN求将等待P3CAN
_Functional活动时(请
超时)。
图11——功能地址请求信息间隔时间最小值(P3CAN_Functional)
a) 客户端诊断应用层通过发送N_USData.req至网络层开始发送功能地址请求信息。网络层传递请求只
服务器。 b) 客户端通过N_USData.con指示请求信息的完成。客户机开启P2CAN_Client定时器并且开启
P3CAN_Functional定时器。
c) 服务器通过N_USData.ind指示请求信息的完成。
d) 对于请求的信息,假定只有服务器#1支持请求信息,也就是说服务器#2不会应答信息。服务器#1
是快速服务器,能很快处理完请求的信息并在P2CAN_Server时间内发送应答信息。
e) 客户机接收到应答信息。这通过N_USData.ind指示。客户机仅仅期待服务器#1的应答信息,因此
它停止P2CAN_Client定时器。
f) 服务器#2是慢速服务器,并且在一段时间内(诊断服务数据解读时间)解读请求信息,最坏的情况
下,在网络层接收到请求信息之前进行了最后一次请求的信息检查。这就是说,请求会存储在一个缓冲区并且在检查请求信息的例程时执行。当服务器#2处理该条请求时,它确定了它不需要应答,因为它不支持该条请求信息。 g) 尽管客户机接收到了功能地址请求信息所有期待的应答信息,它仍要等待P3CAN许发送下一条请求信息。在P3CAN_Client_Client超时之后才允
超时的时刻,客户机发送下一条请求信息。
h) 新的请求信息服务器中通过N_USData.ind指示。并服务器#1立即处理,而服务器#2下一次检查请
求信息例程中处理该请求。 i) 客户机通过N_USData.con指示新的请求的完成,并且开启P3CAN_Functional定时器。
j) 对于请求的信息,假定只有服务器#1支持请求信息,也就是说服务器#2不会应答信息。服务器#1
是快速服务器,能很快处理完请求的信息并在P2CAN_Server时间内发送应答信息。
k) 客户机接收到应答信息。这通过N_USData.ind指示。客户机仅仅期待服务器#1的应答信息,因此
它停止P2CAN_Client定时器。
l) 服务器#2是慢速服务器,并且在一段时间内(诊断服务数据解读时间)解读请求信息,最坏的情况
下,在网络层接收到请求信息之前进行了最后一次请求的信息检查。这就是说,请求会存储在一个缓冲区并且在检查请求信息的例程时执行。当服务器#2处理该条请求时,它确定了它不需要应答,因为它不支持该条请求信息。 m) 客户机S3Client定时器超时,促使客户机发送不需服务器应答的功能地址(0x3E)请求信
息。在这种情况下,P3CAN时发送。 n) 当P3CAN_Functional_Functional此时仍然活动着,(0x3E)的发送应当到P3CAN_Functional超时
定时器超时的时候,客户机可以通过N_USData.req发送功能地址(0x3E)请求。
o) 服务器通过N_USData.ind指示(0x3E)请求信息的接收。 p) 客户机通过N_USData.con指示(0x3E)请求的完成,并启动P3CAN_Functional定时器。
图12描述了客户机P3CAN_Physical定时器的操作。该图显示了不需应答的物理地址请求
的发送操作及S3Client超时时功能地址(0x3E)请求信息。
图12——物理地址通信间隔最短时间P3CAN_Physical
a) 客户端诊断应用层通过发送N_USData.req至网络层开始发送物理地址请求信息。网络层传递请求只
服务器。 b) 客户端通过N_USData.con指示请求信息的完成。客户机开启P3CAN答信息,因此,客户机不需要开启P2CAN_Client_Physical定时器。由于不需要应
定时器。
c) 服务器通过N_USData.ind指示请求信息的完成。在任何非默认会话期间,S3Server定时器此刻是停止的。
d) 服务器在一定时期内(诊断服务数据解读时间)解读请求。在下一次检查请求例程中请求被处理。
在非默认会话期间,服务的完全执行会重置S3Server定时器。
e) 客户机S3Client定时器超时,促使客户机发送功能地址(0x3E)请求信息,不需服务器的应答。