DEENESPTFRRUARHIKOZHNL

AUTOSAR Classic General & Standard Types

Die Standard- und Plattformtypen definieren die grundlegenden C-Typen, Rückgabewerte und Kommunikationsdatenstrukturen der AUTOSAR Classic Architektur. Sie stellen hardwareunabhängige Portabilität für Basissoftware und Applikations-SW-Cs sicher.

클러스터 가이드AI 생성

모든 BSW 모듈을 위한 하드웨어 독립적인 기본 타입, 상태 반환 값 및 통신 버퍼 구조를 제공합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 747da3f739d7 출처
인과 앵커: R20-11 R20-11부터 유효 이 사양 릴리스용으로 새로 합성되었습니다.
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

모든 BSW 모듈을 위한 하드웨어 독립적인 기본 타입, 상태 반환 값 및 통신 버퍼 구조를 제공합니다.

모듈 클러스터 General & Standard Types는 헤더 Platform_Types.h, Std_Types.h 및 ComStack_Types.h를 통해 Classic Platform의 모든 데이터 타입, 상태 피드백 및 통신 버퍼를 위한 하드웨어 독립적인 기반을 제공합니다(AUTOSAR_SRS_BSWGeneral 62쪽). 이는 엔디언 모델과 같은 기본 아키텍처 특성, Std_ReturnType와 같은 표준화된 반환 값, PduInfoType와 같은 통신 구조를 표준화합니다([SWS_Std_00005], [SWS_COMTYPE_00008]). 실행 코드가 없는 순수 헤더 정의이므로, 이 클러스터는 런타임 구성을 필요로 하지 않으며 자체 태스크나 활성 오류 처리도 보유하지 않습니다(SWS_StandardTypes 27쪽).

모듈 클러스터 General & Standard Types는 세 개의 기본 헤더 platform(Platform_Types.h), std(Std_Types.h) 및 comstack(ComStack_Types.h)를 포함합니다. 순수 타입 정의로서 이들은 실행 코드를 전혀 포함하지 않으며 구성이 필요하지 않습니다(SWS_StandardTypes 27쪽). 이들은 하드웨어 독립적인 타입 지정을 위한 플랫폼 전반의 기반을 형성하고, 컴파일러 및 하드웨어 특성을 통일하며, 모든 BSW 모듈과 RTE에 일관된 데이터 구조를 공급합니다(AUTOSAR_SRS_BSWGeneral 62쪽).

TypesArchitecture PlatformTypes Platform_Types.h (platform) boolean, TRUE, FALSE CPU_BIT_ORDER, CPU_BYTE_ORDER ConstVoidPtr, C99-Elementartypen StdTypes Std_Types.h (std) Std_ReturnType (E_OK, E_NOT_OK) STD_ON/OFF, STD_HIGH/LOW, STD_ACTIVE/IDLE Std_VersionInfoType, Std_TransformerError PlatformTypes->StdTypes 다음에 의해 포함됨: ComStackTypes ComStack_Types.h (comstack) PduIdType, PduLengthType, PduInfoType BufReq_ReturnType, RetryInfoType NetworkHandleType, PNCHandleType StdTypes->ComStackTypes 다음에 의해 포함됨: BSWModules BSW & RTE Schichten CanIf, PduR, CanTp, SoAd, Dcm, SecOC, RTE StdTypes->BSWModules 다음에 의해 임포트됨: ComStackTypes->BSWModules 다음에 의해 임포트됨:

아키텍처 다이어그램: 내보낸 타입 인터페이스를 포함하는 모듈 클러스터 'General & Standard Types'의 정적 계층 및 포함 아키텍처. 출처: AUTOSAR_SRS_BSWGeneral 62쪽, [SWS_Std_00005], [SWS_COMTYPE_00005]

