Suppress Positive Response Message Indication Bit (SPRMIB):
Suppress positive response message indication bit (SPRMIB) only support in sub-function services with sub-function bytes. This bit defines whether a positive response of ECU is required or not
TRUE = server shall NOT send a positive response message (exception NRC 0x78)
FALSE = server shall send a positive or negative response message
作用:降低车载总线负载,一般用于功能寻址情况下
SubFunction parameter structure
Bit 7: suppressPosRspMsgIndicationBit
This bit indicates if a positive response message shall be suppressed by the server.
‘0’ = FALSE, do not suppress a positive response message (a positive response message is required).
‘1’ = TRUE, suppress response message (a positive response message shall not be sent; the server
being addressed shall not send a positive response message).
Independent of the suppressPosRspMsgIndicationBit, negative response messages are sent by the
server(s) according to the restrictions specified in 7.5.
Even if a positive response is not required (i.e., SPRMIB = true), the execution of the service must be
completely passed to keep the implementation consistent regardless of SPRMIB value.
suppressPosRspMsgIndicationBit values of both ‘0’ and ‘1’ shall be supported for all sub-function
parameter values (i.e., bits 6-0 of the sub-function structure) supported by the server for any given
service.
Bit 6-0:sub-function parameter value
The bits 0-6 of the sub-function parameter contain the sub-function parameter value of the service
(0x00 – 0x7F).
The sub-function parameter value is a 7 bit value (bits 6-0 of the sub-function parameter byte) that can have multiple values to further specify the service behaviour.
Services supporting sub-function parameter values in addition to the suppressPosRspMsgIndicationBit shall support the sub-function parameter values as defined in the sub-function parameter value table.
Each service contains a table that defines values for the sub-function parameter values, taking only into account the bits 0-6.
NOTE If SPRMIB is TRUE for responses with a big amount of data, where paged-buffer-handling needs to be used, this can result in a situation where the transmission of the first batch of data could be started still within the response timing window, but the termination of the service execution is beyond the limits of the response timing window. If the response is suppressed in this case, there is no way to inform the client about the delay, but the server is still busy and not yet ready to receive another request. For the client it is recommended not to ask for a big amount of data and set SPRMIB in the same request (e.g., SID 0x19 SF 0x0A), as this would defeat the purpose of SPRMIB. For the server implementation it is recommended to send NRC 0x78 (RCRRP) and subsequently also send the positive response, in case paged-buffer-handling is used while SPRMIB is TRUE.