Diagnostic Log and Trace (DLT)
The DLT module collects log messages and trace points and formats them into standardized DLT frames for external tooling.
Funktionen — Übersicht
void Dlt_Init (const Dlt_ConfigType* config);Dlt is using the NVRam Manager and is to be initialized very late in the ECU startup phase.void Dlt_GetVersionInfo (Std_VersionInfoType* versioninfo);Returns the version information of this module.Std_ReturnType Dlt_SendTraceMessage (Dlt_SessionIDType sessionId, const Dlt_MessageTraceInfoType* traceInfo, const uint8* traceData, uint16 traceDataLength);The service represents the interface to be used by basic software modules or by software components to trace parameters.Std_ReturnType Dlt_SendLogMessage (Dlt_SessionIDType sessionId, const Dlt_MessageLogInfoType* logInfo, const uint8* logData, uint16 logDataLength);The service represents the interface to be used by basic software modules or by software component to send Log Messages.Std_ReturnType Dlt_UnregisterContext (Dlt_SessionIDType sessionId, Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId);The service has to be called when a software module is going to be stopped.void Dlt_DetForwardErrorTrace (uint16 moduleId, uint8 instanceId, uint8 apiId, uint8 errorId);Service to fo rward error reports from Det to Dlt.Std_ReturnType Dlt_SetLogLevel (Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId, Dlt_MessageLogLevelType newLogLevel);This service is used to change the Log Level for the given tuple of Application ID/ Context ID.Std_ReturnType Dlt_SetTraceStatus (Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId, boolean newTraceStatus);The service Dlt_ Set Trace Status sets the trace status for a specific tuple of Application ID and Context ID.Std_ReturnType Dlt_GetLogInfo (uint8 options, Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId, uint8* status, Dlt_LogInfoType* logInfo);Called to request information about registered Application Ids, their Context Ids and the corresponding log level.Std_ReturnType Dlt_GetDefaultLogLevel (Dlt_MessageLogLevelType* defaultLogLevel);Returns the Default Log Level currently used by the Dlt module.Std_ReturnType Dlt_StoreConfiguration (void);Copies the current Dlt configuration to Nv RAM by calling Nv M_ Write Block().Std_ReturnType Dlt_ResetToFactoryDefault (void);The service Dlt_ Reset To Factory Default sets the Log Level and Trace Status back to the pers istently stored default values.Std_ReturnType Dlt_SetMessageFiltering (boolean status);Switches on/ off the mes sage filtering functionality of the Dlt module.Std_ReturnType Dlt_SetDefaultLogLevel (Dlt_MessageLogLevelType newLogLevel);Called to modify the pass through range for Log Messages for all not explicit set Context Ids.Std_ReturnType Dlt_GetTraceStatus (Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId, boolean* traceStatus);Returns the current Trace Status for a given tuple Application Id/ Context Id.void Dlt_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);Indication of a received PDU from a lower layer communication interface module.Std_ReturnType Dlt_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size...void Dlt_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.void Dlt_TpTxConfirmation (PduIdType id, Std_ReturnType result);This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission...BufReq_ReturnType Dlt_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);Service Dlt_CopyTxData.BufReq_ReturnType Dlt_StartOf Dlt_StartReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr); ⚠️This function is called at the start of receiving an N -void Dlt_TpRxIndication (PduIdType id, Std_ReturnType result);Called after an I - PDU has been received via the TP API, the result indicates whether the transmission was successful or not.BufReq_ReturnType Dlt_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);Service Dlt_CopyRxData.void Dlt_TxFunction (void);-
Typen — Übersicht
struct Dlt_ConfigTypeThis is the type of the data structure containing the initialization data for Dlt.Dlt_MessageTypeThis type describes the type of the message.Dlt_MessageIDTypeContains the unique Message Id for a message.Dlt_MessageNetworkTraceInfoTypeThis type describes transported type of a Dlt BUSMESSAGE.Dlt_ApplicationIDTypeThis type describes the Application Id.Dlt_ContextIDTypeThis type describes the Context Id.Dlt_SessionIDTypeThis type identifies the session.Dlt_LogInfoType-Dlt_ContextIdInfoTypeContext InformationDlt_ApplicationIdInfoTypeInformation about ApplicationsDlt_MessageOptionsTypeBitfieldDlt_MessageLogInfoType-Dlt_MessageLogLevelTypeThis type describes the log lev el for each log message.Dlt_MessageTraceTypeThis type describes labels for trace messages.Dlt_MessageArgumentCountThis type describes the count of arguments provided to a message.Dlt_MessageTraceInfoType-TypeThis type describes the Log Channel name.Dlt_AssignmentOperationAdding or removing a Log Channel assignment for the given tuple of Application Id/ Context Id.
Funktionen & Typen — Detailansicht
함수 Dlt_Init [SWS_Dlt_00239] 📄 PDF
void Dlt_Init (const Dlt_ConfigType* config);
Dlt is using the NVRam Manager and is to be initialized very late in the ECU startup phase. The Dlt_ Init() function should be called after the NVRam Manager is initialized.
동기식 및 비재진입 함수 Dlt_Init(서비스 ID 0x01, 헤더 파일 Dlt.h을(를) 통해 사용 가능)은 Classic 플랫폼에서 Diagnostic Log and Trace(DLT) 모듈을 초기화합니다[SWS_Dlt_00239]. 이 함수는 매개변수 config을(를) 통해 Dlt_ConfigType 타입의 모듈별 구성 구조체에 대한 포인터를 수신하며 반환값을 반환하지 않습니다[SWS_Dlt_00239].
호출 컨텍스트 및 다른 BSW 모듈과의 시간적 상호작용에는 특정 제약 조건이 적용됩니다:
- 초기화 순서: DLT 모듈은 NVRam Manager를 사용하며 ECU 시작 단계에서 매우 늦게 초기화되어야 합니다[SWS_Dlt_00239]. 함수
Dlt_Init의 호출은 반드시 NVRam Manager가 완전히 초기화된 후에만 이루어져야 합니다[SWS_Dlt_00239]. - 영속 데이터: 구성 매개변수
DltGeneralNvRAMSupport이(가)TRUE(으)로 설정된 경우, DLT 모듈은 필수 변수의 영속적인 값을 복원하기 위해Dlt_Init에서 NVRAM 매니저의 인터페이스NvM_ReadBlock을(를) 사용합니다[SWS_Dlt_00453]. - 버퍼 처리: 모듈이
Dlt_Init에 의해 초기화되고 선택적 타이머DltGeneralStartUpDelayTimer이(가) 만료되는 즉시, 그동안 버퍼링된 모든 로그 및 추적 데이터가 처리되어 명세에 따라 전송됩니다[SWS_Dlt_00005].
이 함수는 비재진입으로 명세되어 있으므로, 호출 컨텍스트는 실행 중에 Dlt_Init에 병렬로 또는 인터럽트 방식으로 재진입하지 않도록 보장해야 합니다[SWS_Dlt_00239].
이 텍스트는 AUTOSAR R20-11 명세를 기반으로 AI 시스템에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_GetVersionInfo [SWS_Dlt_00271] 📄 PDF
void Dlt_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
함수 Dlt_SendTraceMessage [SWS_Dlt_00243] 📄 PDF
Std_ReturnType Dlt_SendTraceMessage (Dlt_SessionIDType sessionId, const Dlt_MessageTraceInfoType* traceInfo, const uint8* traceData, uint16 traceDataLength);
The service represents the interface to be used by basic software modules or by software components to trace parameters.
동기식 및 재진입 가능 함수 Dlt_SendTraceMessage은(는) 기본 소프트웨어 모듈(BSW) 및 소프트웨어 컴포넌트(SW-C)가 추적 매개변수를 Dlt 모듈로 전송하는 데 사용됩니다[SWS_Dlt_00243].
매개변수 및 호출 컨텍스트
호출 시 모듈 또는 포트 식별자는 sessionId을(를) 통해, 메시지 필터링용 메타데이터는 traceInfo을(를) 통해, 페이로드 버퍼는 길이 정보 traceDataLength과(와) 함께 traceData을(를) 통해 전달됩니다[SWS_Dlt_00243]. 모듈은 Dlt가 아직 초기화되지 않았더라도 추적 메시지를 미리 버퍼링할 수 있습니다[SWS_Dlt_00003].
반환값 및 오류 처리
이 서비스는 특정 반환값을 통해 상태를 알립니다[SWS_Dlt_00243]:
E_OK: 작업이 성공적으로 실행되었습니다.DLT_E_MSG_TOO_LARGE: 메시지가 할당된 모든 로그 채널의 허용 크기를 초과합니다.DLT_E_NO_BUFFER: 버퍼 메모리가 부족하여 하나 이상의 로그 채널에 메시지를 버퍼링할 수 없습니다.DLT_E_UNKNOWN_SESSION_ID: 전달된sessionId이(가) 모듈에 알려지지 않았습니다.
후크 함수와의 상호작용
Dlt_SendTraceMessage이(가) SW-C용 인터페이스로 지정되어 있으므로, Non-Verbose 모드로 추적 메시지를 전송하는 동등한 내부 구현 [SWS_Dlt_00285]이(가) 생성된 후크 함수용으로 존재합니다[SWS_Dlt_00277].
이 텍스트는 AUTOSAR 사양 R20-11을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_SendLogMessage [SWS_Dlt_00241] 📄 PDF
Std_ReturnType Dlt_SendLogMessage (Dlt_SessionIDType sessionId, const Dlt_MessageLogInfoType* logInfo, const uint8* logData, uint16 logDataLength);
The service represents the interface to be used by basic software modules or by software component to send Log Messages.
동기식 및 재진입 가능 함수 Dlt_SendLogMessage(서비스 ID 0x03)은 기본 소프트웨어 모듈(BSW) 및 소프트웨어 컴포넌트(SW-C)가 로그 메시지를 전송하기 위한 표준화된 인터페이스 역할을 합니다[SWS_Dlt_00241]. 호출은 헤더 파일 Dlt.h을(를) 통해 이루어지며, 재진입 특성으로 인해 이 함수는 동시 실행에 적합하도록 설계되었습니다[SWS_Dlt_00241].
함수 호출 시 4개의 입력 매개변수가 필요하며, 출력 매개변수는 사용되지 않습니다[SWS_Dlt_00241]:
sessionId: 세션 식별자를 나타냅니다. SW-C의 경우 이 매개변수는 포트 정의 인수 값으로 숨겨져 있는 반면, BSW 모듈은 자신의 모듈 번호를 직접 전달합니다.logInfo: 로그 메시지 필터링과 관련된 메타데이터를 포함하는 상수 구조체에 대한 포인터입니다.logData: 로깅할 데이터가 포함된 바이트 배열에 대한 포인터로, 메시지의 실제 페이로드를 형성합니다.logDataLength: 데이터 버퍼logData의 수치 길이입니다.
오류 처리는 작업의 성공 또는 특정 오류 상태를 나타내는 Std_ReturnType 유형의 반환값을 통해 직접 수행됩니다[SWS_Dlt_00241]:
DLT_OK: 로그 메시지가 성공적으로 수락되어 처리되었습니다.DLT_E_MSG_TOO_LARGE: 메시지가 할당된 모든 로그 채널에 대해 허용된 최대 버퍼 크기를 초과합니다.DLT_E_NO_BUFFER: 할당된 어떤 로그 채널에도 메시지를 버퍼링할 수 없습니다.DLT_E_UNKNOWN_SESSION_ID: 전달된 세션 ID가 유효하지 않거나 모듈에 알려지지 않았습니다.
이 사용 지침은 AUTOSAR 사양을 기반으로 AI에 의해 생성되었습니다.
함수 Dlt_UnregisterContext [SWS_Dlt_00769] 📄 PDF
Std_ReturnType Dlt_UnregisterContext (Dlt_SessionIDType sessionId, Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId);
The service has to be called when a software module is going to be stopped. Available vi a Dlt.h
사용
동기 함수 Dlt_UnregisterContext(서비스 ID 0x16)은(는) 헤더 파일 Dlt.h을(를) 통해 제공되며 소프트웨어 모듈이 중지될 때 호출되어야 합니다 [SWS_Dlt_00769]. 이 함수는 이전에 등록된 애플리케이션의 컨텍스트를 등록 해제하는 데 사용됩니다.
이 함수는 세 개의 입력 매개변수를 필요로 합니다 [SWS_Dlt_00769]:
sessionId: 모듈 번호; BSW 내의 모듈 ID 또는 소프트웨어 컴포넌트(SW-C) 내의 포트별로 정의된 인수 값에 해당합니다 [SWS_Dlt_00769].appId: 상위 애플리케이션의 식별자(Application ID)입니다 [SWS_Dlt_00769].contextId: 등록 해제할 컨텍스트의 식별자(Context ID)입니다 [SWS_Dlt_00769].
반환값 및 오류 처리
유형 Std_ReturnType의 반환값은 실행 결과에 대한 정보를 제공합니다 [SWS_Dlt_00769]:
E_OK: 요청된 작업이 성공적으로 완료되었습니다 [SWS_Dlt_00769].DLT_E_CONTEXT_NOT_YET_REG: 소프트웨어 모듈의 컨텍스트가 사전에 등록되지 않았습니다 [SWS_Dlt_00769].DLT_E_UNKNOWN_SESSION_ID: 전달된 세션 ID를 알 수 없습니다 [SWS_Dlt_00769].
동시성 및 제약사항
이 함수는 재진입 가능으로 명시되어 있으며 동기식으로 동작합니다 [SWS_Dlt_00769]. 호출하는 모듈은 등록 해제 시 오류를 방지하기 위해 전달된 세션 ID가 유효하고 종료 전에 컨텍스트가 실제로 등록되어 있는지 확인해야 합니다 [SWS_Dlt_00769].
이 사용 지침은 AUTOSAR CP R20-11 사양을 기반으로 자동으로 생성되었습니다.
함수 Dlt_DetForwardErrorTrace [SWS_Dlt_00432] 📄 PDF
void Dlt_DetForwardErrorTrace (uint16 moduleId, uint8 instanceId, uint8 apiId, uint8 errorId);
Service to fo rward error reports from Det to Dlt.
사용법 및 호출 컨텍스트
서비스 ID 0x07을(를) 갖는 동기 인터페이스 Dlt_DetForwardErrorTrace은(는) Default Error Tracer(DET)로부터 보고된 개발 오류를 Dlt 모듈로 전달하는 데 사용됩니다 [SWS_Dlt_00432]. Dlt 모듈은 오류 보고에 대해 요구되는 DET의 팬아웃 기능을 보장하기 위해 이 서비스를 제공합니다 [SWS_Dlt_00430]. 이 C 함수의 선언은 헤더 파일 Dlt_Det.h을(를) 통해 포함됩니다 [SWS_Dlt_00432].
매개변수 및 인터페이스 사양
이 함수는 4개의 필수 입력 매개변수를 받으며 반환값이나 출력 매개변수를 정의하지 않습니다 [SWS_Dlt_00432]:
moduleId: 오류가 발생한 호출 소프트웨어 모듈의 모듈 ID.instanceId: 인덱스 기반 모듈 인스턴스의 식별자(0부터 카운트 시작, 단일 인스턴스 모듈은 0 전달).apiId: 영향을 받는 API 서비스의 식별자(호출 모듈의 사양에 정의됨).errorId: 감지된 개발 오류의 식별자(호출 모듈의 사양에 정의됨).
동시성 및 오류 처리
실행은 오류를 감지한 호출 측과 동기적으로 이루어집니다. 비재진입(non-reentrant) 함수(Non Reentrant)로서 인터페이스는 호출자 측에서 경쟁적 실행을 반드시 방지하도록 요구합니다 [SWS_Dlt_00432]. 사양에는 이 서비스에 대한 특정 오류 코드, 오류 피드백 또는 별도의 DET나 DEM 보고가 정의되어 있지 않습니다 [SWS_Dlt_00432].
이 사용 지침은 AUTOSAR CP R20-11 사양을 기반으로 자동으로 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_SetLogLevel [SWS_Dlt_00252] 📄 PDF
Std_ReturnType Dlt_SetLogLevel (Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId, Dlt_MessageLogLevelType newLogLevel);
This service is used to change the Log Level for the given tuple of Application ID/ Context ID.
함수 Dlt_SetTraceStatus [SWS_Dlt_00254] 📄 PDF
Std_ReturnType Dlt_SetTraceStatus (Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId, boolean newTraceStatus);
The service Dlt_ Set Trace Status sets the trace status for a specific tuple of Application ID and Context ID.
동기식 함수 Dlt_SetTraceStatus은(는) Application-ID와 Context-ID의 특정 튜플에 대한 추적 상태를 설정하는 데 사용됩니다[SWS_Dlt_00254]. 이 함수는 헤더 파일 Dlt.h을(를) 통해 정의되며 서비스 ID 0x09을(를) 갖습니다[SWS_Dlt_00254].
사용
호출을 위해 세 개의 입력 매개변수가 필요합니다[SWS_Dlt_00254]:
appId: 소프트웨어 컴포넌트의 ID(타입Dlt_ApplicationIDType).contextId: 컨텍스트의 ID(타입Dlt_ContextIDType).newTraceStatus: 불리언 값으로 새로 설정할 추적 상태(타입boolean).
오류 처리 및 반환값
이 함수는 동기식으로 Std_ReturnType 타입의 상태를 반환합니다[SWS_Dlt_00254]:
E_OK: 오류가 발생하지 않았으며 상태가 성공적으로 적용되었습니다.E_NOT_OK: 추적 상태를 변경할 수 없습니다. 함수 명세에는 구체적인 DET 오류 메시지가 언급되어 있지 않습니다(해석: 유효하지 않은 식별자 또는 잘못된 모듈 상태의 경우 오류가 발생할 것으로 추정됩니다). 질문 Q-77e190707462c8f1 (열림)
동시성 및 제약사항
이 인터페이스는 비재진입(Non Reentrant)으로 명세되어 있습니다[SWS_Dlt_00254]. 따라서 호출자의 적절한 동기화 없이는 동시 또는 인터럽트 방식으로 실행되어서는 안 됩니다.
이 사용 지침은 AUTOSAR 릴리스 R20-11을 기반으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_GetLogInfo [SWS_Dlt_00732] 📄 PDF
Std_ReturnType Dlt_GetLogInfo (uint8 options, Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId, uint8* status, Dlt_LogInfoType* logInfo);
Called to request information about registered Application Ids, their Context Ids and the corresponding log level.
함수 Dlt_GetDefaultLogLevel [SWS_Dlt_00733] 📄 PDF
Std_ReturnType Dlt_GetDefaultLogLevel (Dlt_MessageLogLevelType* defaultLogLevel);
Returns the Default Log Level currently used by the Dlt module. The returned Log Level might differ from the one which is stored no n volatile.
함수 Dlt_StoreConfiguration [SWS_Dlt_00736] 📄 PDF
Std_ReturnType Dlt_StoreConfiguration (void);
Copies the current Dlt configuration to Nv RAM by calling Nv M_ Write Block().
사용
함수 Dlt_StoreConfiguration([SWS_Dlt_00736])은 현재 Dlt 구성을 비휘발성 메모리(NvRAM)에 저장하는 역할을 합니다. 저장은 내부적으로 NVRAM Manager의 인터페이스 NvM_WriteBlock()에 대한 동기식 호출을 통해 수행됩니다([SWS_Dlt_00736]). 이 API는 서비스 ID 0x1a와 함께 헤더 Dlt.h을(를) 통해 제공됩니다.
이 함수는 시그니처 Std_ReturnType Dlt_StoreConfiguration(void)을(를) 가지며 입력, 출력 또는 입출력 매개변수를 처리하지 않습니다([SWS_Dlt_00736]).
오류 처리 및 반환값
동기식 서비스로서 이 함수는 호출자에게 Std_ReturnType 타입의 상태 코드를 즉시 반환합니다([SWS_Dlt_00736]):
E_OK: 구성이 NvRAM에 오류 없이 전달되었습니다([SWS_Dlt_00736]).E_NOT_OK: Dlt 구성을 저장하는 동안 오류가 발생했습니다([SWS_Dlt_00736]).DLT_E_NOT_SUPPORTED: 구성 저장 서비스가 모듈에서 지원되지 않습니다([SWS_Dlt_00736]).
동시성 및 제약사항
[SWS_Dlt_00736]에 따라 Dlt_StoreConfiguration은(는) 비재진입(Non Reentrant)으로 명세되어 있습니다. 따라서 이 함수는 서로 다른 태스크나 컨텍스트에서 동시에 실행되어서는 안 되며, 호출자 측에서 순차적인 흐름이 보장되어야 합니다.
이 사용 지침은 AUTOSAR 사양을 기반으로 자동으로 생성되었습니다.
함수 Dlt_ResetToFactoryDefault [SWS_Dlt_00739] 📄 PDF
Std_ReturnType Dlt_ResetToFactoryDefault (void);
The service Dlt_ Reset To Factory Default sets the Log Level and Trace Status back to the pers istently stored default values. If the feature Nv MRAM support is enabled, all stored Dlt values in the Nv M are deleted.
사용
동기식 함수 Dlt_ResetToFactoryDefault은(는) 헤더 Dlt.h을(를) 통해 제공되며 전달 매개변수를 받지 않습니다[SWS_Dlt_00739]. 주된 목적은 Dlt 런타임 구성을 재설정하는 것입니다: 로그 레벨 및 추적 상태를 영속적으로 저장된 기본값으로 재설정합니다[SWS_Dlt_00739]. 추가로 Dlt 모듈에서 NvRAM 지원이 활성화된 경우, 이 호출은 NvM에 저장된 모든 Dlt 값을 완전히 삭제하도록 합니다[SWS_Dlt_00739].
반환값 및 오류 처리
작업 결과는 Std_ReturnType 타입의 반환값을 통해 동기식으로 전달됩니다[SWS_Dlt_00739]:
E_OK: 구성이 기본값으로 성공적으로 재설정되었습니다[SWS_Dlt_00739].E_NOT_OK: 구성 재설정에 실패했습니다[SWS_Dlt_00739].
본 명세 범위에서는 이 서비스에 대한 구체적인 DET 또는 DEM 오류 메시지가 정의되어 있지 않습니다.
동시성 및 제약사항
이 함수는 비재진입(Non Reentrant)으로 명세되어 있습니다(서비스 ID 0x06)[SWS_Dlt_00739]. 따라서 서로 다른 태스크나 컨텍스트에서의 동시 또는 인터럽트 호출은 허용되지 않으며 호출자에 의해 방지되어야 합니다.
이 사용 지침은 AUTOSAR Classic 릴리스 R20-11의 명세 데이터만을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_SetMessageFiltering [SWS_Dlt_00770] 📄 PDF
Std_ReturnType Dlt_SetMessageFiltering (boolean status);
Switches on/ off the mes sage filtering functionality of the Dlt module.
함수 Dlt_SetDefaultLogLevel [SWS_Dlt_00740] 📄 PDF
Std_ReturnType Dlt_SetDefaultLogLevel (Dlt_MessageLogLevelType newLogLevel);
Called to modify the pass through range for Log Messages for all not explicit set Context Ids.
함수 Dlt_GetTraceStatus [SWS_Dlt_00750] 📄 PDF
Std_ReturnType Dlt_GetTraceStatus (Dlt_ApplicationIDType appId, Dlt_ContextIDType contextId, boolean* traceStatus);
Returns the current Trace Status for a given tuple Application Id/ Context Id.
함수 Dlt_RxIndication [SWS_Dlt_00272] 📄 PDF
void Dlt_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);
Indication of a received PDU from a lower layer communication interface module.
함수 Dlt_RxIndication은(는) 하위 통신 인터페이스 모듈로부터 DLT 모듈로 수신된 PDU를 지시(indication)하는 역할을 합니다 [SWS_Dlt_00272]. 헤더 Dlt.h을(를) 통해 사용할 수 있으며 서비스 ID 0x42을(를) 가집니다 [SWS_Dlt_00272].
호출은 동기식 시맨틱으로 수행되며 반환값을 제공하지 않습니다(void) [SWS_Dlt_00272]. 함수에는 두 개의 입력 매개변수가 전달됩니다:
RxPduId: 수신된 PDU의 식별자(PduIdType타입) [SWS_Dlt_00272].PduInfoPtr:PduInfoType타입 구조체에 대한 포인터. 여기에는 수신된 PDU의 길이(SduLength), PDU 페이로드가 포함된 버퍼에 대한 포인터(SduDataPtr) 및 PDU의 관련 메타데이터가 포함됩니다 [SWS_Dlt_00272].
동시성 및 실행 컨텍스트와 관련하여 이 함수는 서로 다른 PDU-ID에 대해서는 재진입 가능하지만, 동일한 PDU-ID에 대해서는 재진입이 불가능합니다 [SWS_Dlt_00272]. 따라서 호출하는 하위 모듈은 동일한 RxPduId을(를) 동시에 동시적으로(concurrently) 처리하도록 해서는 안 되며, 서로 다른 PDU-ID를 사용한 병렬 호출은 허용됩니다 [SWS_Dlt_00272].
이 텍스트는 사양을 기반으로 AI에 의해 생성되었습니다.
함수 Dlt_TriggerTransmit [SWS_Dlt_00754] 📄 PDF
Std_ReturnType Dlt_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);
Within this API , the upper layer module (called module) shall check whether the available data fits into the buffer size reported by Pdu Info Ptr - >Sdu Length. If it fits, it shall copy its data into the buffer provided by Pdu Info Ptr - >Sdu Data Ptr and update the length of the actual copied data in Pdu Info Ptr - >Sdu Length. If not, it returns E_ NOT_ OK without changing Pdu Info Ptr.
동기 함수 Dlt_TriggerTransmit은(는) [SWS_Dlt_00754]에 따라 하위 계층의 요청 시 SDU 데이터를 제공된 버퍼로 복사하는 데 사용됩니다. 이 함수는 Dlt.h에 선언되어 있으며 서비스 ID 0x41을(를) 갖습니다.
호출 시 다음 파라미터가 전달됩니다:
TxPduId: 전송이 요청되는 SDU의 식별자입니다.PduInfoPtr:PduInfoType유형의 구조체에 대한 포인터입니다. 호출자는SduDataPtr을(를) 통해 대상 버퍼를,SduLength을(를) 통해 사용 가능한 최대 버퍼 크기를 전달합니다.
함수 내부에서 모듈은 [SWS_Dlt_00754]에 따라 사용 가능한 데이터가 전달된 버퍼 크기에 맞는지 확인합니다:
- 데이터가 들어맞는 경우, 함수는 유효 데이터를
SduDataPtr(으)로 복사하고,SduLength을(를) 실제로 복사된 바이트 수로 업데이트하며E_OK을(를) 반환합니다. - 버퍼가 충분하지 않은 경우, 함수는
PduInfoPtr을(를) 수정하지 않고E_NOT_OK을(를) 반환합니다.
E_NOT_OK이(가) 반환되면 SDU 데이터가 복사되지 않은 것입니다. 이 경우 유효하지 않은 데이터를 가리키거나 NULL 포인터일 수 있으므로 호출자는 PduInfoPtr을(를) 계속 사용해서는 안 됩니다 [SWS_Dlt_00754].
동시성과 관련하여 Dlt_TriggerTransmit은(는) 서로 다른 PDU ID에 대해서는 재진입 가능(reentrant)하지만, 동일한 TxPduId에 대해서는 재진입할 수 없습니다 [SWS_Dlt_00754].
이 텍스트는 자동으로 생성되었습니다. 모든 내용은 참조된 AUTOSAR 사양을 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_TxConfirmation [SWS_Dlt_00273] 📄 PDF
void Dlt_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);
The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
사용법 및 호출 컨텍스트
함수 Dlt_TxConfirmation은(는) Diagnostic Log and Trace(DLT) 모듈에 대한 하위 통신 계층 인터페이스 모듈(lower layer communication interface module)의 확인 인터페이스 역할을 합니다[SWS_Dlt_00273]. 이 함수는 이전에 요청된 PDU가 성공적으로 전송될 수 있었는지 또는 전송이 실패했는지를 DLT 모듈에 동기식으로 알립니다[SWS_Dlt_00273]. 이 함수는 서비스 ID 0x40을(를) 가지며 헤더 파일 Dlt.h을(를) 통해 제공됩니다[SWS_Dlt_00273].
이 인터페이스는 반환값(void)이 없으며 두 개의 전달 매개변수를 필요로 합니다[SWS_Dlt_00273]:
TxPduId: 전송된 PDU의 식별자(타입PduIdType).result: 전송 상태(타입Std_ReturnType); 여기서E_OK은(는) 성공적인 전송을 나타내고E_NOT_OK은(는) PDU 전송 실패를 나타냅니다.
오류 처리 및 동시성
오류 반환값이나 특정 DET 또는 DEM 메시지를 사용하는 명시적인 오류 처리는 이 호출에 대해 명세되어 있지 않으며, 전송 프로세스의 실패는 매개변수 값 result = E_NOT_OK을(를) 통해서만 DLT 모듈에 전달됩니다[SWS_Dlt_00273].
실행에 대해 차별화된 재진입 조건이 적용됩니다: Dlt_TxConfirmation은(는) 서로 다른 PDU-ID에 대해서는 재진입 가능하지만, 동일한 PDU-ID에 대해서는 비재진입입니다[SWS_Dlt_00273]. 따라서 호출하는 드라이버 또는 인터페이스는 서로 다른 PDU에 대한 확인이 동시에 도착할 수 있는 반면, 동일한 TxPduId을(를) 사용한 동시 호출은 배제되도록 보장해야 합니다.
이 사용 지침은 AUTOSAR CP R20-11 사양을 기반으로 자동으로 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_TpTxConfirmation [SWS_Dlt_00756] 📄 PDF
void Dlt_TpTxConfirmation (PduIdType id, Std_ReturnType result);
This function is called after the I - PDU has been transmitted on its network, the result indicates whether the transmission was succe ssful or not.
함수 Dlt_TpTxConfirmation은(는) 전송 I-PDU를 전송한 후 Dlt 모듈의 동기식 확인(confirmation) 함수 역할을 합니다 [SWS_Dlt_00756]. 이 함수는 헤더 파일 Dlt.h을(를) 통해 서비스 ID 0x48(으)로 제공됩니다 [SWS_Dlt_00756].
사용법 및 의미론
호출은 해당 네트워크에서 I-PDU가 전송된 후에 수행됩니다 [SWS_Dlt_00756]. 이 함수는 void Dlt_TpTxConfirmation (PduIdType id, Std_ReturnType result) 시그니처를 가지며 반환값을 반환하지 않습니다 [SWS_Dlt_00756]:
id(입력 매개변수, 유형PduIdType): 전송된 I-PDU의 고유 식별자입니다 [SWS_Dlt_00756].result(입력 매개변수, 유형Std_ReturnType): 전송 상태를 나타내며 I-PDU의 전송이 성공했는지 실패했는지를 보여줍니다 [SWS_Dlt_00756].
동시성 및 오류 처리
사양에서는 Dlt_TpTxConfirmation을(를) 동기식 및 재진입 가능(Reentrant)으로 명시합니다 [SWS_Dlt_00756]. 이 서비스에 대해 특정 DET 또는 DEM 오류 코드는 정의되어 있지 않으며, 전송 과정과 관련된 오류 처리는 매개변수 result의 평가에 의존합니다 [SWS_Dlt_00756]. 시스템 컨텍스트에서 이 호출은 일반적으로 PDU 전송 완료 후 하위 전송 계층에 의해 시작될 것으로 추정됩니다. 질문 Q-0e5ab7c285316701 (열림)
이 텍스트는 AUTOSAR R20-11 명세를 기반으로 AI 시스템에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_CopyTxData [SWS_Dlt_00516] 📄 PDF
BufReq_ReturnType Dlt_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);
Service Dlt_CopyTxData.
사용법 및 의미론
동기식 및 재진입 가능(reentrant) 함수인 Dlt_CopyTxData은(는) Dlt 모듈로부터 I-PDU 세그먼트(N-PDU)의 송신 데이터를 가져오는 역할을 합니다 [SWS_Dlt_00516]. id을(를) 통해 전송할 I-PDU가 지정되며, info은(는) 대상 버퍼(SduDataPtr) 및 요청 바이트 길이(SduLength)를 제공합니다 [SWS_Dlt_00516]. SduLength = 0을(를) 전달하면(여기서 SduDataPtr은(는) NULL_PTR(으)로 전달될 수 있음) retry을(를) 통해 순수 상태 변경을 전송하거나 송신 버퍼의 잔여 데이터양을 쿼리할 수 있습니다 [SWS_Dlt_00516]. 출력 매개변수 availableDataPtr을(를) 통해 함수는 Tx 버퍼에서 아직 사용 가능한 데이터양을 반환하며, 이는 예를 들어 동적 페이로드 길이를 갖는 TP 모듈(예: FrIsoTp)이 후속 세그먼트의 크기를 결정할 수 있도록 합니다 [SWS_Dlt_00516].
확인 및 오류 복구
포인터 retry을(를) 통해 확인(acknowledgement) 또는 재전송이 제어됩니다 [SWS_Dlt_00516]:
retry이(가)NULL_PTR인 경우, 복사된 데이터는 복사 프로세스 직후 버퍼에서 폐기될 수 있습니다 [SWS_Dlt_00516].TpDataState이(가)TP_CONFPENDING값을 나타내는 경우, 이전에 복사된 데이터는 잠재적인 오류 복구를 위해 버퍼에 유지되어야 합니다 [SWS_Dlt_00516].TP_DATACONF의 경우, 호출 전에 전송된 모든 데이터는 확인된 것으로 간주되어 해제될 수 있습니다 [SWS_Dlt_00516].TP_DATARETRY의 경우, 모듈은TxTpDataCnt에 전달된 바이트 오프셋부터 복사를 다시 시작합니다 [SWS_Dlt_00516].
반환값 및 제약 조건
요청 결과는 BufReq_ReturnType(으)로 보고됩니다 [SWS_Dlt_00516]:
BUFREQ_OK: 요구된 대로 데이터가 대상 버퍼에 완전히 복사되었습니다 [SWS_Dlt_00516].BUFREQ_E_BUSY: 요청된 데이터양을 사용할 수 없습니다. 복사된 데이터가 없으며 추후 재시도가 허용됩니다 [SWS_Dlt_00516].BUFREQ_E_NOT_OK: 요청 실패. 복사된 데이터가 없습니다 [SWS_Dlt_00516].
인터페이스는 Dlt.h을(를) 통해 사용 가능하며 재진입 가능(reentrant)하도록 설계되었습니다 [SWS_Dlt_00516]. 호출 컨텍스트는 일반적으로 세그먼트화된 전송 중에 하위 전송 프로토콜 모듈에 있을 것으로 보입니다. 질문 Q-a81c439e73e0acc0 (열림)
이 사용 지침은 AUTOSAR Classic R20-11 사양을 바탕으로 자동 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_StartReception [SWS_Dlt_91006] 📄 PDF
BufReq_ReturnType Dlt_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);
This function is called at the start of receiving an N -
동기식 및 재진입 가능 함수인 Dlt_StartReception은(는) 단일 프레임(SF)으로 수신되거나 여러 N-PDU에 걸쳐 분할 수신될 수 있는 N-SDU의 수신 시작 시 호출됩니다 [SWS_Dlt_91006]. 이 함수는 Dlt 모듈에서 전송 연결을 시작하고 사용 가능한 수신 버퍼를 제공하는 데 사용됩니다 [SWS_Dlt_91006].
매개변수 id을(를) 통해 수신된 I-PDU가 식별되는 반면, info은(는) 첫 번째 프레임의 유효 데이터 및 메타데이터를 전송하거나 데이터와 메타데이터가 모두 없는 경우 NULL_PTR(으)로 설정됩니다 [SWS_Dlt_91006]. TpSduLength을(를) 통해 N-SDU의 총 길이가 전달되며, 길이가 0인 상태로 함수가 호출되면 bufferSizePtr을(를) 통해 현재 사용 가능한 최대 버퍼 크기를 반환합니다 [SWS_Dlt_91006]. 전송 프로토콜은 Block Size(BS) 계산을 위해 bufferSizePtr의 값을 사용합니다 [SWS_Dlt_91006].
연결이 수락되면 함수는 BUFREQ_OK을(를) 반환합니다. 요청된 크기에 대한 충분한 버퍼가 준비되어 있지 않은 경우, 수신을 계속하기 위해 bufferSizePtr이(가) 버퍼 크기 0을 알립니다 [SWS_Dlt_91006]. 연결 거부 시 BUFREQ_E_NOT_OK이(가) 수신을 중단하며, 총 메모리가 부족한 경우 BUFREQ_E_OVFL이(가) 보고됩니다. 두 오류 사례 모두 bufferSizePtr은(는) 변경되지 않은 상태로 유지됩니다 [SWS_Dlt_91006].
이 사용 지침은 AUTOSAR Classic R20-11 명세를 기반으로 합니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_TpRxIndication [SWS_Dlt_91007] 📄 PDF
void Dlt_TpRxIndication (PduIdType id, Std_ReturnType result);
Called after an I - PDU has been received via the TP API, the result indicates whether the transmission was successful or not.
함수 Dlt_TpRxIndication은(는) TP-API를 통해 I-PDU를 수신한 후 동기식 수신 표시(indication) 역할을 합니다 [SWS_Dlt_91007]. 이 함수는 헤더 파일 Dlt.h에 선언되어 있으며 서비스 ID 0x45을(를) 갖습니다 [SWS_Dlt_91007].
사용법 및 매개변수
DLT 모듈로의 전달은 두 개의 입력 매개변수를 통해 수행되며, 함수는 반환값을 반환하지 않습니다 [SWS_Dlt_91007]:
id(유형PduIdType): 수신된 I-PDU의 식별을 나타냅니다 [SWS_Dlt_91007].result(유형Std_ReturnType): 수신 결과를 나타내며 전송이 성공했는지 여부를 보여줍니다 [SWS_Dlt_91007].
동시성 및 제약사항
이 인터페이스는 동기식 및 재진입 가능으로 정의됩니다 [SWS_Dlt_91007]. 입출력 매개변수나 순수 출력 매개변수는 존재하지 않습니다 [SWS_Dlt_91007].
오류 처리 및 상호 작용
전송 결과는 인수 result을(를) 통해서만 DLT 모듈에 신호로 전달되며, 특정 오류 코드, DET 또는 DEM 메시지는 명시되어 있지 않습니다 [SWS_Dlt_91007].
해석: DLT 메시지가 완전히 수신되거나 전송이 중단되는 즉시 하위 전송 프로토콜 컴포넌트에 의해 호출이 이루어질 것으로 추정됩니다 [SWS_Dlt_91007]. 질문 Q-7d9c8564a2404acf (열림)
이 사용 지침은 AUTOSAR 사양 R20-11을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_CopyRxData [SWS_Dlt_91008] 📄 PDF
BufReq_ReturnType Dlt_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);
Service Dlt_CopyRxData.
사용법 및 의미론
동기 함수 Dlt_CopyRxData은(는) I-PDU 세그먼트(N-PDU)의 수신된 데이터를 상위 계층으로 전달하기 위해 호출됩니다 [SWS_Dlt_91008]. 각 호출은 I-PDU 데이터의 다음 부분을 각각 제공하며, 남은 버퍼 크기는 bufferSizePtr에 의해 참조되는 메모리 위치에 기록됩니다 [SWS_Dlt_91008]. 선언은 헤더 Dlt.h을(를) 통해 확인할 수 있습니다 [SWS_Dlt_91008].
매개변수 및 버퍼 쿼리
입력 매개변수 id을(를) 통해 수신된 I-PDU가 식별됩니다 [SWS_Dlt_91008]. 포인터 info은(는) SduDataPtr을(를) 통해 소스 버퍼를 제공하고 SduLength을(를) 통해 복사할 바이트 수를 제공합니다 [SWS_Dlt_91008]. SduLength이(가) 값 0으로 전달되는 경우 호출은 상위 모듈에서 현재 사용 가능한 버퍼에 대한 순수한 조회 역할을 하며, 이 경우 SduDataPtr은(는) NULL_PTR일 수 있습니다 [SWS_Dlt_91008]. 출력 매개변수 bufferSizePtr은(는) 복사 작업 후 여전히 여유 있는 수신 버퍼 크기를 반환합니다 [SWS_Dlt_91008].
동시성 및 반환값
이 함수는 재진입 가능하도록 설계되었으며 서비스 ID 0x44을(를) 갖습니다 [SWS_Dlt_91008]. 유형 BufReq_ReturnType의 반환값은 복사 작업의 결과를 나타냅니다. 성공적인 데이터 수락 시 서비스는 BUFREQ_OK을(를) 반환하는 반면, 오류 발생 시에는 BUFREQ_E_NOT_OK이(가) 보고됩니다 [SWS_Dlt_91008].
참고: 이 사용 지침은 AUTOSAR 사양 R20-11을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I1)
함수 Dlt_TxFunction [SWS_Dlt_91005] 📄 PDF
void Dlt_TxFunction (void);
-
사용법 및 호출 컨텍스트
함수 Dlt_TxFunction은(는) 사양 [SWS_Dlt_91005]에 따라 서비스 ID 0x80을(를) 갖는 서비스로 정의되며 헤더 SchM_Dlt.h을(를) 통해 제공됩니다. 해당 인터페이스 시그니처는 void Dlt_TxFunction (void)입니다 [SWS_Dlt_91005]. SchM_Dlt.h의 선언은 해석상 이 호출이 주기적 태스크의 컨텍스트에서 BSW 스케줄러에 의해 수행되며 애플리케이션 Software-Component에 의해 직접 호출되어서는 안 됨을 시사합니다.
매개변수 및 반환값
[SWS_Dlt_91005]에 따르면 이 함수는 전달 매개변수를 받지 않으며 반환값을 반환하지 않습니다(void). 이름으로 미루어 볼 때 이 함수는 대기 중인 Dlt 전송 메시지의 주기적 처리 및 전송을 담당할 것으로 보입니다. 질문 (열림) 반환값이 지정되어 있지 않으므로 오류 처리는 모듈 또는 상태 내부에서만 순수하게 수행되는 것으로 추정됩니다.
제한
페이로드에 재진입성이나 특수 개발 오류에 대한 명시가 포함되어 있지 않으므로, 호출 간격과 태스크 할당은 Schedule Manager 구성을 통해 조정되어야 합니다. 추가적인 오류 코드나 DET 항목은 [SWS_Dlt_91005]에 명시되어 있지 않습니다.
이 텍스트는 AI에 의해 생성되었으며, 공식 AUTOSAR 사양에 대한 학습을 대체하지 않습니다.
타입 Dlt_ConfigType [SWS_Dlt_00437] 📄 PDF
This is the type of the data structure containing the initialization data for Dlt.
타입 Dlt_MessageType [SWS_Dlt_00224] 📄 PDF
This type describes the type of the message.
타입 Dlt_MessageIDType [SWS_Dlt_00228] 📄 PDF
Contains the unique Message Id for a message. This is only relevant in non - verbose mode.
타입 Dlt_MessageNetworkTraceInfoType [SWS_Dlt_00233] 📄 PDF
This type describes transported type of a Dlt BUSMESSAGE.
타입 Dlt_ApplicationIDType [SWS_Dlt_00226] 📄 PDF
This type describes the Application Id. 0x00000000 means the so - called wildcard.
타입 Dlt_ContextIDType [SWS_Dlt_00227] 📄 PDF
This type describes the Context Id. 0x00000000 means the so - called wildcard.
타입 Dlt_SessionIDType [SWS_Dlt_00225] 📄 PDF
This type identifies the session.
타입 Dlt_LogInfoType [SWS_Dlt_91002] 📄 PDF
-
타입 Dlt_ContextIdInfoType [SWS_Dlt_91003] 📄 PDF
Context Information
타입 Dlt_ApplicationIdInfoType [SWS_Dlt_91004] 📄 PDF
Information about Applications
타입 Dlt_MessageOptionsType [SWS_Dlt_00229] 📄 PDF
Bitfield
타입 Dlt_MessageLogInfoType [SWS_Dlt_00236] 📄 PDF
-
타입 Dlt_MessageLogLevelType [SWS_Dlt_00230] 📄 PDF
This type describes the log lev el for each log message.
타입 Dlt_MessageTraceType [SWS_Dlt_00231] 📄 PDF
This type describes labels for trace messages.
타입 Dlt_MessageArgumentCount [SWS_Dlt_00235] 📄 PDF
This type describes the count of arguments provided to a message.
타입 Dlt_MessageTraceInfoType [SWS_Dlt_00237] 📄 PDF
-
타입 Type [SWS_Dlt_00232] 📄 PDF
This type describes the Log Channel name.
타입 Dlt_AssignmentOperation [SWS_Dlt_00730] 📄 PDF
Adding or removing a Log Channel assignment for the given tuple of Application Id/ Context Id.
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_Dlt- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_Dlt@rel:R20-11#d55bcb1e- Content hash
d55bcb1e- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_DiagnosticLogAndTrace.pdf#nameddest=SWS_Dlt_00239
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문