포함 계층 구조는 점진적으로 상호 구축됩니다. Platform_Types.h은 C99 타입 boolean([SWS_Platform_00027]), ConstVoidPtr과 같은 범용 버퍼 포인터([SWS_Platform_91002]), 레지스터 비트 순서용 심볼 CPU_BIT_ORDER([SWS_Platform_00038]) 및 메모리 바이트 순서용 심볼 CPU_BYTE_ORDER([SWS_Platform_00039])과 같은 플랫폼별 속성을 캡슐화합니다. 이를 기반으로 Std_Types.h는 STD_ON/STD_OFF([SWS_Std_00010])과 같은 범용 표준 상수, Std_VersionInfoType([SWS_Std_00015])을 통한 모듈 버전 구조, E_OK 및 E_NOT_OK을 포함하는 기본 상태 시스템 Std_ReturnType를 제공합니다([SWS_Std_00005], [SWS_Std_00006]).

AUTOSAR 통신 스택을 위해 ComStack_Types.h은 PduIdType([SWS_COMTYPE_00005]), NetworkHandleType([SWS_COMTYPE_00038]) 및 중앙 버퍼 구조 PduInfoType([SWS_COMTYPE_00008])와 같은 모든 프로토콜 간 인터페이스 타입을 정의합니다. 분할 전송 프로토콜(예: CanTp 또는 DoIP)에서 반환 타입 BufReq_ReturnType은 RetryInfoType과 함께 BSW 계층 간의 동기식 버퍼 예약 및 데이터 복사를 제어합니다(SWS_DiagnosticCommunicationManager 291쪽, [SWS_COMTYPE_00012]).

