DEENESPTFRRUARHIKOZHNL
CLASSIC Modul: cantp Rolle: constitutive Konfidenz: 95%

SNIP_CLASSIC_CANTP_SECTION_8_3_4_CanTp_Transmit

Quelle: SWS_CANTransportLayer.pdf (Seite 60) • Ziel-Anforderung: SWS_Std_00005

Wortlaut

8.3.4 CanTp_Transmit [SWS_CanTp_00212] Definition of API function CanTp_Transmit ⌈ Service Name CanTp_Transmit Syntax Std_ReturnType CanTp_Transmit ( PduIdType TxPduId, const PduInfoType* PduInfoPtr ) Service ID [hex] 0x49 Sync/Async Synchronous Reentrancy Reentrant for different PduIds. Non reentrant for the same PduId. TxPduId Identifier of the PDU to be transmitted Parameters (in) PduInfoPtr Length of and pointer to the PDU data and pointer to MetaData. Parameters (inout) None Parameters (out) None Return value Std_ReturnType E_OK: Transmit request has been accepted. E_NOT_OK: Transmit request has not been accepted. Description Requests transmission of a PDU. Available via CanTp.h ⌋ [SWS_CanTp_00231] Upstream requirements: SRS_Can_01071, SRS_Can_01074 ⌈If data does fit into the associated N-PDU, the function CanTp_Transmit() shall send a SF N-PDU.⌋ [SWS_CanTp_00232] Upstream requirements: SRS_Can_01071, SRS_Can_01074 ⌈If data does not fit into the associated N-PDU, the function CanTp_Transmit() shall initiate a multiple frame transmission session.⌋ [SWS_CanTp_00354] Upstream requirements: SRS_Can_01163 ⌈The maximum Tx length of the N-PDU shall be derived from the PduLength configuration parameter of EcuC. This parameter is equivalent to TX_DL of ISO 15765-2.⌋ [SWS_CanTp_00204] ⌈The CanTp module shall notify the upper layer by calling the PduR_CanTpTxConfirmation callback when the transmit request has been completed.⌋ [SWS_CanTp_00205] ⌈The CanTp module shall abort the transmit request and call the PduR_CanTpTxConfirmation callback function with E_NOT_OK result value if an error occurred (over flow, N_As timeout, N_Bs timeout and so on).⌋ [SWS_CanTp_00206] ⌈The function CanTp_Transmit shall reject a request if the CanTp_Transmit service is called for a N-SDU identifier which is being used in a currently running CAN Transport Layer session.⌋ [SWS_CanTp_00298] ⌈CanTp has limited buffering capability, and hence the N-SDU payload to be transmitted is not copied internally. The CAN Transport Layer obtains the data directly from the upper layer via the PduR_CanTpCopyTxData service.⌋ Thus, to guarantee the data consistency, the upper layer (e.g. DCM, PduRouter or AUTOSAR COM) must lock this memory area until the confirmation notification occurs. [SWS_CanTp_00299] ⌈When the upper layer calls this function for an N-SDU without MetaData, only the data length information of the structure indicated by PduInfoPtr has to be used. Its value indicates the payload length of the N-SDU, which is to be transmitted. For an N-SDU with MetaData, besides the length information also the MetaData provided via the PduInfoPtr is relevant. To obtain actual Tx data, the CAN Transport Layer shall call the PduR_CanTpCopyTxData service.⌋ [SWS_CanTp_00321] ⌈If development error detection is enabled the function CanTp_Transmit shall raise CANTP_E_PARAM_POINTER error if the argument PduInfoPtr is a NULL pointer.⌋ [SWS_CanTp_00356] ⌈If development error detection is enabled the function CanTp_Transmit shall check the validity of function parameter TxPduId. If its value is invalid, the CanTp_Transmit function shall raise the development error CANTP_E_INVALID_TX_ID.⌋

Versionen & Provenienz · Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Begründung & Zuweisungs-Evidenz

Cited verbatim in the snippet (deterministic citation).

Dokumenten-Herkunft & Rückverfolgbarkeit

Spezifikations-Dokument SWS_CANTransportLayer.pdf
Dokumentseite Seite 60
Ziel-Modul cantp (classic)
Ziel-Anforderung SWS_Std_00005
Semantische Rolle constitutive
Automatisierungs-Konfidenz 0.95