전송 프로토콜에서의 버퍼 협상 및 데이터 수신(ComStack_Types)CanTpPduRDcmUse Case: 1. 수신 시작 및 버퍼 조회PduR_CanTpStartOfReception(id, info, TpSduLength, &bufferSizePtr)Dcm_StartOfReception(id, info, TpSduLength, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OK (bufferSizePtr bereitgestellt)BufReq_ReturnType: BUFREQ_OKUse Case: 2. Segmentierter Datentransferloopfuer jedes empfangene N-PDU SegmentPduR_CanTpCopyRxData(id, PduInfoType*, &bufferSizePtr)Dcm_CopyRxData(id, PduInfoType*, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OKBufReq_ReturnType: BUFREQ_OKUse Case: 3. AbschlussbestaetigungPduR_CanTpRxIndication(id, Std_ReturnType: E_OK)Dcm_TpRxIndication(id, Std_ReturnType: E_OK)

시퀀스 다이어그램: ComStack_Types(PduInfoType, BufReq_ReturnType)를 사용하는 전송 프로토콜의 세그먼트화된 수신 및 버퍼 경로. 출처: SWS_PDURouter 112쪽, SWS_DiagnosticCommunicationManager 273쪽, SWS_DiagnosticCommunicationManager 274쪽

클러스터가 자체 오류 처리나 DET 메시지를 가지고 있지 않음에도 불구하고(SWS_StandardTypes 27쪽), Std_ReturnType은 전체 시스템의 오류 처리를 구조화합니다. 비트 0~5(0x00~0x3F)는 표준 및 애플리케이션 오류용으로 예약되어 있는 반면, 비트 6과 7은 RTE에 의해 독점적으로 점유됩니다([SWS_Std_00011], AUTOSAR_CP_SWS_StandardTypes 15쪽). 모든 타입 정의는 멀티태스킹 및 인터럽트 컨텍스트에서 재진입 가능한 사용을 위해 명시되어 있습니다(SWS_CANInterface 87쪽).

시스템 아키텍처 & 모듈 클러스터의 역할

모듈 클러스터 General & Standard Types는 릴리스 R20-11에서 AUTOSAR Classic Platform의 근본적인 유형론적 및 하드웨어 추상화 기반을 형성합니다. 이는 세 개의 순수 헤더 모듈 platform([SWS_Platform_00038]), std([SWS_Std_00005]) 및 comstack([SWS_COMTYPE_00005])로 구성됩니다. BSW 아키텍처에 따라 이러한 모듈은 자체 실행 가능한 C 코드를 제공하지 않으며 다른 BSW 드라이버를 요청하지도 않습니다(SWS_StandardTypes 27쪽). 이들의 주요 임무는 컴파일러 및 프로세서 종속성을 캡슐화하고, 플랫폼 전체에서 통일된 기본 타입을 제공하며, 통신 계층을 위한 표준화된 데이터 구조를 확립하는 것입니다.

계층 구조는 엄격한 단방향 포함 순서를 따릅니다. 파일 Platform_Types.h은 기본 마이크로컨트롤러 아키텍처의 속성(레지스터 및 메모리 레이아웃, C99 기본 타입 등)을 추상화하는 반면, Std_Types.h은 이를 기반으로 범용 반환 값과 상태 상수를 정의합니다(AUTOSAR_SRS_BSWGeneral 62쪽). 이를 기반으로 ComStack_Types.h은 CAN, FlexRay, LIN 및 Ethernet과 같은 네트워크와 ISO 15765-2에 따른 전송 프로토콜 및 ISO 14229에 따른 진단 프로토콜을 위한 모든 버스 및 프로토콜 간 데이터 타입을 선언합니다([SWS_COMTYPE_00008], [SWS_COMTYPE_00011]). 이러한 분리를 통해 런타임 환경(RTE) 및 애플리케이션 소프트웨어 컴포넌트(SWC)와 같은 상위 계층이 완전히 이식 가능한 상태로 유지되도록 보장합니다(SWS_RTE 818쪽).

TypesArchitecture PlatformTypes Platform_Types.h (platform) boolean, TRUE, FALSE CPU_BIT_ORDER, CPU_BYTE_ORDER ConstVoidPtr, C99-Elementartypen StdTypes Std_Types.h (std) Std_ReturnType (E_OK, E_NOT_OK) STD_ON/OFF, STD_HIGH/LOW, STD_ACTIVE/IDLE Std_VersionInfoType, Std_TransformerError PlatformTypes->StdTypes 다음에 의해 포함됨: ComStackTypes ComStack_Types.h (comstack) PduIdType, PduLengthType, PduInfoType BufReq_ReturnType, RetryInfoType NetworkHandleType, PNCHandleType StdTypes->ComStackTypes 다음에 의해 포함됨: BSWModules BSW & RTE Schichten CanIf, PduR, CanTp, SoAd, Dcm, SecOC, RTE StdTypes->BSWModules 다음에 의해 임포트됨: ComStackTypes->BSWModules 다음에 의해 임포트됨:

아키텍처 다이어그램: 내보낸 타입 인터페이스를 포함하는 모듈 클러스터 'General & Standard Types'의 정적 계층 및 포함 아키텍처. 출처: AUTOSAR_SRS_BSWGeneral 62쪽, [SWS_Std_00005], [SWS_COMTYPE_00005]

모듈 간 상호작용 & 인터랙션 경로

클러스터 내의 상호 작용은 정적 포함 체인을 기반으로 합니다. ComStack_Types.h은 Std_Types.h을 포함하고, 이는 다시 Platform_Types.h를 포함합니다(RS_BSWGeneral 60쪽). 모듈 platform는 C99 기본 타입 _Bool에 필수로 매핑되어야 하는 boolean와 같은 기본 수량을 정의하며([SWS_Platform_00027]), 리터럴 TRUE 및 FALSE를 통한 엄격한 값 할당을 규정합니다([SWS_Platform_00034]). 또한 호출된 함수 인터페이스에 대한 불변 전달 버퍼로 사용되는 ConstVoidPtr과 같은 일반 버퍼 포인터가 지정됩니다([SWS_Platform_91002]).

또한 platform은 표준화된 전처리기 심볼을 통해 하드웨어 엔디언을 조화시킵니다. 레지스터의 비트 순서에 대해 CPU_BIT_ORDER은 MSB_FIRST 또는 LSB_FIRST으로 정의됩니다([SWS_Platform_00038], [SWS_Platform_00048], [SWS_Platform_00049]). 물리적 메모리의 바이트 순서는 CPU_BYTE_ORDER을 통해 제어되며, 이때 HIGH_BYTE_FIRST(빅 엔디언, 더 낮은 주소의 MSB)은 LOW_BYTE_FIRST(리틀 엔디언, 더 낮은 주소의 LSB)와 구별됩니다([SWS_Platform_00039], [SWS_Platform_00050], [SWS_Platform_00051]).

ByteOrdering cluster_big Big Endian (CPU_BYTE_ORDER = HIGH_BYTE_FIRST) cluster_little Little Endian (CPU_BYTE_ORDER = LOW_BYTE_FIRST) Logical16 Logischer Wert: uint16 (16-Bit) Byte1: MSB (Bits 15..8) Byte0: LSB (Bits 7..0) BigMem Physikalischer Speicher Adresse n: Byte1 (MSB) Adresse n+1: Byte0 (LSB) Logical16->BigMem HIGH_BYTE_FIRST LittleMem Physikalischer Speicher Adresse n: Byte0 (LSB) Adresse n+1: Byte1 (MSB) Logical16->LittleMem LOW_BYTE_FIRST

구조 다이어그램: 빅 엔디언(HIGH_BYTE_FIRST) 대 리틀 엔디언(LOW_BYTE_FIRST)에서의 스칼라 다중 바이트 값의 메모리 매핑. 출처: AUTOSAR_CP_SWS_PlatformTypes 16쪽, AUTOSAR_CP_SWS_PlatformTypes 15쪽, [SWS_Platform_00050], [SWS_Platform_00051]

다음 추상화 수준에서 모듈 std은 스위칭 상태 및 논리 레벨을 위한 범용 심볼을 정의합니다. 물리적 전압 레벨을 위한 STD_HIGH(0x01u) 및 STD_LOW(0x00u)([SWS_Std_00007]), 활성화 모드를 위한 STD_ON(0x01u) 및 STD_OFF(0x00u)([SWS_Std_00010]), 논리적 실행 상태를 위한 STD_ACTIVE(0x01u) 및 STD_IDLE(0x00u)([SWS_Std_00013])입니다. 메시지 프로토콜 및 트랜스포머를 위해 std은 또한 리터럴 STD_MESSAGETYPE_REQUEST(0x00) 및 STD_MESSAGETYPE_RESPONSE(0x01)을 포함하는 Std_MessageTypeType([SWS_Std_91001], [SWS_Std_00017])과 프로토콜 헤더 추출을 위한 함수 포인터 타입 Std_ExtractProtocolHeaderFieldsType을 제공합니다([SWS_Std_91003]).

모듈 comstack은 차례로 platform 및 std의 기본 타입을 사용하여 통신 스택의 전체 버퍼 및 데이터 교환을 구조화합니다. 중앙 인터페이스 구조는 데이터 포인터 SduDataPtr(uint8*), 메타데이터 포인터 MetaDataPtr 및 PduLengthType 타입의 버퍼 길이 SduLength을 묶는 PduInfoType입니다([SWS_COMTYPE_00008], [SWS_COMTYPE_00011]). I-PDU 식별은 PduIdType을 통해 수행됩니다([SWS_COMTYPE_00005]). 전체 통신 채널 및 부분 네트워크의 관리를 위해 comstack는 ComM 및 Nm의 Synchronized PNC Shutdown 등에서 사용되는 채널 식별자 NetworkHandleType([SWS_COMTYPE_00038]) 및 부분 네트워크 식별자 PNCHandleType([SWS_COMTYPE_00036])를 정의합니다(SWS_COMManager 171쪽).

세그먼트화된 전송 프로토콜 전송(TP)에서 버퍼 협상은 반환 타입 BufReq_ReturnType 및 구조체 RetryInfoType을 통해 처리됩니다([SWS_COMTYPE_00012]). CanTp, PduR, DCM, DoIP 또는 SecOC와 같은 모듈 간의 CopyTxData 또는 CopyRxData와 같은 동기 복사 호출 시, BUFREQ_OK는 성공적인 복사 프로세스를 신호하는 반면, BUFREQ_E_BUSY은 일시적으로 버퍼가 불충분하여 재시도가 허용됨을 알립니다(SWS_DiagnosticCommunicationManager 291쪽, SWS_SecureOnboardCommunication 76쪽). TP_CONFPENDING 또는 TP_DATACONF과 같은 매개변수가 포함된 RetryInfoType를 통해 잠재적인 재시도를 위해 데이터가 버퍼에 유지되거나 확인 후 해제되도록 보장합니다(SWS_IntrusionDetectionSystemManager 49쪽).

전송 프로토콜에서의 버퍼 협상 및 데이터 수신(ComStack_Types)CanTpPduRDcmUse Case: 1. 수신 시작 및 버퍼 조회PduR_CanTpStartOfReception(id, info, TpSduLength, &bufferSizePtr)Dcm_StartOfReception(id, info, TpSduLength, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OK (bufferSizePtr bereitgestellt)BufReq_ReturnType: BUFREQ_OKUse Case: 2. Segmentierter Datentransferloopfuer jedes empfangene N-PDU SegmentPduR_CanTpCopyRxData(id, PduInfoType*, &bufferSizePtr)Dcm_CopyRxData(id, PduInfoType*, &bufferSizePtr)BufReq_ReturnType: BUFREQ_OKBufReq_ReturnType: BUFREQ_OKUse Case: 3. AbschlussbestaetigungPduR_CanTpRxIndication(id, Std_ReturnType: E_OK)Dcm_TpRxIndication(id, Std_ReturnType: E_OK)

시퀀스 다이어그램: ComStack_Types(PduInfoType, BufReq_ReturnType)를 사용하는 전송 프로토콜의 세그먼트화된 수신 및 버퍼 경로. 출처: SWS_PDURouter 112쪽, SWS_DiagnosticCommunicationManager 273쪽, SWS_DiagnosticCommunicationManager 274쪽

동기화, 재진입성 및 태스크 컨텍스트

모듈 platform, std 및 comstack는 실행 가능한 오브젝트 파일이 없는 순수 헤더 파일이므로, 기본적으로 주기적 MainFunctions을 구현하지 않으며 자체 태스크 컨텍스트를 갖지 않습니다(SWS_StandardTypes 27쪽). 그러나 계층 경계를 넘어 호출되는 함수를 위한 시그니처 및 타입 규칙을 정의합니다. 모든 타입 정의는 제한 없이 재진입 가능하고 상태 비저장 방식으로 전달될 수 있도록 설계되었습니다(SWS_CANInterface 87쪽).

타입의 실질적인 사용은 고도의 비동기 및 동시성 환경에서 발생합니다. PduInfoType 및 PduIdType을 사용하는 CanIf_RxIndication 또는 Dcm_CopyRxData과 같은 데이터 수신 콜백은 명시적으로 인터럽트 컨텍스트에서 실행될 수 있습니다(SWS_CANInterface 164쪽, SWS_DiagnosticCommunicationManager 274쪽). 이와 대조적으로 라우팅 결정, 버퍼 할당 또는 주기적 전송은 상위 계층의 주기적 태스크(예: SoAd_MainFunction)에서 처리됩니다(SWS_SocketAdaptor 104쪽). PduInfoType과 같은 포인터 구조체는 인터럽트 레벨과 태스크 레벨 간에 공유될 수 있으므로, 배타적 영역(동시성 보호)을 통한 스레드 안전 동기화는 호출 및 구현 BSW 모듈의 책임입니다.

일반적인 수명 주기 및 동작 모드

순수 타입 정의는 런타임 수명 주기의 적용을 받지 않으며 초기화 및 셧다운 함수를 갖지 않습니다(SWS_StandardTypes 27쪽). 이는 컴파일 시점에 모든 처리 모듈보다 먼저 정적으로 포함되어야 합니다. 그러나 다른 BSW 모듈의 수명 주기를 매핑하고 모니터링하기 위한 규범적 프레임워크를 형성합니다. 표준화된 버전 쿼리를 위해 std은 vendorID, moduleID 및 소프트웨어 버전 레벨(sw_major_version, sw_minor_version, sw_patch_version)을 포함하는 구조체 Std_VersionInfoType를 명시합니다([SWS_Std_00015]).

또한 NetworkHandleType 및 PNCHandleType과 같은 타입은 시작, 정상 작동, Sleep 및 Wakeup과 같은 작동 모드 전환 중에 상위 네트워크 및 모드 관리를 지원합니다([SWS_COMTYPE_00036], [SWS_COMTYPE_00038]). 따라서 ComM은 이러한 식별자를 기반으로 부분 네트워크 클러스터에서 조정된 셧다운 및 상태 전환을 제어합니다(SWS_COMManager 171쪽, SWS_NetworkManagementInterface 106쪽).

오류 처리, DET 트레이싱 및 상태 인코딩

모듈 클러스터는 자체적인 활성 오류 처리를 제공하지 않으며, DET에 개발 오류를 보고하거나 DEM에 프로덕션 오류를 보고하지 않습니다(SWS_StandardTypes 27쪽). 대신 플랫폼 전반의 피드백 형식을 표준화합니다. 기본 타입 Std_ReturnType은 uint8를 기반으로 하며 모든 계층에 걸쳐 동기식 호출의 표준 결과로 사용됩니다([SWS_Std_00005], BSWUMLModelModelingGuide 28쪽). 기본적으로 E_OK(0x00u)는 성공적인 실행을 나타내고 E_NOT_OK(0x01u)은 일반 오류를 나타냅니다([SWS_Std_00006]). ISO 17356-3(OSEK OS)과의 호환성을 위해 E_OK은 보호 검사(STATUSTYPEDEFINED)를 통해 중복 정의로부터 보호됩니다(AUTOSAR_SRS_BSWGeneral 62쪽).

Std_ReturnType의 비트 레이아웃은 고정 정의된 파티셔닝을 따릅니다. 비트 0~5(범위 0x00~0x3F)는 클라이언트/서버 작업에서 표준화된 모듈별 반환 값 또는 애플리케이션별 ApplicationError 코드용으로 예약되어 있습니다([SWS_Std_00011], AUTOSAR_CP_SWS_StandardTypes 15쪽). 모듈별 확장은 UML 모델에서 스테레오타입 «extra_literals»를 갖는 클래스로 관리됩니다(BSWUMLModelModelingGuide 33쪽). 비트 6과 7(값 범위 0x40, 0x80, 0xC0)은 RTE의 인프라 오류 상태 전용으로 엄격히 예약되어 있습니다(AUTOSAR_CP_SWS_StandardTypes 15쪽). RTE의 데이터 변환을 위해 std은 errorCode([SWS_Std_00022]) 및 transformerClass([SWS_Std_00021])로 구성된 구조체 Std_TransformerError을 추가로 선언하여 직렬화 또는 E2E 보호 시 오류 체인을 완벽하게 추적할 수 있도록 합니다.

본 가이드는 StandardTypes, PlatformTypes 및 CommunicationStackTypes에 대한 AUTOSAR Classic Platform Release R20-11의 규범적 사양을 기반으로 합니다.

ComStack

Variables of this type shall be used to store the result of a buffer request.

typedef enum { BUFREQ_OK, BUFREQ_E_NOT_OK, BUFREQ_E_BUSY, BUFREQ_E_OVFL } BufReq_ReturnType;

Variables of the type Network Handle Type shall be used to store the identifier of a communication channel.

PduIdType 타입

This type is used within the entire AUTOSAR Com Stack except for bus drivers.

typedef uint16 PduIdType;

Variables of this type shall be used to store the basic information about a PDU of any type, namely a pointer variable pointing to its SDU (payload), a pointer to Meta Data of the PDU, and the corresponding length of the SDU in byt es.

typedef struct { uint8* SduDataPtr; uint8* MetaDataPtr; PduLengthType SduLength; } PduInfoType;

This type shall be used within the entire AUTOSAR Com Stack of an ECU except for bus drivers.

Used to store the identifier of a partial network cluster.

Variables of this type shall be used to store the information about Tp buffer handling.

typedef struct { TpDataStateType TpDataState; PduLengthType TxTpDataCnt; } RetryInfoType;

Variables of this type shall be used to store the state of TP buffer.

typedef enum { TP_DATACONF, TP_DATARETRY, TP_CONFPENDING } TpDataStateType;

Specify the parameter to which the value has to be changed (BS or STmin).

typedef enum { TP_STMIN, TP_BS, TP_BC } TPParameterType;

Platform

boolean 타입

This standard AUTOSAR type shall only be used together with the definitions TRUE and FALSE.

typedef unsigned char boolean;

This standard AUTOSAR type shall be a void pointer to const. Note: This type shall be used for buffers that are passed to the callee.

typedef const void* ConstVoidPtr;

This symbol shall be defined as #define having one of the values MSB_FIRST or LSB_FIRST according to the platform.

This symbol shall be defined as #define having one of the values HIGH_BYTE_FIRST or LOW_ BYTE_FIRST according to the platform.

CPU_TYPE 타입

This symbol shall be defined as #define having one of the values CPU_TYPE_8, CPU_TYPE_16, CPU_TYPE_32 or CPU_TYPE_64 according to the platform.

float32 타입

This standard AUTOSAR type shall follow the 32-bit binary interchange format according to IEEE 754-2008 with encoding parameters specified in chapter 3.6, table 3.5, column "binary32".

typedef float float32;
float64 타입

This standard AUTOSAR type shall follow the 64-bit binary interchange format according to IEEE 754-2008 with encoding parameters specified in chapter 3.6, table 3.5, column "binary64".

typedef double float64;
sint16 타입

This standard AUTOSAR type shall be of 16 bit signed.

typedef signed short sint16;

This optimized AUTOSAR type shall be at least 16 bit signed.

typedef signed int sint16_least;
sint32 타입

This standard AUTOSAR type shall be 32 bit signed.

typedef signed long sint32;

This optimized AUTOSAR type shall be at least 32 bit signed.

typedef signed int sint32_least;
sint64 타입

This standard AUTOSAR type shall be 64 bit signed.

typedef signed long long sint64;
sint8 타입

This standard AUTOSAR type shall be of 8 bit signed.

typedef signed char sint8;

This optimized AUTOSAR type shall be at least 8 bit signed.

typedef signed int sint8_least;
TRUE_FALSE 타입

The symbols TRUE and FALSE shall be defined as follows: #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif

uint16 타입

This standard AUTOSAR type shall be of 16 bit unsigned.

typedef unsigned short uint16;

This optimized AUTOSAR type shall be at least 16 bit unsigned.

typedef unsigned int uint16_least;
uint32 타입

This standard AUTOSAR type shall be 32 bit unsigned.

typedef unsigned long uint32;

This optimized AUTOSAR type shall be at least 32 bit unsigned.

typedef unsigned int uint32_least;
uint64 타입

This standard AUTOSAR type shall be 64 bit unsigned.

typedef unsigned long long uint64;
uint8 타입

This standard AUTOSAR type shall be of 8 bit unsigned.

typedef unsigned char uint8;

This optimized AUTOSAR type shall be at least 8 bit unsigned.

typedef unsigned int uint8_least;
VoidPtr 타입

This standard AUTOSAR type shall be a void pointer Note: This type shall be used for buffers that contain data returned to the caller.

typedef void* VoidPtr;

Std

Because E_ OK is already defined within OSEK, the symbol E_ OK has to be shared. To avoid name clashes and redefinition problems, the symbols have to be defined in the following way (approved within implementation): #ifndef STATUSTYPEDEFINED #define STATUSTYPEDEFINED #define E_ OK 0x00u typedef unsigned char Status Type; /* OSEK compliance */ #endif #define E_ NOT_ OK 0x01u

#define E_OK 0x00u #define E_NOT_OK 0x01u

The symbols STD_ ACTIVE and STD_ IDLE shall be defined as follows: #define STD_ ACTIVE 0x01u /* Logical state active */ #define STD_ IDLE 0x00u /* Logical state idle */

#define STD_ACTIVE 0x01u #define STD_IDLE 0x00u

Type for the function pointer to extract the relevant protocol header fields of the message and the type of the message result of a transformer. - At the time being, this is limited to the types used for C/ S communication (i.e., REQUE ST and RESPONSE and OK and ERROR).

typedef Std_ReturnType (* Std_ExtractProtocolHeaderFieldsType)(const uint8* buffer, uint32 bufferLength, Std_MessageTypeType* messageType, Std_MessageResultType* messageResult);

The symbols STD_ HIGH and STD_ LOW shall be defined as follows: #define STD_ HIGH 0x01u /* Physical state 5V or 3.3V */ #define STD_ LOW 0x00u /* Physical state 0V */

#define STD_HIGH 0x01u #define STD_LOW 0x00u

This type is used to encode different types of results for response messages. - Currently this encoding is limited to the distinction between OK and ERROR responses.

This type is used to encode the different type of messages. - Currently this encoding is limited to the distinction between requests and responses in C/ S c ommunication.

The symbols STD_ ON and STD_ OFF shall be defined as follows: #define STD_ ON 0x01u #define STD_ OFF 0x00u

#define STD_ON 0x01u #define STD_OFF 0x00u

This type can be used as standard API return type which is shared between the RTE and the BSW modules. It shall be defined as follows: typedef uint8 Std_ Return Type;

- Tags: atp.Status=draft

- Tags: atp.Status=draft

This type shall be used to request the version of a BSW module using the _ Get Version Info() function.

typedef struct { uint16 vendorID; uint16 moduleID; uint8 sw_major_version; uint8 sw_minor_version; uint8 sw_patch_version; } Std_VersionInfoType;

Module im Cluster

Compiler Abstraction (Compiler)

AUTOSAR Classic Special Files-Modul Compiler Abstraction (Compiler, Spezifikation: AUTOSAR_SWS_CompilerAbstraction.pdf).

BSW ID 198 Keine C-API · 35 Anforderungen #include "Compiler.h"

Communication Stack Types (ComStack_Types)

Standardized types, PDU identifiers, lengths, and buffer request types (PduIdType, PduLengthType, PduInfoType, BufReq_ReturnType) used across all communication layers.

BSW ID 196 9 APIs (0 Funktionen, 9 Typen) #include "ComStack_Types.h"

Memory Mapping (MemMap)

AUTOSAR Classic Special Files-Modul Memory Mapping (MemMap, Spezifikation: AUTOSAR_CP_SWS_MemoryMapping.pdf, AUTOSAR_SWS_MemoryMapping.pdf).

BSW ID 195 Keine C-API · 32 Anforderungen #include "MemMap.h"

Platform Types (Platform_Types)

Platform-specific fundamental data types (integers, booleans, floating-point numbers) mapped to CPU architecture primitives.

BSW ID 199 23 APIs (0 Funktionen, 23 Typen) #include "Platform_Types.h"

Standard Types (Std_Types)

Standard types, return codes (Std_ReturnType, E_OK, E_NOT_OK), version info structures, and error codes shared across the entire AUTOSAR architecture.

BSW ID 197 13 APIs (0 Funktionen, 13 Typen) #include "Std_Types.h"