DEENESPTFRRUARHIKOZHNL

AUTOSAR COM

ModulCom (AUTOSAR COM)
BSW-Modul-ID50
Standard-Header#include "Com.h"
SWS-SpezifikationAUTOSAR_SWS_COM.pdf
ClusterCommunication Services

Guia do móduloGERADO POR IA

Mapeia sinais da RTE para I-PDUs e controla sua transmissão, recepção e monitoramento por meio do PDU Router.
GERADO POR IA não revisado Modelo: claude-opus-5-5 · Esforço: high · Temperatura: não controlável · Prompt: 8d7d9ac9befb Procedência Perguntas em aberto (3)
Âncora causal: R20-11 Válido a partir de R20-11 Sintetizado para esta versão de especificação.
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Mapeia sinais da RTE para I-PDUs e controla sua transmissão, recepção e monitoramento por meio do PDU Router.

O COM empacota sinais e grupos de sinais da RTE em I-PDUs e os transfere exclusivamente através do PDU Router para o barramento. Em sentido inverso, desempacota I-PDUs recebidas de Com_RxIndication e notifica a RTE [SWS_Com_00123]. O envio ocorre de acordo com modos de transmissão configurados, sendo que as parcelas cíclicas são assumidas por Com_MainFunctionTx. A comunicação só ocorre para I-PDUs cujo grupo de I-PDUs foi iniciado, tipicamente pelo BswM [SWS_Com_91001]. Grupos parados resultam em COM_SERVICE_NOT_AVAILABLE; confirmações ausentes são detetadas pelo monitoramento de deadline.

O COM intermedeia entre a RTE orientada a sinais e a pilha de comunicação orientada a I-PDUs. A RTE escreve sinais com Com_SendSignal e grupos de sinais com Com_SendSignalGroup [SWS_Com_00197] [SWS_Com_00200]. A leitura é realizada através das respetivas APIs de receção [SWS_Com_00198]. Para baixo, o PDU Router é a única interface (RS COM p. 12). O PduR chama Com_RxIndication, Com_TxConfirmation e Com_TriggerTransmit [SWS_Com_00123] [SWS_Com_00124] [SWS_Com_00001].

kontext swc SW-Cs rte RTE (inkl. Transformer-Kette) swc->rte Rte_Write / Rte_Read com Com (Signale, Signalgruppen, I-PDUs, Signal-Gateway) rte->com Com_SendSignal / Com_SendSignalGroup(Array) Com_ReceiveSignal / Com_ReceiveSignalGroup(Array) bswm BswM bswm->com Com_IpduGroupStart / Com_IpduGroupStop Com_EnableReceptionDM / Com_DisableReceptionDM Com_SwitchIpduTxMode, Com_TriggerIPDUSend j1939rm J1939Rm j1939rm->com Com_TriggerIPDUSendWithMetaData com->rte Notifications (Rte_COMCbk_<signal>, Rte_COMCbkTAck_<signal>) det DET com->det Det_ReportError Det_ReportRuntimeError pdur PduR com->pdur PduR_ComTransmit pdur->com Com_RxIndication, Com_TxConfirmation, Com_TriggerTransmit pdur->com Com_StartOfReception, Com_CopyRxData, Com_TpRxIndication, Com_CopyTxData, Com_TpTxConfirmation ifmod CanIf / LinIf / FrIf pdur->ifmod <Lo>_Transmit tpmod CanTp / FrTp pdur->tpmod <LoTp>_Transmit ifmod->pdur RxIndication, TxConfirmation, TriggerTransmit tpmod->pdur StartOfReception, CopyRxData/CopyTxData, TpRxIndication/TpTxConfirmation

Diagrama de contexto: integração do COM entre a RTE, o BswM, o J1939Rm e o PduR. Fontes: SWS PduR p. 24, SWS BswM p. 93

Após Com_Init, a comunicação inter-ECU ainda não está liberada [SWS_Com_00432]. A liberação ocorre através de grupos de I-PDUs, controlados na sua maioria pelo BswM com Com_IpduGroupStart e Com_IpduGroupStop [SWS_Com_91001] [SWS_Com_91002]. Uma I-PDU está ativa enquanto pelo menos um dos seus grupos estiver iniciado [SWS_Com_00771]. Ao parar, o COM descarta solicitações de envio pendentes [SWS_Com_00777].

No envio, a Transmission Mode Selection escolhe entre dois modos configurados (TPS SystemTemplate p. 274). As parcelas cíclicas são assumidas por Com_MainFunctionTx [SWS_Com_00399]. No CAN a transferência é direta; no FlexRay, o FrIf obtém os dados via TriggerTransmit (SWS PduR p. 101). Na receção, o COM descarta sinais com o update-bit não definido, bem como grupos de sinais inteiros caso um sinal de grupo seja filtrado [SWS_Com_00802] [SWS_Com_00836]. Para cadeias de transformadores existe o acesso por array através de Com_SendSignalGroupArray [SWS_Com_00851].

Signalgruppe senden: CAN direkt, FlexRay per TriggerTransmitRTEComPduRCanIfFrIfUse Case: Signalgruppe aktualisierenlooppara cada sinal de grupoCom_SendSignal(SignalId, SignalDataPtr)Com_SendSignalGroup(SignalGroupId)Update-Bit setzen,Transmission Mode SelectionMomento de disparo de PduR_ComTransmit conforme o modo de transmissãodiretamente ou em Com_MainFunctionTx (interpretação)altCAN: transmissão diretaPduR_ComTransmit(TxPduId, PduInfoPtr)CanIf_Transmit(TxPduId, PduInfoPtr)PduR_CanIfTxConfirmation(TxPduId, result)Com_TxConfirmation(TxPduId, result)FlexRay: TriggerTransmitPduR_ComTransmit(TxPduId, PduInfoPtr)FrIf_Transmit(TxPduId, PduInfoPtr)Flag setzen, Sendeslot abwartenPduR_FrIfTriggerTransmit(TxPduId, PduInfoPtr)Com_TriggerTransmit(TxPduId, PduInfoPtr)copiar I-PDU para SduDataPtrE_OKPduR_FrIfTxConfirmation(TxPduId, result)Com_TxConfirmation(TxPduId, result)Sende-Deadline-Timer abbrechenRte_COMCbkTAck_<signal>()(IMMEDIATE imediatamente, DEFERRED mais tarde)

Diagrama de sequência: envio de grupo de sinais via CAN (direto) ou FlexRay (TriggerTransmit), seguido de confirmação à RTE. Fontes: SWS COM p. 87, SWS RTE p. 329

Em caso de erro, aplica-se o seguinte:

  • Erros de desenvolvimento como COM_E_UNINIT ou COM_E_PARAM_POINTER são enviados para o DET [SWS_Com_00442] [SWS_Com_00804].
  • Com o grupo parado, as APIs retornam COM_SERVICE_NOT_AVAILABLE [SWS_Com_00865].
  • Se uma confirmação de envio não ocorrer, o monitoramento de deadline de envio reporta este facto através de ComTimeoutNotification [SWS_Com_00304].

Papel do COM entre a RTE e o PDU Router

O módulo AUTOSAR COM intermedeia entre a visão orientada a sinais da RTE e a visão orientada a I-PDUs da pilha de comunicação. Sinais e grupos de sinais são inseridos em I-PDUs através de Com_SendSignal e Com_SendSignalGroup [SWS_Com_00197] [SWS_Com_00200]. Com Com_ReceiveSignal e Com_ReceiveSignalGroup são lidos novamente [SWS_Com_00198] [SWS_Com_00201]. Para baixo, o PDU Router é a única interface do COM (RS COM p. 12). O COM chama ali PduR_ComTransmit [SWS_Com_00669]. Em sentido inverso, o COM disponibiliza ao PduR os callbacks Com_RxIndication, Com_TxConfirmation e Com_TriggerTransmit [SWS_Com_00123] [SWS_Com_00124] [SWS_Com_00001]. O PduR converte os IDs de I-PDU entre o módulo de origem e o de destino (SWS PduR p. 33).

Além da RTE, outros módulos do software básico utilizam as interfaces do COM:

  • O BswM controla os grupos de I-PDUs, o monitoramento de deadline de receção e os modos de transmissão através de interfaces opcionais (SWS BswM p. 93).
  • O J1939Rm dispara I-PDUs específicas através de Com_TriggerIPDUSendWithMetaData [SWS_Com_00858] (SWS J1939Rm p. 62).
  • O COM reporta erros ao DET [SWS_Com_00670].
kontext swc SW-Cs rte RTE (inkl. Transformer-Kette) swc->rte Rte_Write / Rte_Read com Com (Signale, Signalgruppen, I-PDUs, Signal-Gateway) rte->com Com_SendSignal / Com_SendSignalGroup(Array) Com_ReceiveSignal / Com_ReceiveSignalGroup(Array) bswm BswM bswm->com Com_IpduGroupStart / Com_IpduGroupStop Com_EnableReceptionDM / Com_DisableReceptionDM Com_SwitchIpduTxMode, Com_TriggerIPDUSend j1939rm J1939Rm j1939rm->com Com_TriggerIPDUSendWithMetaData com->rte Notifications (Rte_COMCbk_<signal>, Rte_COMCbkTAck_<signal>) det DET com->det Det_ReportError Det_ReportRuntimeError pdur PduR com->pdur PduR_ComTransmit pdur->com Com_RxIndication, Com_TxConfirmation, Com_TriggerTransmit pdur->com Com_StartOfReception, Com_CopyRxData, Com_TpRxIndication, Com_CopyTxData, Com_TpTxConfirmation ifmod CanIf / LinIf / FrIf pdur->ifmod <Lo>_Transmit tpmod CanTp / FrTp pdur->tpmod <LoTp>_Transmit ifmod->pdur RxIndication, TxConfirmation, TriggerTransmit tpmod->pdur StartOfReception, CopyRxData/CopyTxData, TpRxIndication/TpTxConfirmation

Diagrama de contexto: o COM situa-se entre a RTE, o BswM e o J1939Rm em cima e o PduR em baixo. O COM alcança os módulos de interface e TP exclusivamente através do PduR. Fontes: RS COM p. 12, SWS PduR p. 24, SWS BswM p. 93

Ciclo de vida: inicialização, grupos de I-PDUs e estado

Com_Init inicializa as interfaces e variáveis internas e externas com uma configuração do tipo Com_ConfigType. A comunicação inter-ECU ainda não está liberada depois disso [SWS_Com_00432] [SWS_Com_00825]. Com_GetStatus retorna COM_UNINIT ou COM_INIT; após um reset, aplica-se COM_UNINIT [SWS_Com_00194] [SWS_Com_00819]. Com_DeInit para todos os grupos de I-PDUs iniciados e repõe o módulo no estado não inicializado [SWS_Com_00130].

A comunicação é liberada por grupo de I-PDUs:

  • Com_IpduGroupStart inicia um grupo, opcionalmente com reinicialização dos dados da I-PDU. Com_IpduGroupStop volta a pará-lo [SWS_Com_91001] [SWS_Com_91002].
  • Uma I-PDU está ativa enquanto pelo menos um dos seus grupos estiver iniciado [SWS_Com_00771].
  • I-PDUs sem atribuição a grupo já são iniciadas por Com_Init, especificamente como com initialize = true [SWS_Com_00840].
  • Ao parar, o COM descarta solicitações de envio pendentes, incluindo repetições [SWS_Com_00777]. Confirmações de envio posteriores para a I-PDU parada são ignoradas pelo COM [SWS_Com_00800].

Tipicamente, o BswM comuta os grupos através da ação BswMPduGroupSwitch. O seu parâmetro BswMPduGroupSwitchReinit corresponde ao argumento initialize (SWS BswM p. 165). A parcela de envio cíclica inicia-se após o timeOffset configurado a partir de Com_IpduGroupStart (TPS SystemTemplate p. 268).

lebenszyklus cluster_init COM_INIT (Zustand je I-PDU) start Reset uninit COM_UNINIT start->uninit valor padrão após reset gestoppt I-PDU gestoppt uninit->gestoppt Com_Init(config): I-PDU com atribuição de grupo gestartet I-PDU iniciada (pelo menos um de seus grupos de I-PDU ativo) uninit->gestartet Com_Init(config): I-PDU sem grupo (como iniciar com initialize = true) gestoppt->uninit Com_DeInit() gestoppt->gestartet Com_IpduGroupStart(IpduGroupId, initialize) gestartet->uninit Com_DeInit(): todos os grupos parados gestartet->gestoppt Com_IpduGroupStop do último grupo ativo: solicitações de transmissão pendentes descartadas

Diagrama de estados: estado do módulo e ativação de uma I-PDU através dos seus grupos de I-PDUs. Fontes: [SWS_Com_00432] [SWS_Com_00130] [SWS_Com_00771] [SWS_Com_00840] [SWS_Com_00777]

Envio: do sinal à I-PDU no barramento

Com_SendSignal opera de forma assíncrona [SWS_Com_00197]. Para dados a transferir atomicamente, a RTE procede em duas etapas: primeiro, escreve todos os sinais de grupo com Com_SendSignal. Em seguida, aciona a transmissão do grupo com Com_SendSignalGroup (SWS RTE p. 329). O COM define, nesse processo, o update-bit do grupo [SWS_Com_00801].

O momento e a frequência de envio de uma I-PDU são determinados pelos modos de transmissão:

Com_MainFunctionTx assume todas as atividades de envio que não são executadas diretamente nas funções chamadas pela RTE [SWS_Com_00399]. Se estiver configurada uma ComPreparationNotification, ela chama Com_CbkTxPrep antes do processamento da I-PDU [SWS_Com_00886] [SWS_Com_91013]. Um Com_TxIpduCallout pode impedir o processamento posterior de uma I-PDU com false [SWS_Com_00346].

O procedimento difere consoante o sistema de barramento:

  • CAN: A I-PDU é transferida diretamente via PduR_ComTransmit.
  • FlexRay: Após PduR_ComTransmit, o FrIf só obtém os dados no slot de envio via Com_TriggerTransmit (SWS PduR p. 101).
  • LIN: Quadros que não sejam Sporadic Frames são obtidos exclusivamente via TriggerTransmit de acordo com o schedule (SWS PduR p. 88).

Com_TriggerTransmit não copia nada e retorna E_NOT_OK se o buffer disponibilizado for demasiado pequeno ou se a I-PDU estiver parada [SWS_Com_00869] [SWS_Com_00884]. Com Com_TxConfirmation, o COM cancela os temporizadores de deadline de envio em curso [SWS_Com_00880]. Além disso, reporta cada envio bem-sucedido através da notificação configurada [SWS_Com_00883]. Com processamento IMMEDIATE, isto ocorre imediatamente; com DEFERRED, ocorre de forma diferida através de uma flag (SWS COM p. 91).

Signalgruppe senden: CAN direkt, FlexRay per TriggerTransmitRTEComPduRCanIfFrIfUse Case: Signalgruppe aktualisierenlooppara cada sinal de grupoCom_SendSignal(SignalId, SignalDataPtr)Com_SendSignalGroup(SignalGroupId)Update-Bit setzen,Transmission Mode SelectionMomento de disparo de PduR_ComTransmit conforme o modo de transmissãodiretamente ou em Com_MainFunctionTx (interpretação)altCAN: transmissão diretaPduR_ComTransmit(TxPduId, PduInfoPtr)CanIf_Transmit(TxPduId, PduInfoPtr)PduR_CanIfTxConfirmation(TxPduId, result)Com_TxConfirmation(TxPduId, result)FlexRay: TriggerTransmitPduR_ComTransmit(TxPduId, PduInfoPtr)FrIf_Transmit(TxPduId, PduInfoPtr)Flag setzen, Sendeslot abwartenPduR_FrIfTriggerTransmit(TxPduId, PduInfoPtr)Com_TriggerTransmit(TxPduId, PduInfoPtr)copiar I-PDU para SduDataPtrE_OKPduR_FrIfTxConfirmation(TxPduId, result)Com_TxConfirmation(TxPduId, result)Sende-Deadline-Timer abbrechenRte_COMCbkTAck_<signal>()(IMMEDIATE imediatamente, DEFERRED mais tarde)

Diagrama de sequência: envio de grupo de sinais, transferência para CAN (direto) ou FlexRay (TriggerTransmit) e subsequente confirmação. Fontes: SWS COM p. 87, SWS PduR p. 101, SWS RTE p. 329, [SWS_Com_00880]

Receção: indicação, desempacotamento e notificação

O PduR chama Com_RxIndication com o ID da I-PDU, o comprimento, o ponteiro de dados e os MetaData [SWS_Com_00123]. O caminho é o mesmo para CanIf, FrIf e LinIf; o PduR não efetua buffering neste processo (SWS PduR p. 97). Subsequentemente, a I-PDU passa pelas seguintes verificações:

  • Um Com_RxIpduCallout configurado é sempre chamado, nomeadamente antes do tratamento do contador e com a I-PDU completa [SWS_Com_00889] [SWS_Com_00816]. Se retornar false, a I-PDU não continua a ser processada [SWS_Com_00700].
  • O COM descarta sinais com o update-bit não definido [SWS_Com_00802].
  • Se o update-bit estiver ausente por a I-PDU recebida ser mais curta do que o esperado, considera-se como definido [SWS_Com_00794].
  • Se o COM filtrar um sinal de grupo, descarta todo o grupo de sinais [SWS_Com_00836].
rx_verarbeitung start Com_RxIndication(RxPduId, PduInfoPtr) callout Com_RxIpduCallout configurado? Chamada com I-PDU completa start->callout verwerfen_pdu não processar a I-PDU adiante callout->verwerfen_pdu retorno false zaehler tratamento de contador de I-PDU (em caso de discrepância Com_CbkCounterErr) callout->zaehler true / kein Callout update Update-Bit gesetzt? zaehler->update verwerfen_sig Signal verwerfen update->verwerfen_sig não filter grupo de sinais: todos os sinais de grupo passam no filtro? update->filter sim, ou bit não recebido devido a I-PDU mais curta verwerfen_grp ganze Signalgruppe verwerfen filter->verwerfen_grp não speichern assumir valor filter->speichern sim (ou sinal individual) modus tipo de processamento da I-PDU? speichern->modus sofort Notification sofort an RTE modus->sofort IMMEDIATE spaeter definir flag, notificação mais tarde modus->spaeter DEFERRED

Diagrama de atividades: decisões no processamento de uma I-PDU recebida até à notificação. Fontes: [SWS_Com_00889] [SWS_Com_00700] [SWS_Com_00802] [SWS_Com_00794] [SWS_Com_00836] [SWS_Com_00726]; a ordem update-bit antes do filtro é uma interpretação.

A forma como o COM notifica a RTE depende do modo de processamento. Com IMMEDIATE, o COM chama os callbacks da RTE diretamente no contexto da indicação. Com DEFERRED, o COM inicialmente apenas define uma flag e copia os dados (SWS COM p. 92). A verificação desta flag deverá ocorrer em Com_MainFunctionRx, que assume o processamento de receção não realizado diretamente em Com_RxIndication [SWS_Com_00398]. No caso de grupos de sinais, o COM só informa quando todos os sinais de grupo estiverem desempacotados. A RTE chama então exatamente uma vez Com_ReceiveSignalGroup e, em seguida, Com_ReceiveSignal para cada sinal de grupo (SWS RTE p. 329). O COM armazena os MetaData recebidos para a RTE [SWS_Com_00888]. Pergunta Q-b13cce4402c7b858 (aberta)

Recepção de uma I-PDU com grupo de sinaisCanIf / LinIf / FrIfPduRComRTEPduR_<User:Lo>RxIndication(RxPduId, PduInfoPtr)Com_RxIndication(RxPduId, PduInfoPtr)callout, contadores, bits de atualização, filtrosaltIMMEDIATEassumir sinaisRte_COMCbk_signalX()Rte_COMCbk_signalY()DEFERREDFlag setzen, Daten kopierenmais tarde, provavelmente em Com_MainFunctionRx:verificar flagRte_COMCbk_signalX() (falls Flag gesetzt)Use Case: coleta pela RTECom_ReceiveSignalGroup(SignalGroupId)E_OKlooppara cada sinal de grupoCom_ReceiveSignal(SignalId, SignalDataPtr)E_OK

Diagrama de sequência: indicação pelo PduR, notificação IMMEDIATE versus DEFERRED e obtenção do grupo de sinais pela RTE. Fontes: SWS COM p. 92, SWS RTE p. 329, [SWS_Com_00123]

I-PDUs grandes, arrays de grupos de sinais e metadados

I-PDUs grandes são transmitidas através de protocolos de transporte. Para esse efeito, o COM disponibiliza uma interface TP própria que é compatível com a interface TP superior do PduR (SWS PduR p. 24):

Para a operação com TP aplicam-se algumas regras especiais:

  • Com TpSduLength = 0, o COM reporta o comprimento máximo configurado [SWS_Com_00874].
  • Se uma I-PDU grande for disparada novamente enquanto ainda estiver a ser transmitida, o COM descarta a solicitação adicional [SWS_Com_00863].
  • Se Com_TriggerIPDUSend disparar um envio enquanto o buffer estiver bloqueado, o COM regista a solicitação e envia mais tarde [SWS_Com_00867].
Recepção segmentada de uma I-PDU grande (simplificada, sem SecOC)CanTpPduRComPduR_CanTpStartOfReception(...)Com_StartOfReception(id, info, TpSduLength, bufferSizePtr)BUFREQ_OK, buffer disponívelloopaté que todos os dados sejam copiadosPduR_CanTpCopyRxData(...)Com_CopyRxData(id, info, bufferSizePtr)BUFREQ_OKPduR_CanTpRxIndication(id, result)Com_TpRxIndication(id, result)altresult = E_OKprocessar sinais da I-PDU granderesult = E_NOT_OKComDataInvalidAction para todos ossinais e grupos de sinais

Diagrama de sequência: receção segmentada de uma I-PDU grande via CanTp e PduR, simplificada sem SecOC. Fontes: SWS SecOC p. 111, [SWS_Com_00691] [SWS_Com_00692] [SWS_Com_00650] [SWS_Com_00838]

Para cadeias de transformadores, a RTE acede a grupos de sinais como byte array. Para esse efeito existem Com_SendSignalGroupArray e Com_ReceiveSignalGroupArray [SWS_Com_00851] [SWS_Com_00854]. As regras correspondentes:

  • Extensão do array: Inicia-se no byte offset do sinal de grupo com o menor ComBitPosition. Termina no último byte do sinal de grupo com o maior ComBitPosition [SWS_Com_00844] [SWS_Com_00845].
  • Processamento: No envio, o COM trata a chamada no que diz respeito às propriedades de transferência e à Transmission Mode Selection tal como Com_SendSignalGroup [SWS_Com_00847]. É suportado apenas um conjunto restrito de filtros [SWS_Com_00848].
  • Pré-requisitos: Os dados têm de ter tamanho fixo, estar mapeados com alinhamento por byte e não podem conter sinais externos [SWS_Com_00841]. Para estes grupos, as APIs de sinal individual e de grupo não são permitidas [SWS_Com_00843].

O COM Based Transformer serializa os dados exatamente da mesma forma como o próprio COM o faria. Transformadores adicionais acrescentam em seguida o CRC e o contador de sequência (SWS ComXf p. 14, EXP LSA p. 103).

Transmissão transformada via Com_SendSignalGroupArraySW-CRTECOM Based Transformerweitere Transformer (z. B. E2E)ComRte_Write_<p>_<d>(x, y, z)serializar conforme a matriz de comunicaçãoarray de uint8 (ordenação de bytes, sinal como COM)adicionar CRC e contador sequencialerweitertes uint8-ArrayCom_SendSignalGroupArray(SignalGroupId, SignalGroupArrayPtr)Array ab Startposition (kleinste ComBitPosition)copiar para a I-PDUTransmission Mode Selectioncomo em Com_SendSignalGroupE_OK

Diagrama de sequência: a RTE executa a cadeia de transformadores e transfere o resultado com uma única chamada de Com_SendSignalGroupArray. Fontes: SWS ComXf p. 14, [SWS_Com_00846] [SWS_Com_00847]

Os MetaData de uma I-PDU de envio têm origem na última transferência pela RTE ou, se não existir nenhuma, em ComMetaDataDefault. MetaData transferidos com Com_TriggerIPDUSendWithMetaData aplicam-se apenas ao envio disparado por este meio [SWS_Com_00887] [SWS_Com_00862].

Configuração, agendamento e gateway de sinais

O COM possui três tipos de Main Functions: Com_MainFunctionRx, Com_MainFunctionTx e Com_MainFunctionRouteSignals. Cada uma pode ser instanciada múltiplas vezes e é reentrante para diferentes instâncias [SWS_Com_00398] [SWS_Com_00399] [SWS_Com_00400]. São chamadas sem parâmetros pelo BSW Scheduler (SWS BSWGeneral p. 79). Os seus períodos são descritos pela EcuInstance através de comConfigurationRxTimeBase, comConfigurationTxTimeBase e comConfigurationGwTimeBase (TR Interoperability p. 98). A respetiva notificação Rte_COMCbkTxPrep_<mn> está vinculada a uma instância específica de Com_MainFunctionTx (SWS RTE p. 832).

O gateway de sinais é parte integrante do COM (SRS Gateway p. 11). Ele encaminha sinais recebidos em Com_MainFunctionRouteSignals [SWS_Com_00400]. Neste processo, percorre etapas de processamento definidas no lado da receção e do envio [SWS_Com_00872] [SWS_Com_00873]. Também pode mapear sinais de grupo individuais para sinais autónomos [SWS_Com_00833].

A configuração está sujeita a várias condições limite:

  • São suportados os tipos de dados de [SWS_Com_00675]. Sinais do tipo UINT8_N e UINT8_DYN têm de estar alinhados por byte [SWS_Com_00105].
  • Todas as I-PDUs de um grupo possuem a mesma direção [SWS_Com_00871].
  • Se estiver configurado um valor de Invalid para um sinal de receção, tem também de estar configurada uma ComDataInvalidAction [SWS_Com_00859].

IDs de sinal, de grupo e de grupo de I-PDUs são valores de uint16 baseados em zero [SWS_Com_00820] [SWS_Com_00821] [SWS_Com_00822]. Os seus nomes simbólicos têm origem em ComHandleId (TPS ECUConfiguration p. 138).

Comportamento em caso de erro

O COM reporta erros de desenvolvimento através de Det_ReportError com o ModuleId 50 [SWS_Com_00442]. Estão definidos:

  • COM_E_PARAM para parâmetros incorretos [SWS_Com_00803].
  • COM_E_UNINIT para chamadas antes de Com_Init ou após Com_DeInit. Excluem-se funções de estado, de versão e Main Functions [SWS_Com_00804].
  • COM_E_PARAM_POINTER para ponteiros nulos [SWS_Com_00805].
  • COM_E_INIT_FAILED para uma seleção de configuração inválida [SWS_Com_00837].
  • Como erro de tempo de execução COM_E_SKIPPED_TRANSMISSION para solicitações de transmissão descartadas [SWS_Com_00864].

As APIs de sinal retornam COM_SERVICE_NOT_AVAILABLE se o grupo de I-PDUs estiver parado ou se houver um erro de desenvolvimento [SWS_Com_00865]. Ainda assim, Com_ReceiveSignalGroupArray copia os dados conhecidos mais recentes [SWS_Com_00857].

Para o monitoramento de prazo limite (deadline monitoring) de transmissão aplica-se:

  • O temporizador inicia quando um sinal vai para a camada inferior. Na primeira vez, ele é carregado com ComFirstTimeout e, posteriormente, com ComTimeout [SWS_Com_00878] [SWS_Com_00879].
  • Se ele expirar, o COM chama o ComTimeoutNotification [SWS_Com_00304].
  • No modo de transmissão NONE, o monitoramento fica desativado [SWS_Com_00835].

No lado da recepção existem os seguintes mecanismos:

tx_dm inaktiv temporizador não iniciado laeuft temporizador em execução inaktiv->laeuft sinal/grupo na I-PDU para camada inferior: primeira inicialização com ComFirstTimeout, caso contrário ComTimeout deaktiviert monitoramento desativado (modo de transmissão NONE ativo) inaktiv->deaktiviert Wechsel in Modus NONE laeuft->inaktiv Com_TxConfirmation: Timer abgebrochen laeuft->laeuft retransmissão: o temporizador continua em execução abgelaufen Timer abgelaufen: ComTimeoutNotification aufgerufen laeuft->abgelaufen nenhuma confirmação a tempo abgelaufen->laeuft retransmissão: início com ComTimeout deaktiviert->inaktiv Wechsel in anderen Modus

Diagrama de estados: Ciclo de vida de um temporizador de prazo limite de transmissão. Fontes: [SWS_Com_00878] [SWS_Com_00879] [SWS_Com_00880] [SWS_Com_00304] [SWS_Com_00835]

Evidências mais detalhadas

Guia gerado por IA com base nos requisitos (R20-11) e passagens de documentos contidos no payload. Apenas os requisitos com links são normativos. Afirmações identificadas como interpretação não são totalmente comprovadas pelas fontes.

AUTOSAR COM

The AUTOSAR COM module provides signal-based communication services for inter-ECU exchange across diverse bus systems.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

função Com_Init [SWS_Com_00432] 📄 PDF

void Com_Init (const Com_ConfigType* config);

This service initializes internal and external interfaces and variables of the AUTO- SAR COM module layer for the further processing. After calling this function the inter - ECU communication is still disabled. In configurations, in which Com is assigned to mo re than one partition (i.e. Com_ Main Functions are mapped to partitions), Com may provide one init function per AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM partition.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: a9d5c039e92f Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

A função Com_Init inicializa as interfaces internas e externas, bem como as variáveis da camada AUTOSAR COM para o processamento subsequente ([SWS_Com_00432]). A chamada ocorre de forma síncrona e não é reentrante (Non Reentrant) ([SWS_Com_00432]). Como parâmetro de passagem, config serve como um ponteiro para os dados de configuração do módulo COM (const Com_ConfigType* config); não existe um valor de retorno ([SWS_Com_00432]). Em configurações multipartição, nas quais funções principais do módulo COM são atribuídas a várias partições, o COM pode fornecer uma função de inicialização própria por partição ([SWS_Com_00432]).

Condições de precedência e tratamento de erros

A inicialização por meio de Com_Init é o pré-requisito funcional para o uso regular das interfaces COM: se um serviço de API for chamado antes de Com_Init ou após uma chamada de Com_DeInit, o código de erro COM_E_UNINIT (0x02) é gerado ([SWS_Com_00804]). Estão excluídas dessa verificação de erros exclusivamente as chamadas de Com_GetStatus, Com_GetVersionInfo, Com_MainFunctionRx, Com_MainFunctionTx e Com_MainFunctionRouteSignals ([SWS_Com_00804]).

Interação na inicialização de PDUs e sinais

Após a execução de Com_Init, a comunicação inter-ECU propriamente dita permanece inicialmente desativada ([SWS_Com_00432]). Interpretação: Para a operação regular de envio e recepção, uma ativação posterior dos respectivos grupos de I-PDU deve, portanto, ser necessária. Pergunta Q-8407f9a6281c3764 (aberta) No entanto, para certas estruturas de dados, Com_Init já realiza inicializações diretas:

  • Se uma I-PDU não estiver atribuída a nenhum grupo de I-PDU, o COM já inicia essa I-PDU dentro de Com_Init como se tivesse sido iniciada via Com_IpduGroupStart com o parâmetro de inicialização definido ([SWS_Com_00840]).
  • Para grupos de sinais com acesso via array configurado (ComSignalGroupArrayAccess), Com_Init inicializa a área de buffer correspondente da I-PDU com base nos valores iniciais (ComSignalInitValue) de todos os sinais de grupo contidos ([SWS_Com_00850]).

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I2)

função Init [SWS_Com_00130] 📄 PDF

void Com_DeInit (void);

This service stops the inter - ECU communication. All started I - PDU groups are stop- ped and have to be started again, if needed, after Com_ Init is called. By a call to Com_ De Init the AUTOSAR COM module is put into an not initialized state.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 15d5ebd10450 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e contexto de chamada

A função síncrona [SWS_Com_00130] (Interpretação: indicada na carga útil como 'Init', mas que especifica a assinatura void Com_DeInit(void)) termina a comunicação inter-ECU e coloca o módulo AUTOSAR COM no estado não inicializado ([SWS_Com_00130]). Pergunta Q-3e91d7d0a140cee0 (aberta) O serviço possui o Service ID 0x02, não requer parâmetros de passagem, não fornece qualquer valor de retorno e é disponibilizado através do ficheiro de cabeçalho Com.h ([SWS_Com_00130]).

Simultaneidade e restrições

No que diz respeito ao contexto de chamada, a função está definida como não reentrante (Non Reentrant) ([SWS_Com_00130]). Uma chamada paralela ou múltipla sem reinicialização prévia é, por conseguinte, inadmissível.

Zusammenspiel e ciclo de vida

Através da desinicialização, todos os grupos de I-PDU anteriormente iniciados são parados ([SWS_Com_00130]). Para um reinício posterior da comunicação, aplicam-se as seguintes condições de sequência:

  • O módulo tem de ser reinicializado através do serviço síncrono e não reentrante Com_Init com a passagem do ponteiro de configuração config ([SWS_Com_00432]).
  • Como a comunicação inter-ECU permanece desativada após a chamada de Com_Init ([SWS_Com_00432]), os grupos de I-PDU necessários têm de ser subsequentemente iniciados de novo de forma explícita ([SWS_Com_00130]).

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR CP R20-11.

Guia do implementador em breve (complexidade I1)

função Com_IpduGroupStart [SWS_Com_91001] 📄 PDF

void Com_IpduGroupStart (Com_IpduGroupIdType IpduGroupId, boolean initialize);

Starts a preconfigured I - PDU group. For example, cyclic I - PDUs will be sent out cyclically after the call of Com_ Ipdu Group Start(). If Initialize is true all I - PDUs of the I - PDU group shall be (r e - )initialized before the I - PDU group is started. That is they shall behave like after a start - up of COM, for example the old_ value of the filter ob- jects and shadow buffers of signal groups have to be (re - )initialized.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 8b6a6f2e80e0 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona Com_IpduGroupStart (Service ID 0x03, cabeçalho Com.h) serve para iniciar um grupo de I-PDU pré-configurado [SWS_Com_91001]. Após a chamada, a transmissão das I-PDUs associadas é ativada; por exemplo, I-PDUs cíclicas passam a ser enviadas ciclicamente [SWS_Com_91001].

Utilização e parâmetros

A função não possui valor de retorno e recebe dois parâmetros de entrada [SWS_Com_91001]:

  • IpduGroupId: Identificador único do grupo de I-PDU pré-configurado a ser iniciado [SWS_Com_91001].
  • initialize: Um flag booleano para solicitar a inicialização de dados das I-PDUs deste grupo antes do início [SWS_Com_91001].

Se initialize estiver definido como true, todas as I-PDUs do grupo devem ser (re)inicializadas antes do início [SWS_Com_91001]. As I-PDUs comportam-se então como imediatamente após um start-up do módulo COM [SWS_Com_91001]. Isso inclui, em particular, a reinicialização do valor anterior (old_value) de objetos de filtro, bem como dos shadow buffers para grupos de sinais [SWS_Com_91001].

Simultaneidade e restrições

Em relação à concorrência, Com_IpduGroupStart é reentrante para grupos de I-PDU diferentes, mas explicitamente não reentrante para o mesmo grupo de I-PDU [SWS_Com_91001].

Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I2)

função Com_IpduGroupStop [SWS_Com_91002] 📄 PDF

void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId);

Stops a preconfigured I - PDU group. For example, cyclic I - PDUs will be stopped after the call of Com_ Ipdu Group Stop().

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 651ca887878f Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

A função Com_IpduGroupStop serve para parar um grupo de I-PDU pré-configurado no módulo AUTOSAR COM [SWS_Com_91002]. A declaração está disponível através do arquivo de cabeçalho Com.h e possui o Service ID 0x04 [SWS_Com_91002].

  • Sintaxe de chamada: void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId) [SWS_Com_91002].
  • Parâmetros: Como único parâmetro é passado o parâmetro de entrada IpduGroupId do tipo Com_IpduGroupIdType, que define o identificador do grupo de I-PDU a ser parado [SWS_Com_91002]. Não existem parâmetros adicionais de entrada/saída (inout) ou de saída (out) [SWS_Com_91002].
  • Valor de retorno: A interface não fornece valor de retorno (void) [SWS_Com_91002].
  • Comportamento de execução: A chamada é processada de forma síncrona [SWS_Com_91002]. Após a chamada de Com_IpduGroupStop, a comunicação do grupo afetado é parada; isso faz com que, por exemplo, I-PDUs cíclicas do grupo deixem de ser enviadas [SWS_Com_91002].

Simultaneidade e restrições

Em relação à concorrência e reentrância, está estabelecido que Com_IpduGroupStop é reentrante para grupos de I-PDU diferentes, mas não pode ser executado de forma reentrante para o mesmo grupo de I-PDU [SWS_Com_91002]. Se a função for chamada em ambientes multitarefa ou multicore, o software chamador deve garantir que chamadas concorrentes para um mesmo ID de grupo sejam excluídas.

Este texto foi gerado por uma IA com base na especificação AUTOSAR CP R20-11.

Guia do implementador em breve (complexidade I1)

função Com_EnableReceptionDM [SWS_Com_91004] 📄 PDF

void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId);

Enables the reception deadline monitoring for the I - PDUs within the given I - PDU group.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 5f24c726b615 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona Com_EnableReceptionDM serve para ativar o monitoramento de prazo de recepção (Reception Deadline Monitoring) para todas as I-PDUs dentro de um grupo de I-PDU predefinido [SWS_Com_91004].

Utilização e contexto de chamada: A função é declarada através do arquivo de cabeçalho Com.h e possui o Service ID 0x06 [SWS_Com_91004]. Como único parâmetro de passagem, a assinatura void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId) espera o parâmetro de entrada IpduGroupId do tipo Com_IpduGroupIdType, que representa o identificador do grupo de I-PDU para cujas I-PDUs contidas o monitoramento de prazos deve ser ativado [SWS_Com_91004]. A execução ocorre de forma síncrona [SWS_Com_91004]. Não existem parâmetros de entrada/saída nem parâmetros de saída, e nenhum valor de retorno é fornecido (tipo de retorno void) [SWS_Com_91004].

Concorrência e restrições: Em relação à concorrência, Com_EnableReceptionDM é reentrante para grupos de I-PDU diferentes, mas não reentrante para o mesmo grupo de I-PDU [SWS_Com_91004]. Chamadas concorrentes para o mesmo ID de grupo não são, portanto, permitidas e devem ser evitadas no contexto de chamada [SWS_Com_91004].

Esta nota de uso foi gerada automaticamente com base na especificação do AUTOSAR Classic Release R20-11.

função Com_DisableReceptionDM [SWS_Com_91003] 📄 PDF

void Com_DisableReceptionDM (Com_IpduGroupIdType IpduGroupId);

Disables the reception deadline monitoring for the I - PDUs within the given I - PDU group.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 12da9925d73b Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona Com_DisableReceptionDM desativa o monitoramento de prazo de recepção (Reception Deadline Monitoring) para todas as I-PDUs dentro do grupo de I-PDU passado [SWS_Com_91003].

usar

A chamada ocorre através da interface void Com_DisableReceptionDM(Com_IpduGroupIdType IpduGroupId) com o identificador do grupo de I-PDU afetado como parâmetro de entrada IpduGroupId [SWS_Com_91003]. A função não possui parâmetros de entrada/saída nem de saída e não fornece valor de retorno (void) [SWS_Com_91003]. O serviço está declarado com o Service ID 0x05 no arquivo de cabeçalho Com.h [SWS_Com_91003].

Simultaneidade e restrições

Em relação ao comportamento de concorrência, o serviço é reentrante para grupos de I-PDU diferentes, mas não pode ser chamado concorrentemente (não reentrante) para o mesmo grupo de I-PDU [SWS_Com_91003].

Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.

função Com_SendSignal [SWS_Com_00197] 📄 PDF

uint8 Com_SendSignal (Com_SignalIdType SignalId, const void* SignalDataPtr);

The service Com_ Send Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter. Avai lable via Com.h

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 8158a8b89f8c Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_SendSignal serve para a atualização de um objeto de sinal identificado por SignalId com os dados para os quais o ponteiro SignalDataPtr aponta [SWS_Com_00197]. A chamada é processada de forma assíncrona [SWS_Com_00197].

Valores de retorno e tratamento de erros

A função retorna um status do tipo uint8 [SWS_Com_00197]:

  • E_OK: O serviço foi aceite [SWS_Com_00197].
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDUs correspondente foi parado ou a chamada falhou devido a um erro de desenvolvimento [SWS_Com_00197].
  • COM_BUSY: Ocorre quando o buffer de TP está bloqueado para o processamento de tipos de dados grandes [SWS_Com_00197].

Simultaneidade e restrições

No que se refere à reentrância, Com_SendSignal não é reentrante para o mesmo sinal, mas pode ser chamada concorrentemente para sinais diferentes [SWS_Com_00197]. A interface é disponibilizada através do cabeçalho Com.h [SWS_Com_00197].

Interação e configuração

Se a configuração ComSignalGroupArrayAccess estiver definida para um grupo de sinais, a chamada de Com_SendSignal para os sinais de grupo desse grupo de sinais não é suportada [SWS_Com_00843].

Este texto foi gerado por uma IA com base na especificação AUTOSAR.

Guia do implementador em breve (complexidade I1)

função Com_SendDynSignal [SWS_Com_00627] 📄 PDF

uint8 Com_SendDynSignal (Com_SignalIdType SignalId, const void* SignalDataPtr, uint16 Length);

The service Com_ Send Dyn Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: b3f2deddf90c Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Classic AUTOSAR Com_SendDynSignal serve para a atualização de um objeto de sinal com comprimento dinâmico com base nos dados úteis passados ([SWS_Com_00627]). O serviço possui o ID de serviço 0x21 e opera de forma assíncrona ([SWS_Com_00627]). Como parâmetros de entrada, a interface espera a identificação do sinal de destino (SignalId), um ponteiro para os dados úteis do sinal a serem transmitidos (SignalDataPtr) e o comprimento atual do sinal dinâmico (Length); parâmetros de saída não existem ([SWS_Com_00627]).

O valor de retorno do tipo uint8 informa o resultado da aceitação da solicitação ([SWS_Com_00627]):

  • E_OK: A chamada de serviço foi aceita com sucesso ([SWS_Com_00627]).
  • E_NOT_OK: O parâmetro Length excede o comprimento máximo configurado para este sinal ComSignalLength ([SWS_Com_00627]).
  • COM_SERVICE_NOT_AVAILABLE: o grupo de I-PDUs correspondente está parado ou o serviço falhou em consequência de um erro de desenvolvimento ([SWS_Com_00627]).
  • COM_BUSY: O buffer de TP está bloqueado ([SWS_Com_00627]).

Em relação à concorrência, Com_SendDynSignal é reentrante para sinais diferentes, porém não reentrante para o mesmo sinal ([SWS_Com_00627]). A declaração da função está disponível através do cabeçalho Com.h ([SWS_Com_00627]).

Este texto foi gerado por uma IA e serve como orientação. O documento determinante é a especificação.

Guia do implementador em breve (complexidade I1)

função Com_ReceiveSignal [SWS_Com_00198] 📄 PDF

uint8 Com_ReceiveSignal (Com_SignalIdType SignalId, void* SignalDataPtr);

Com_ Receive Signal copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: d44a9c735931 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona Com_ReceiveSignal copia os dados do sinal especificado por meio de SignalId para o endereço de memória fornecido através do ponteiro SignalDataPtr ([SWS_Com_00198]).

Utilização e semântica

A chamada processa a transferência do sinal de forma síncrona e recebe como parâmetro de entrada o identificador SignalId (do tipo Com_SignalIdType), bem como o ponteiro SignalDataPtr (void*) para o buffer de destino como parâmetro de saída ([SWS_Com_00198]). A interface está disponível por meio do cabeçalho Com.h ([SWS_Com_00198]).

Valores de retorno e tratamento de erros

O valor de retorno do tipo uint8 sinaliza o resultado da execução da função ([SWS_Com_00198]):

  • E_OK: O serviço foi aceito e executado com sucesso ([SWS_Com_00198]).
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDU correspondente foi parado ou o serviço falhou devido a um erro de desenvolvimento ([SWS_Com_00198]).
  • COM_BUSY: Ocorre caso o buffer de TP esteja bloqueado para o processamento de tipos de dados grandes ([SWS_Com_00198]).

Simultaneidade e restrições

Em relação à reentrância, Com_ReceiveSignal não é reentrante para o mesmo sinal, porém é reentrante para sinais diferentes ([SWS_Com_00198]). No caso de acessos paralelos a IDs de sinal idênticos, os chamadores devem, consequentemente, garantir uma sincronização adequada.

Além disso, existe uma restrição essencial de configuração: se o acesso baseado em array ComSignalGroupArrayAccess estiver configurado para um grupo de sinais, a chamada de Com_ReceiveSignal para os sinais de grupo contidos neste grupo de sinais não é suportada ([SWS_Com_00843]).

Este texto foi gerado por uma IA com base nas diretrizes da especificação.

Guia do implementador em breve (complexidade I1)

função Com_ReceiveDynSignal [SWS_Com_00690] 📄 PDF

uint8 Com_ReceiveDynSignal (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length);

Com_ Receive Dyn Signal copies the data of the signal identified by Signal Id to the lo cation specified by Signal Data Ptr and stores the length of the dynamical length signal at the position given by the Length parameter.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 078181d39b16 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

A função síncrona Com_ReceiveDynSignal serve para a recepção de um sinal com comprimento dinâmico com base no seu SignalId [SWS_Com_00690]. Os dados de sinal recebidos são copiados para a posição de memória para a qual SignalDataPtr aponta [SWS_Com_00690]. Através do parâmetro de entrada e saída Length, o chamador passa como valor de entrada o comprimento máximo comportável; após a operação de cópia bem-sucedida, o comprimento real do sinal dinâmico recebido é armazenado ali [SWS_Com_00690].

Valores de retorno e tratamento de erros

A função retorna um valor de status do tipo uint8 [SWS_Com_00690]:

  • E_OK: A chamada de serviço foi aceita e os dados foram copiados com sucesso [SWS_Com_00690].
  • E_NOT_OK: O buffer disponibilizado é pequeno demais, pois o valor de entrada de Length é menor que o comprimento real do sinal recebido [SWS_Com_00690].
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDU correspondente foi parado ou o serviço falhou devido a um erro de desenvolvimento [SWS_Com_00690].
  • COM_BUSY: O buffer de TP está atualmente bloqueado [SWS_Com_00690].

Simultaneidade e integração

Em relação à reentrância, Com_ReceiveDynSignal não é reentrante para o mesmo sinal, porém pode ser chamada de forma reentrante para sinais diferentes [SWS_Com_00690]. A declaração está disponível através de Com.h [SWS_Com_00690].

Este texto foi gerado por um sistema de IA com base na especificação AUTOSAR CP R20-11.

Guia do implementador em breve (complexidade I1)

função Com_SendSignalGroup [SWS_Com_00200] 📄 PDF

uint8 Com_SendSignalGroup (Com_SignalGroupIdType SignalGroupId);

The service Com_ Send Si gnal Group copies the content of the associated shadow buffer to the associated I - PDU.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 0d9d9eeb6062 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função assíncrona Com_SendSignalGroup serve para copiar o conteúdo do buffer sombra associado para a respectiva I-PDU [SWS_Com_00200]. Como parâmetro de entrada, ela recebe o identificador SignalGroupId do grupo de sinais a ser transmitido [SWS_Com_00200].

Valores de retorno e tratamento de erros

O valor de retorno sinaliza o status de execução do serviço [SWS_Com_00200]:

  • E_OK: A chamada de serviço foi aceita com sucesso [SWS_Com_00200].
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDU correspondente foi parado ou o serviço falhou devido a um erro de desenvolvimento [SWS_Com_00200].
  • COM_BUSY: O buffer de TP está temporariamente bloqueado para a transmissão de tipos de dados grandes [SWS_Com_00200].

Simultaneidade e restrições

Em relação à concorrência, a chamada não é reentrante para o mesmo sinal de grupo, mas é reentrante para sinais de grupo diferentes [SWS_Com_00200]. Interpretação: A restrição provavelmente se refere a acessos simultâneos ao mesmo grupo de sinais. Pergunta Q-2f3a6da092b51794 (aberta) Além disso, a chamada de Com_SendSignalGroup não é suportada para um grupo de sinais caso ComSignalGroupArrayAccess tenha sido configurado para este [SWS_Com_00843].

Interação

O módulo AUTOSAR COM trata uma chamada de Com_SendSignalGroupArray de maneira equivalente a Com_SendSignalGroup em relação às propriedades de transmissão, à seleção do modo de transmissão da I-PDU, bem como ao fluxo de sinais [SWS_Com_00847].

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR.

Guia do implementador em breve (complexidade I1)

função Com_ReceiveSignalGroup [SWS_Com_00201] 📄 PDF

uint8 Com_ReceiveSignalGroup (Com_SignalGroupIdType SignalGroupId);

The service Com_ Receive Signal Group copies the received signal group from the I - PDU to the shadow buffer.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: b8b175f19562 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

A função síncrona Com_ReceiveSignalGroup destina-se à receção de grupos de sinais. Copia os dados do grupo de sinais recebido da respetiva I-PDU para o shadow buffer (tampão sombra) atribuído [SWS_Com_00201]. Como parâmetro de entrada, a função espera o identificador do grupo de sinais SignalGroupId do tipo Com_SignalGroupIdType [SWS_Com_00201]. O serviço está declarado no ficheiro de cabeçalho Com.h [SWS_Com_00201].

Tratamento de erros e valores de retorno

O serviço devolve um valor de estado do tipo uint8, que informa sobre o sucesso ou a causa do erro [SWS_Com_00201]:

  • E_OK: o serviço foi aceite com sucesso e o grupo de sinais copiado [SWS_Com_00201].
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDUs correspondente foi parado ou a chamada falhou devido a um erro de desenvolvimento [SWS_Com_00201].
  • COM_BUSY: o serviço reporta este estado caso o buffer TP esteja bloqueado para a manipulação de tipos de dados grandes [SWS_Com_00201].

Simultaneidade e restrições

Quanto ao comportamento de concorrência, Com_ReceiveSignalGroup foi implementada como não reentrante para o mesmo grupo de sinais, mas reentrante para grupos de sinais diferentes [SWS_Com_00201].

Existe ainda uma restrição essencial na interação com o acesso por array: se tiver sido definida para um grupo de sinais a configuração ComSignalGroupArrayAccess (ECUC_Com_10003), a chamada de Com_ReceiveSignalGroup para este grupo de sinais não é suportada de acordo com a especificação [SWS_Com_00843].

Esta nota de utilização foi gerada automaticamente e baseia-se na especificação AUTOSAR Classic R20-11.

Guia do implementador em breve (complexidade I1)

função Com_SendSignalGroupArray [SWS_Com_00851] 📄 PDF

uint8 Com_SendSignalGroupArray (Com_SignalGroupIdType SignalGroupId, const uint8* SignalGroupArrayPtr);

The service Com_ Send Signal Group Array copies the conte nt of the provided Signal Group Array Ptr to the associated I - PDU. The provided data shall correspond to the array representation of the signal group.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 5c15fbe82271 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função assíncrona Com_SendSignalGroupArray copia os dados de um grupo de sinais diretamente para a I-PDU associada através do ponteiro SignalGroupArrayPtr [SWS_Com_00851]. Os dados passados devem corresponder exatamente à representação em array do respectivo grupo de sinais [SWS_Com_00851], [SWS_Com_00852].

Como parâmetros de entrada, são passados o identificador do grupo de sinais (SignalGroupId), bem como a referência para o array do grupo de sinais (SignalGroupArrayPtr) [SWS_Com_00851]. O serviço fornece os seguintes valores de retorno [SWS_Com_00851]:

  • E_OK: A chamada de serviço foi aceita com sucesso.
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDU associado foi parado ou a chamada falhou devido a um erro de desenvolvimento.
  • COM_BUSY: O buffer do protocolo de transporte (buffer de TP) está bloqueado para o processamento de tipos de dados grandes.

Em relação à concorrência, a função não é reentrante para o mesmo grupo de sinais, mas pode ser chamada de forma reentrante para grupos de sinais diferentes [SWS_Com_00851]. A chamada só está disponível se o parâmetro de configuração ComEnableSignalGroupArrayApi estiver ativado [SWS_Com_00853].

Em relação às características de transmissão de grupos de sinais, à seleção do modo de transmissão da I-PDU e ao fluxo de sinais, Com_SendSignalGroupArray é tratado pelo módulo AUTOSAR COM de forma totalmente análoga a Com_SendSignalGroup [SWS_Com_00847].

Este texto foi gerado por meio de um procedimento baseado em IA com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I1)

função Com_ReceiveSignalGroupArray [SWS_Com_00854] 📄 PDF

uint8 Com_ReceiveSignalGroupArray (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr);

The service Com_ Receive Signal Group Array copies the re ceived signal group array AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM representation from the PDU to the location designated by Signal Group Ar - ray Ptr.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 4f43126be3e3 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e configuração

A função síncrona Com_ReceiveSignalGroupArray copia o grupo de sinais recebido como representação em array de bytes da I-PDU para a área de memória apontada por SignalGroupArrayPtr [SWS_Com_00854], [SWS_Com_00855]. A função está disponível exclusivamente quando a chave de configuração ComEnableSignalGroupArrayApi está ativada [SWS_Com_00856]. Ela suporta filtragem de recepção e Transmission Mode Selection com os filtros ALWAYS, NEVER, MASKED_NEW_EQUALS_X, MASKED_NEW_DIFFERS_X, MASKED_NEW_DIFFERS_MASKED_OLD e ONE_EVERY_N [SWS_Com_00848].

Cópia de dados e tratamento de erros

Na chamada, são passados SignalGroupId, bem como um ponteiro para o array de destino, em cuja posição o módulo AUTOSAR COM copia os dados da I-PDU [SWS_Com_00849]. Mesmo se o grupo de I-PDU estiver parado e o serviço retornar COM_SERVICE_NOT_AVAILABLE, o módulo copia sempre os dados conhecidos mais recentes ou os valores iniciais ComSignalInitValues, caso nenhum dado tenha sido gravado anteriormente [SWS_Com_00857].

Valores de retorno e concorrência

Possíveis valores de retorno do serviço são [SWS_Com_00854]:

  • E_OK: o serviço foi aceite com sucesso.
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDU associado está parado ou o serviço falhou devido a um erro de desenvolvimento.
  • COM_BUSY: o buffer de TP está bloqueado para o processamento de tipos de dados grandes.

Em relação à concorrência, a função é reentrante para grupos de sinais diferentes, mas não reentrante para o mesmo grupo de sinais [SWS_Com_00854].

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR CP R20-11.

Guia do implementador em breve (complexidade I1)

função Com_ReceiveSignalWithMetaData [SWS_Com_91005] 📄 PDF

uint8 Com_ReceiveSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);

Com_ Receive Signal With Meta Data copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr. The received meta data is stored at the position given by the Meta Data Ptr parameter. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 180ada75e2ab Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona Com_ReceiveSignalWithMetaData destina-se à leitura de dados de sinal recebidos juntamente com os seus metadados a partir do módulo de comunicação Com [SWS_Com_91005]. Na chamada, o serviço copia os dados do sinal endereçado através do SignalId para a localização de memória apontada por SignalDataPtr e armazena os metadados recebidos na posição MetaDataPtr [SWS_Com_91005].

Parâmetros e contexto de chamada

A interface está disponível através do cabeçalho Com.h e é identificada através do ID de serviço 0x49 [SWS_Com_91005]. A estrutura de parâmetros divide-se da seguinte forma:

  • SignalId (in): Identificador do sinal a receber [SWS_Com_91005].
  • SignalDataPtr (out): Ponteiro para a localização de memória destinada ao armazenamento dos dados de sinal recebidos [SWS_Com_91005].
  • MetaDataPtr (out): Ponteiro para a área de memória destinada à receção dos metadados do sinal [SWS_Com_91005].

A função retorna um valor de retorno do tipo uint8, para o qual não estão documentados valores de erro específicos na presente secção da norma [SWS_Com_91005].

Simultaneidade e restrições

Quanto à reentrância, o serviço é reentrante para sinais diferentes, mas não é reentrante para o mesmo sinal [SWS_Com_91005]. Em caso de chamadas paralelas ou interruptivas com SignalId idêntico, presume-se que seja necessária uma proteção externa por parte do chamador para assegurar a consistência dos dados. Pergunta Q-51cbdce3d4f59f24 (aberta)

Esta nota de utilização foi gerada por uma IA e baseia-se exclusivamente na especificação AUTOSAR.

função Com_ReceiveDynSignalWithMetaData [SWS_Com_91006] 📄 PDF

uint8 Com_ReceiveDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length, uint8* MetaDataPtr);

Com_ Receive Dyn Signal With Meta Da ta copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr and stores the length of the dy- namical length signal at the position given by the Length parameter. The received meta data is stored at the position given by the Meta Data Ptr parameter.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 9be7aa4daed1 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

A função Com_ReceiveDynSignalWithMetaData é disponibilizada através do arquivo de cabeçalho Com.h e serve para a recepção síncrona de sinais com comprimento dinâmico, incluindo seus metadados [SWS_Com_91006]. Ao ser chamado, o serviço copia os dados do sinal identificado via SignalId para o buffer referenciado por SignalDataPtr [SWS_Com_91006]. Os metadados recebidos são armazenados no ponteiro MetaDataPtr, enquanto o comprimento real do sinal dinâmico recebido é gravado na posição de Length [SWS_Com_91006].

Valores de retorno e tratamento de erros

O serviço retorna um valor de status do tipo uint8 [SWS_Com_91006]:

  • E_OK: O serviço de recepção foi aceito com sucesso [SWS_Com_91006].
  • E_NOT_OK: Ocorre quando o valor passado de Length é menor que o comprimento real do sinal dinâmico recebido [SWS_Com_91006]. Interpretação: O chamador deve fornecer previamente o tamanho do buffer através de Length, de modo que o parâmetro atue efetivamente como uma entrada e saída combinada. Pergunta Q-8ad420c74748f219 (aberta)
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDUs correspondente está parado ou a chamada falhou devido a um erro de desenvolvimento [SWS_Com_91006].
  • COM_BUSY: o buffer de TP está bloqueado no momento [SWS_Com_91006].

Simultaneidade e restrições

Em relação à concorrência, a função é reentrante para sinais diferentes, mas não deve ser chamada de forma reentrante para o mesmo sinal [SWS_Com_91006]. Chamadas paralelas para o mesmo SignalId devem, portanto, ser sincronizadas no nível do chamador.

Esta nota de uso foi gerada automaticamente e baseia-se exclusivamente nos dados de especificação do AUTOSAR Release R20-11.

função Data [SWS_Com_91007] 📄 PDF

uint8 Com_ReceiveSignalGroupWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr);

The service Com_ Receive Signal Group With Meta Data copies the received signal group from the I - PDU to the shadow buffer. The received meta data is stored at the position given by the Meta Data Ptr parameter.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: a2422bbfdc23 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona Com_ReceiveSignalGroupWithMetaData serve para a recepção de um grupo de sinais, incluindo os metadados associados, por meio da interface Com.h [SWS_Com_91007]. Ela recebe como parâmetro de entrada o identificador SignalGroupId e copia os dados recebidos do grupo de sinais da I-PDU para o shadow buffer local [SWS_Com_91007]. Ao mesmo tempo, o serviço armazena os metadados recebidos no endereço de destino referenciado pelo parâmetro de saída MetaDataPtr [SWS_Com_91007].

O comportamento de erro e retorno abrange três valores de status: E_OK sinaliza a aceitação bem-sucedida do serviço [SWS_Com_91007]. O valor de retorno COM_SERVICE_NOT_AVAILABLE indica que o grupo de I-PDUs associado está parado ou que há um erro de desenvolvimento [SWS_Com_91007]. Se ocorrer o código de erro COM_BUSY, o buffer de TP está bloqueado para o processamento de tipos de dados grandes [SWS_Com_91007]. Em relação à concorrência, a função é reentrante para grupos de sinais diferentes, mas não reentrante para o mesmo grupo de sinais [SWS_Com_91007]. Como a especificação não menciona restrições de ISR, a chamada provavelmente ocorre de forma síncrona no nível de tarefa pelo componente de software de nível superior. Pergunta Q-a23cf67bae724ae1 (aberta)

Na interação, a função estende o caminho de recepção com metadados de forma análoga a Com_ReceiveSignalWithMetaData para sinais individuais [SWS_Com_91005]. Os metadados fornecidos correspondem às informações de PDU recebidas anteriormente na interface via Com_RxIndication [SWS_Com_00123]. Para a sinalização de conteúdos de dados inválidos, Com_InvalidateSignalGroup também pode ser utilizado no fluxo geral [SWS_Com_00557].

Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.

função Data [SWS_Com_91008] 📄 PDF

void Com_ReceiveSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);

The service Com_ Receive Signal Group Array With Meta Data copies the received si gnal group array representation from the PDU to the location designated by Signal Group Ar - ray Ptr. The received meta data is stored at the position given by the Meta Data Ptr parameter.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 6fb4f8baaba4 Procedência Perguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

O serviço síncrono Com_ReceiveSignalGroupArrayWithMetaData (ID de serviço 0x4c, disponível via Com.h) copia a representação em array do grupo de sinais recebida da I-PDU para o local de memória disponibilizado através do ponteiro SignalGroupArrayPtr [SWS_Com_91008]. Ao mesmo tempo, os metadados recebidos são gravados na posição indicada pelo parâmetro MetaDataPtr [SWS_Com_91008]. A função não possui valor de retorno (void) [SWS_Com_91008].

Tratamento de erros

A especificação não define valores de retorno para este serviço nem lista códigos de erro específicos [SWS_Com_91008]. Interpretação: eventuais estados de erro nos parâmetros de chamada devem provavelmente ser interceptados internamente e tratados pelo reporte de erros do módulo; no entanto, mensagens concretas de DET ou DEM não constam do excerto da especificação. Pergunta (aberta)

Simultaneidade e restrições

Em relação à concorrência, a função é reentrante para grupos de sinais diferentes, mas não reentrante para o mesmo grupo de sinais [SWS_Com_91008]. Chamadas paralelas com SignalGroupId idêntico devem ser impedidas pelo chamador. Interpretação: os chamadores também devem ter a obrigação de disponibilizar buffers de destino suficientemente dimensionados, já que a interface não inclui parâmetros de comprimento. Pergunta (aberta)

Interação

A disponibilização dos dados no buffer de PDU pressupõe que tenha ocorrido previamente uma indicação de recepção via Com_RxIndication, a qual também fornece os metadados ao módulo COM [SWS_Com_00123]. A função estende as interfaces de recepção para metadados de forma análoga a Com_ReceiveSignalWithMetaData para sinais individuais [SWS_Com_91005] e difere da recuperação regular de sinais via Com_ReceiveSignal [SWS_Com_00198].

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR.

função Data [SWS_Com_91009] 📄 PDF

uint8 Com_SendSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);

The service Com_ Send Si gnal With Meta Data updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter. The meta data is provided via the Meta Data Ptr parameter.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 295cd2832adb Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_SendSignalWithMetaData ([SWS_Com_91009]) serve para a atualização assíncrona de um objeto de sinal especificado por SignalId com dados úteis via SignalDataPtr, bem como metadados associados via MetaDataPtr. O serviço está disponível através do cabeçalho Com.h.

  • Chamada e concorrência: A chamada ocorre de forma assíncrona ([SWS_Com_91009]). A função é reentrante para sinais diferentes, mas não reentrante para o mesmo identificador de sinal (SignalId) ([SWS_Com_91009]).
  • Valores de retorno e tratamento de erros: A função retorna um valor de status do tipo uint8 ([SWS_Com_91009]):
    • E_OK: A solicitação de envio foi aceita com sucesso pelo módulo ([SWS_Com_91009]).
    • COM_SERVICE_NOT_AVAILABLE: o grupo de I-PDUs correspondente está parado ou a chamada falhou devido a um erro de desenvolvimento ([SWS_Com_91009]).
    • COM_BUSY: o buffer TP está bloqueado para o processamento de tipos de dados grandes ([SWS_Com_91009]).
  • Interação: Diferentemente do serviço básico de envio Com_SendSignal ([SWS_Com_00197]), esta função passa metadados explícitos. Ela constitui a contrapartida de envio para o serviço de recepção Com_ReceiveSignalWithMetaData ([SWS_Com_91005]) e complementa serviços de metadados relacionados a I-PDUs, como Com_TriggerIPDUSendWithMetaData ([SWS_Com_00858]).

Esta nota de uso foi criada de forma automatizada com base na especificação.

função Com_SendDynSignalWithMetaData [SWS_Com_91010] 📄 PDF

uint8 Com_SendDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16 Length, uint8* MetaDataPtr);

The service Com_ Send Dyn Signal With Meta Data updates the signal object identified by Signal Id wit h the signal referenced by the Signal Data Ptr parameter. The meta data is provided via the Meta Data Ptr parameter. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: aa04247eb161 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

A função Com_SendDynSignalWithMetaData serve para a atualização assíncrona de um objeto de sinal identificado via SignalId (tipo Com_SignalIdType) com dados de sinal de comprimento dinâmico, bem como os metadados associados [SWS_Com_91010]. Os dados úteis a serem transmitidos são referenciados pelo ponteiro SignalDataPtr (tipo void*), enquanto MetaDataPtr (tipo uint8*) aponta para os metadados [SWS_Com_91010]. Através do parâmetro Length (tipo uint16), é passado o comprimento real do sinal dinâmico a ser enviado [SWS_Com_91010].

Valores de retorno e tratamento de erros

O valor de retorno do tipo uint8 sinaliza se o serviço foi aceito ou qual erro ocorreu [SWS_Com_91010]:

  • E_OK: A chamada de serviço foi aceita com sucesso para processamento [SWS_Com_91010].
  • E_NOT_OK: O Length passado excede o ComSignalLength configurado para este sinal [SWS_Com_91010].
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDUs associado foi parado ou a chamada falhou devido a um erro de desenvolvimento [SWS_Com_91010].
  • COM_BUSY: O buffer de TP está bloqueado no momento, razão pela qual o sinal não pode ser enviado [SWS_Com_91010].

Simultaneidade e integração

Em relação à concorrência, a função é reentrante para sinais diferentes, mas não reentrante para o mesmo sinal [SWS_Com_91010]. A interface possui o ID de serviço 0x4e e é disponibilizada no módulo Com através do arquivo de cabeçalho Com.h [SWS_Com_91010].

Nota de uso criada com base em elementos de especificação do AUTOSAR Release R20-11.

função Data [SWS_Com_91011] 📄 PDF

uint8 Com_SendSignalGroupWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr);

The service Com_ Send Signal Group With Meta Data copies the content of the associated shadow buffer to the associated I - PDU. The meta data is provided via the Meta Data Ptr parameter.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 5e6b0b47ffec Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_SendSignalGroupWithMetaData (designada no modelo de dados como Data) serve para a transmissão assíncrona de um grupo de sinais juntamente com metadados para o módulo Com [SWS_Com_91011]. Durante a chamada, o serviço copia o conteúdo atual do shadow buffer associado para a respectiva I-PDU, sendo os metadados disponibilizados através do ponteiro MetaDataPtr [SWS_Com_91011].

Os parâmetros de passagem incluem o identificador do grupo de sinais (SignalGroupId) e o ponteiro para os metadados (MetaDataPtr) [SWS_Com_91011]. Os valores de retorno informam o resultado da solicitação de serviço:

  • E_OK: O serviço foi aceito com sucesso [SWS_Com_91011].
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDUs associado foi parado ou a execução falhou devido a um erro de desenvolvimento [SWS_Com_91011].
  • COM_BUSY: O buffer de TP está bloqueado para a transmissão de tipos de dados grandes [SWS_Com_91011].

Em relação à concorrência, a chamada é reentrante para sinais diferentes, mas não reentrante para o mesmo sinal de grupo; de forma análoga ao parâmetro SignalGroupId, isso provavelmente se refere ao respectivo grupo de sinais [SWS_Com_91011]. Pergunta Q-91171d77370ae50a (aberta) Na interação com o módulo Com, o serviço complementa o envio de sinais individuais, como Com_SendSignal [SWS_Com_00197], bem como a invalidação de grupos de sinais via Com_InvalidateSignalGroup [SWS_Com_00557]. Além disso, ele corresponde ao serviço de recepção Com_ReceiveSignalWithMetaData [SWS_Com_91005] e à chamada de envio baseada em PDU Com_TriggerIPDUSendWithMetaData [SWS_Com_00858].

Esta nota de utilização foi gerada automaticamente com base na especificação.

função Com_SendSignalGroupArrayWithMetaData [SWS_Com_91012] 📄 PDF

uint8 Com_SendSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);

The service Com_ Send Signal Group Array With Meta Data copies the content of the provided Signal Group Array Ptr to the associated I - PDU. The provided data shall c orrespond to the array representation of the signal group. The meta data is provi- ded via the Meta Data Ptr parameter.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: fef50dded4da Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e parâmetros

A função Com_SendSignalGroupArrayWithMetaData serve para a transmissão assíncrona de um grupo de sinais juntamente com os metadados associados [SWS_Com_91012]. Durante a chamada, o serviço copia o conteúdo do ponteiro passado SignalGroupArrayPtr diretamente para a I-PDU atribuída [SWS_Com_91012]. Os dados disponibilizados devem obrigatoriamente corresponder à representação em array do grupo de sinais, a qual é identificada pelo parâmetro SignalGroupId do tipo Com_SignalGroupIdType [SWS_Com_91012]. Metadados adicionais do grupo de sinais são passados para a camada de comunicação através do ponteiro MetaDataPtr [SWS_Com_91012].

Valores de retorno e tratamento de erros

A função retorna um valor de status do tipo uint8, que indica o sucesso da transferência ou a respectiva causa do erro [SWS_Com_91012]:

  • E_OK: A chamada de serviço foi aceita com sucesso pela camada COM [SWS_Com_91012].
  • COM_SERVICE_NOT_AVAILABLE: O grupo de I-PDUs correspondente está parado ou a chamada falhou devido a um erro de desenvolvimento [SWS_Com_91012].
  • COM_BUSY: O buffer do protocolo de transporte (TP-Buffer) está bloqueado para o processamento de tipos de dados grandes [SWS_Com_91012].

Simultaneidade e restrições

De acordo com a especificação, o serviço é classificado como não reentrante (Non Reentrant), razão pela qual chamadas simultâneas ou interruptivas são inadmissíveis [SWS_Com_91012]. A interface possui o ID de serviço 0x50 e é disponibilizada através do arquivo de cabeçalho Com.h [SWS_Com_91012].

Esta nota de uso foi gerada automaticamente com base na versão R20-11 da especificação AUTOSAR.

função Com_InvalidateSignal [SWS_Com_00203] 📄 PDF

uint8 Com_InvalidateSignal (Com_SignalIdType SignalId);

The service Com_ In validate Signal invalidates the signal with the given Signal Id by setting its value to its configured Com Signal Data Invalid Value.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 019013453d98 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_InvalidateSignal serve para a declaração de invalidação de um sinal no módulo de comunicação [SWS_Com_00203]. Ela define o valor do sinal passado para o valor de invalidação armazenado na configuração Com Signal Data Invalid Value [SWS_Com_00203]. O processamento ocorre de forma assíncrona [SWS_Com_00203]. Como único parâmetro de passagem, é passado o parâmetro de entrada SignalId para identificação do sinal; não existem parâmetros de entrada/saída ou de saída [SWS_Com_00203].

Como valor de retorno, a chamada fornece um status do tipo uint8, que reflete o comportamento de aceitação e de erro [SWS_Com_00203]:

  • E_OK: O serviço de invalidação foi aceito com sucesso [SWS_Com_00203].
  • COM_SERVICE_NOT_AVAILABLE: O serviço não está disponível. Isso ocorre quando o grupo de I-PDUs correspondente está parado, quando nenhum Com Signal Data Invalid Value foi configurado para o SignalId especificado ou quando a execução falha em decorrência de um erro de desenvolvimento [SWS_Com_00203].
  • COM_BUSY: O serviço não pode ser executado no momento porque o buffer de TP está bloqueado [SWS_Com_00203].

Em relação à concorrência, Com_InvalidateSignal não é reentrante para o mesmo sinal, mas pode ser executada em paralelo e de forma reentrante para sinais diferentes [SWS_Com_00203]. O serviço está declarado sob o ID de serviço 0x10 e disponível através do cabeçalho Com.h [SWS_Com_00203].

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR CP R20-11.

Guia do implementador em breve (complexidade I1)

função Com_InvalidateSignalGroup [SWS_Com_00557] 📄 PDF

uint8 Com_InvalidateSignalGroup (Com_SignalGroupIdType SignalGroupId);

The service Co m_ Invalidate Signal Group invalidates all group signals of the signal group with the given Signal Group Id by setting their values to their configured Com Signal Data Invalid Values.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 1812d1ef8d9a Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_InvalidateSignalGroup serve para definir todos os sinais de grupo do grupo de sinais passado para seus respectivos valores configurados de ComSignalDataInvalidValue e, assim, invalidar o grupo de sinais [SWS_Com_00557].

Utilização e semântica

Como parâmetro de entrada, o serviço espera o ID do grupo de sinais a ser invalidado (SignalGroupId do tipo Com_SignalGroupIdType) [SWS_Com_00557]. A chamada é processada de forma assíncrona e retorna um valor de status do tipo uint8 [SWS_Com_00557].

Valores de retorno e tratamento de erros

Os seguintes valores de retorno estão especificados [SWS_Com_00557]:

  • E_OK: A solicitação de invalidação foi aceita com sucesso.
  • COM_SERVICE_NOT_AVAILABLE: O serviço não está disponível porque o grupo de I-PDU correspondente está parado, nenhum ComSignalDataInvalidValue foi configurado para qualquer um dos sinais de grupo ou a chamada falhou devido a um erro de desenvolvimento.
  • COM_BUSY: O buffer do protocolo de transporte (buffer de TP) está bloqueado no momento.

Concorrência e reentrância

A função não é reentrante para o mesmo grupo de sinais, mas pode ser chamada concorrentemente (de forma reentrante) para grupos de sinais diferentes [SWS_Com_00557]. A declaração está disponível através de Com.h [SWS_Com_00557].

Esta nota de uso baseia-se exclusivamente nos dados de especificação do AUTOSAR CP R20-11.

função Com_TriggerIPDUSend [SWS_Com_00348] 📄 PDF

Std_ReturnType Com_TriggerIPDUSend (PduIdType PduId);

By a call to Com_ Trigger IPDUSend the I - PDU with the given ID is triggered for transmission.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: aaf0b030ff03 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona Com_TriggerIPDUSend desencadeia a transmissão da I-PDU identificada pelo parâmetro PduId [SWS_Com_00348]. Está disponível através do cabeçalho Com.h [SWS_Com_00348].

Condições de chamada e valores de retorno

A chamada só desencadeia o envio se a respetiva I-PDU estiver iniciada [SWS_Com_00861]. Em conformidade, o valor de retorno do tipo Std_ReturnType diferencia o estado da I-PDU [SWS_Com_00348]:

  • E_OK: a transmissão da I-PDU foi desencadeada com sucesso [SWS_Com_00348].
  • E_NOT_OK: a I-PDU encontra-se no estado parado, pelo que a transmissão não pôde ser desencadeada [SWS_Com_00348].

Comportamento de buffering e de concorrência

A função está especificada como não reentrante (Non Reentrant) [SWS_Com_00348]. Para I-PDUs grandes está previsto um mecanismo de buffering: se uma I-PDU grande for desencadeada via Com_TriggerIPDUSend enquanto o seu buffer estiver bloqueado, o AUTOSAR COM armazena temporariamente o pedido de envio e só transmite a I-PDU assim que o buffer estiver novamente disponível [SWS_Com_00867].

Esta nota de uso foi gerada de forma automatizada com base nos dados de especificação do AUTOSAR Classic R20-11.

Guia do implementador em breve (complexidade I2)

função Com_TriggerIPDUSendWithMetaData [SWS_Com_00858] 📄 PDF

Std_ReturnType Com_TriggerIPDUSendWithMetaData (PduIdType PduId, const uint8* MetaData);

By a call to Com_ Trigger IPDUSend With Meta Data the AUTOSAR COM module updates its internal metadata for the I - PDU with the given ID by copying the metada- ta from the given position and with respect to length of the globally configured Meta Data Type of this I - PDU. Then the I - PDU is triggered for transmission.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 5bfdcae35579 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_TriggerIPDUSendWithMetaData serve para disparar a transmissão de uma I-PDU de forma síncrona e atualizar previamente seus metadados internos no módulo AUTOSAR COM [SWS_Com_00858]. A chamada espera como parâmetro PduId o identificador da I-PDU a ser enviada, bem como com MetaData um ponteiro para os metadados a serem fornecidos [SWS_Com_00858]. O módulo COM copia os dados a partir do endereço referenciado, considerando o comprimento configurado globalmente do tipo de metadados da I-PDU, para o seu armazenamento interno de dados e dispara a transmissão imediatamente após [SWS_Com_00858].

De acordo com [SWS_Com_00862], o módulo COM só pode disparar a transmissão da I-PDU se a I-PDU estiver no estado iniciado. Se, por outro lado, a I-PDU estiver parada, o disparo da transmissão é omitido.

O resultado da execução é sinalizado por meio do valor de retorno:

  • E_OK: A transmissão da I-PDU foi disparada com sucesso [SWS_Com_00858].
  • E_NOT_OK: A I-PDU está parada; não foi possível disparar a transmissão [SWS_Com_00858].

Códigos de erro específicos para DET ou DEM não estão documentados no payload para este serviço.

Quanto à concorrência, a interface é definida como não reentrante (Non Reentrant) [SWS_Com_00858], razão pela qual chamadas paralelas devem ser excluídas ou sincronizadas. Provavelmente é de responsabilidade do chamador garantir a validade do ponteiro MetaData e um tamanho de buffer suficiente de acordo com o comprimento de metadados configurado. Pergunta Q-66c6abae0bbde275 (aberta)

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I2)

função Com_SwitchIpduTxMode [SWS_Com_00784] 📄 PDF

void Com_SwitchIpduTxMode (PduIdType PduId, booleanMode); ⚠️

The service Com_ Switch Ipdu Tx Mode sets the transmi ssion mode of the I - PDU refe- renced by Pdu Id to Mode. In case the transmission mode changes, the new mode shall immediately be effective (see SWS_ Com_00239). In case the requested transmission mode was already active for this I - PDU, the call will have no effect.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 377789b5b880 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A interface síncrona Com_SwitchIpduTxMode serve para alternar o modo de transmissão de uma I-PDU e é especificada no cabeçalho Com.h sob o ID de serviço 0x27 [SWS_Com_00784]. Como parâmetros, são passados o identificador da respectiva I-PDU (PduId), bem como o modo de transmissão desejado como valor booleano (Mode); não há valor de retorno ou parâmetro de saída [SWS_Com_00784]. A chamada comuta as propriedades de transmissão de forma síncrona e diretamente durante a execução [SWS_Com_00784].

Para a eficácia da alteração de modo, a especificação define dois casos:

  • Se o modo de transmissão mudar devido à chamada, o novo modo de operação entra em vigor imediatamente para a I-PDU referenciada [SWS_Com_00784], [SWS_Com_00239].
  • Se o modo de transmissão solicitado já estava ativo para a I-PDU afetada, a chamada permanece totalmente sem efeito [SWS_Com_00784].

Em relação à sequência posterior de envio, aplica-se o seguinte para a interação com o envio cíclico: se o modo de transmissão de uma I-PDU for definido explicitamente via Com_SwitchIpduTxMode, o módulo AUTOSAR COM atrasa os envios cíclicos subsequentes dessa I-PDU pelo deslocamento de tempo ComTxModeTimeOffset [SWS_Com_00881].

No que diz respeito à concorrência, a função é projetada para ser reentrante para diferentes instâncias de I-PDU [SWS_Com_00784]. Uma chamada concorrente ou paralela para a mesma PduId, por outro lado, é definida como não reentrante e deve ser evitada pelo chamador [SWS_Com_00784].

Esta nota de uso foi gerada automaticamente com base nos documentos de especificação.

Guia do implementador em breve (complexidade I1)

função Com_TriggerTransmit [SWS_Com_00001] 📄 PDF

Std_ReturnType Com_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.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 3b61acbc40d3 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona [SWS_Com_00001] destina-se à obtenção e cópia síncronas de dados de SDU de uma PDU de transmissão a ser transferida (TxPduId) para o buffer fornecido pelo chamador. O chamador passa, por meio do parâmetro de entrada e saída PduInfoPtr, tanto o endereço de destino SduDataPtr quanto a capacidade máxima de buffer disponível em SduLength. Desde que os dados de SDU caibam inteiramente no buffer, eles serão copiados, PduInfoPtr->SduLength será atualizado com a quantidade de bytes efetivamente copiada e o serviço é concluído com sucesso com E_OK [SWS_Com_00001].

Tratamento de erros e condições de contorno

A função interrompe a execução, não copia dados e retorna E_NOT_OK caso uma das seguintes condições se aplique:

Em caso de erro (E_NOT_OK), o chamador não deve avaliar nem continuar utilizando o ponteiro PduInfoPtr, pois ele pode referenciar dados inválidos ou representar um ponteiro NULL [SWS_Com_00001].

simultaneidade

Em termos de concorrência, a interface é projetada para ser reentrante para diferentes IDs de PDU, mas não deve ser chamada concorrentemente para a mesma TxPduId [SWS_Com_00001].

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR.

Guia do implementador em breve (complexidade I2)

função Com_RxIndication [SWS_Com_00123] 📄 PDF

void Com_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);

Indication of a received PDU from a lower layer communication interface module.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 2689aa6ec38f Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_RxIndication serve para a sinalização e entrega de uma PDU recebida de um módulo de interface de comunicação subjacente para o módulo COM do AUTOSAR [SWS_Com_00123]. A declaração da função é fornecida através do ficheiro de cabeçalho Com.h e possui o ID de serviço 0x42 [SWS_Com_00123].

A chamada ocorre com semântica síncrona e não retorna qualquer valor (void) [SWS_Com_00123]. A interface não define parâmetros de entrada/saída nem parâmetros puramente de saída, mas exclusivamente dois parâmetros de entrada [SWS_Com_00123]:

  • RxPduId (tipo de dados PduIdType): Representa o identificador unívoco da PDU recebida [SWS_Com_00123].
  • PduInfoPtr (ponteiro para PduInfoType constante): Aponta para a estrutura de dados que contém o comprimento da PDU recebida (SduLength), um ponteiro para o buffer com os dados da PDU (SduDataPtr) e os metadados associados [SWS_Com_00123].

No que diz respeito ao comportamento de concorrência, Com_RxIndication está definida como reentrante para chamadas com diferentes IDs de PDU, mas expressamente como não reentrante para o mesmo ID de PDU [SWS_Com_00123]. Interpretação: supõe-se, por conseguinte, que os módulos chamadores da interface de comunicação subjacente são obrigados a sincronizar ou serializar chamadas concorrentes para IDs de PDU idênticos, a fim de manter a consistência dos dados. Pergunta Q-f3b6194f96c15091 (aberta)

Este texto foi gerado por uma IA com base na especificação AUTOSAR Classic R20-11.

Guia do implementador em breve (complexidade I1)

função Com_TpRxIndication [SWS_Com_00650] 📄 PDF

void Com_TpRxIndication (PduIdType id, Std_ReturnType result);

Called after an I - PDU has been received via the TP API, the result indicates whe- ther the transmission was successful or not.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 4850647a5abb Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função de serviço síncrona Com_TpRxIndication é chamada assim que uma I-PDU tiver sido recebida através da API TP [SWS_Com_00650]. Informa o módulo AUTOSAR COM sobre a conclusão e o resultado do processo de receção. A I-PDU afetada é identificada através do parâmetro id, enquanto o parâmetro result indica se a transmissão foi bem-sucedida ou se falhou [SWS_Com_00650]. A função não possui valor de retorno e está definida no cabeçalho Com.h com o Service ID 0x45 [SWS_Com_00650]. Como chamador deverá presumivelmente atuar uma camada de transporte subjacente, como o módulo PduR ou um módulo TP. Pergunta Q-d7006169cd162db4 (aberta)

Tratamento de erros

Se Com_TpRxIndication for chamada com o valor de resultado E_NOT_OK para o parâmetro result, o módulo COM trata todos os sinais da I-PDU grande recebida exatamente como sinais que se tornaram inválidos [SWS_Com_00838]. Neste caso de erro, o módulo executa todas as ComDataInvalidActions configuradas para todos os sinais e grupos de sinais contidos [SWS_Com_00838].

Simultaneidade e condições marginais

A função está especificada como reentrante e opera de forma síncrona [SWS_Com_00650]. Pode, por isso, ser chamada em paralelo para diferentes I-PDUs, devendo contudo ser processada sem atraso no contexto da instância chamadora.

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I2)

função Com_TxConfirmation [SWS_Com_00124] 📄 PDF

void Com_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

The lower layer communication interface module confirms the transmission of a AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM PDU, or the failure to transmit a PDU.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 6f01cbf21243 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função de callback síncrona Com_TxConfirmation é declarada por meio do cabeçalho Com.h e atua como a interface central de confirmação do módulo AUTOSAR COM [SWS_Com_00124]. Um módulo de interface de comunicação subjacente relata, com ela, a transmissão bem-sucedida de uma PDU ou a falha do processo de envio de volta ao módulo Com [SWS_Com_00124].

Contexto de chamada e parâmetros

A função é executada de forma síncrona, possui o ID de serviço 0x40 e não fornece valor de retorno (void) [SWS_Com_00124]. Ela espera dois parâmetros de entrada:

  • TxPduId (tipo PduIdType): Identificador unívoco da PDU cuja transmissão foi concluída ou falhou [SWS_Com_00124].
  • result (tipo Std_ReturnType): Status de resultado do processo de envio [SWS_Com_00124]. O valor E_OK confirma a transmissão realizada da PDU, enquanto E_NOT_OK sinaliza uma falha na transmissão da PDU [SWS_Com_00124].

Simultaneidade e restrições

Com_TxConfirmation é reentrante para diferentes IDs de PDU, mas não reentrante para o mesmo ID de PDU [SWS_Com_00124]. Interpretação: Os chamadores da camada subjacente provavelmente devem evitar chamadas consecutivas ou de interrupção com o mesmo TxPduId a partir de diferentes contextos de execução, para que o status interno de processamento do módulo Com permaneça consistente. Pergunta Q-146c1c92403b64fa (aberta)

Tratamento de erros

A especificação não define valores de retorno específicos para este serviço e não indica mensagens de erro DET ou DEM separadas [SWS_Com_00124]. Transmissões com falha são transmitidas ao módulo Com exclusivamente por meio do parâmetro result com o valor de erro E_NOT_OK [SWS_Com_00124].

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I1)

função Com_TpTxConfirmation [SWS_Com_00725] 📄 PDF

void Com_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 successful or not.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 328768cdfded Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

A função Com_TpTxConfirmation é chamada após a transmissão de uma I-PDU na rede para notificar o módulo COM sobre o resultado do processo de envio [SWS_Com_00725]. A I-PDU transmitida é identificada através do parâmetro id do tipo PduIdType, enquanto result do tipo Std_ReturnType indica se a transmissão foi bem-sucedida ou falhou [SWS_Com_00725]. A função não possui valor de retorno (void) e apresenta uma semântica de execução síncrona [SWS_Com_00725]. Ela está disponível através do arquivo de cabeçalho Com.h e possui o Service ID 0x48 [SWS_Com_00725].

Tratamento de erros

A transmissão de erros nesta interface ocorre exclusivamente através do parâmetro result, que reflete o sucesso ou insucesso da transferência da I-PDU [SWS_Com_00725]. Códigos de erro específicos, bem como mensagens de erro para o módulo Default Error Tracer (DET) ou Diagnostic Event Manager (DEM), não são indicados na especificação da função [SWS_Com_00725].

Simultaneidade e condições marginais

A interface é especificada como reentrante e, portanto, pode ser executada em paralelo [SWS_Com_00725]. Como restrição temporal, a chamada só pode ocorrer após a conclusão da transmissão da I-PDU na rede [SWS_Com_00725]. Interpretação: Devido à convenção de nomenclatura e à estrutura do módulo, a chamada deve ser tipicamente iniciada por um módulo de protocolo de transporte subjacente. Pergunta Q-8320e76ff63f62ce (aberta)

Este texto baseia-se na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I2)

função Com_StartReception [SWS_Com_00691] 📄 PDF

BufReq_ReturnType Com_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);

Service Com_StartReception.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 00b7efb3a544 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona e reentrante Com_StartReception (disponível por meio de Com.h, ID de serviço 0x46) é chamada no início da recepção de uma N-SDU, que é transmitida não fragmentada como Single Frame (SF) ou fragmentada através de um First Frame (FF) com Consecutive Frames (CF) subsequentes [SWS_Com_00691].

Por meio do parâmetro id, a I-PDU é identificada e TpSduLength indica o comprimento total da N-SDU a ser recebida [SWS_Com_00691]. O ponteiro info aponta para os dados úteis e o comprimento útil do primeiro ou único quadro, bem como para os metadados associados; se nem dados de quadro nem metadados estiverem disponíveis, NULL_PTR é passado [SWS_Com_00691]. Através do parâmetro de saída bufferSizePtr, a função fornece o tamanho de buffer disponível, que o módulo de protocolo de transporte usa para determinar o Block Size (BS) [SWS_Com_00691]. Se o serviço for chamado com um TpSduLength de 0, ele fornece o tamanho de buffer máximo atualmente disponível [SWS_Com_00691].

O resultado da solicitação é retornado como BufReq_ReturnType [SWS_Com_00691]:

  • BUFREQ_OK: A conexão é aceita e a recepção continua; bufferSizePtr indica o buffer disponível ou sinaliza 0 caso nenhum buffer no tamanho solicitado esteja disponível [SWS_Com_00691].
  • BUFREQ_E_NOT_OK: A conexão é rejeitada e a recepção cancelada; o valor de bufferSizePtr permanece inalterado [SWS_Com_00691].
  • BUFREQ_E_OVFL: Não é possível fornecer nenhum buffer com o comprimento exigido, após o que a recepção é cancelada; bufferSizePtr permanece inalterado [SWS_Com_00691].

Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I1)

função Com_CopyRxData [SWS_Com_00692] 📄 PDF

BufReq_ReturnType Com_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);

Service Com_CopyRxData.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 729d3072fcb5 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Uso e semântica de chamada

A função síncrona Com_CopyRxData é chamada para transferir os dados recebidos de um segmento de I-PDU (N-PDU) para a camada superior [SWS_Com_00692]. Em transmissões segmentadas, cada chamada subsequente desta interface fornece a respectiva parte seguinte de todos os dados da I-PDU [SWS_Com_00692].

Parâmetros e gerenciamento de buffers

  • id: Identifica univocamente a I-PDU recebida [SWS_Com_00692].
  • info: Ponteiro para uma estrutura do tipo PduInfoType. Ela transfere por meio de SduDataPtr o ponteiro para o buffer de origem e por meio de SduLength o número de bytes a serem copiados [SWS_Com_00692]. A especificação de 0 para SduLength serve para consultar o tamanho de buffer atualmente disponível da camada superior; neste caso de consulta pura, SduDataPtr pode ser definido como NULL_PTR [SWS_Com_00692].
  • bufferSizePtr: Ponteiro para uma variável do tipo PduLengthType, na qual é gravado o tamanho restante do buffer de recepção após a operação de cópia [SWS_Com_00692].

Valores de retorno e propriedades

A função retorna um status do tipo BufReq_ReturnType [SWS_Com_00692]:

  • BUFREQ_OK: Os dados foram copiados com sucesso para o buffer de destino [SWS_Com_00692].
  • BUFREQ_E_NOT_OK: A cópia dos dados falhou porque ocorreu um erro [SWS_Com_00692].

A interface possui o ID de serviço 0x44, é especificada como reentrante e está disponível por meio do cabeçalho Com.h [SWS_Com_00692].

Este texto foi gerado por uma IA e baseia-se no padrão AUTOSAR R20-11.

Guia do implementador em breve (complexidade I1)

função Com_CopyTxData [SWS_Com_00693] 📄 PDF

BufReq_ReturnType Com_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

Service Com_CopyTxData.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 682b5915a18c Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função síncrona e reentrante Com_CopyTxData é chamada por módulos subjacentes (como protocolos de transporte) para consultar progressivamente dados de envio para segmentos (N-PDUs) de uma I-PDU a partir do buffer de envio do módulo COM [SWS_Com_00693].

Utilização e parâmetros

Cada chamada disponibiliza a parte seguinte dos dados da I-PDU [SWS_Com_00693]:

  • id: identifica a I-PDU a transmitir [SWS_Com_00693].
  • info: indica através de SduDataPtr o buffer de destino e através de SduLength o número de bytes a copiar. É admissível um comprimento de 0 para transmitir mudanças de estado através de retry ou consultar a quantidade de dados disponível; neste caso, SduDataPtr pode ser um NULL_PTR [SWS_Com_00693].
  • retry: confirma dados enviados ou desencadeia retransmissões. Se retry for um NULL_PTR, os dados podem ser removidos do buffer imediatamente após a cópia. Se retry apontar para uma estrutura RetryInfoType, TpDataState controla a retenção no buffer: TP_CONFPENDING mantém os dados no buffer para recuperação de erros, TP_DATACONF confirma os dados copiados antes da chamada para eliminação e TP_DATARETRY volta a copiar dados lidos anteriormente a partir do offset TxTpDataCnt [SWS_Com_00693].
  • availableDataPtr: devolve a quantidade restante de bytes disponíveis no buffer de envio, o que permite, por exemplo, a protocolos de transporte dinâmicos (como FrIsoTp) determinar os tamanhos dos segmentos subsequentes [SWS_Com_00693].

Valores de retorno e tratamento de erros

O resultado da função assinala o sucesso do pedido de buffer através de BufReq_ReturnType [SWS_Com_00693]:

  • BUFREQ_OK: os dados foram copiados na totalidade para o buffer de destino conforme solicitado [SWS_Com_00693].
  • BUFREQ_E_BUSY: a quantidade de dados solicitada não está disponível no buffer de envio. Não é copiado qualquer dado e o módulo subjacente pode repetir a chamada num momento posterior [SWS_Com_00693].
  • BUFREQ_E_NOT_OK: o pedido falhou; nenhum dado foi copiado [SWS_Com_00693].

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR CP R20-11.

Guia do implementador em breve (complexidade I1)

função Com_MainFunctionRx [SWS_Com_00398] 📄 PDF

void Com_MainFunctionRx (void);

This function performs the processing of the AUTOSAR COM module's receive processing that are not directly handled within the COM's functions invoked by the PDU - R, for example Com_ Rx Indication. Per configured Com Main Function Rx instance one Com_ Main F unction Rx_ shall be implemented. Hereby is the short name of the Com Main Function Rx configuration container in the ECU configuration.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: ac041132fbb2 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

usar

A função síncrona Com_MainFunctionRx assume o processamento interno de receção do módulo AUTOSAR COM para processos que não são processados diretamente no contexto de execução das APIs chamadas pelo roteador de PDU (PduR), tais como Com_RxIndication [SWS_Com_00398]. Não possui parâmetros de entrada nem de saída e não fornece qualquer valor de retorno [SWS_Com_00398]. A declaração é efetuada através do cabeçalho SchM_Com.h; o contexto de chamada deverá, portanto, ocorrer tipicamente de forma periódica através do Schedule Manager (SchM) [SWS_Com_00398]. Pergunta Q-48d121e36f62c6de (aberta)

Tratamento de erros e inicialização

Se a função for executada antes da inicialização do módulo por Com_Init ou após uma chamada de Com_DeInit, não é gerado nenhum erro COM_E_UNINIT (0x02), contrariamente à maioria das APIs COM normais, uma vez que Com_MainFunctionRx está explicitamente isenta disso [SWS_Com_00804]. Não existem códigos de erro ou de retorno específicos para esta interface [SWS_Com_00398].

Concorrência e operação multi-instância

No que diz respeito ao contexto de execução e à reentrância, aplicam-se os seguintes requisitos [SWS_Com_00398]:

  • Reentrância: a função não é reentrante para a mesma instância, mas pode ser chamada em paralelo para diferentes instâncias [SWS_Com_00398].
  • Forma específica da instância: para cada contentor ComMainFunctionRx definido na configuração da ECU, é implementada uma função autónoma sob a forma Com_MainFunctionRx_<shortName>, em que <shortName> corresponde ao Short-Name do contentor de configuração [SWS_Com_00398].

Este texto foi gerado por uma IA e serve de orientação. São determinantes as especificações AUTOSAR referenciadas.

Guia do implementador em breve (complexidade I1)

função Com_MainFunctionTx [SWS_Com_00399] 📄 PDF

void Com_MainFunctionTx (void);

This function performs the processing of the AUTOSAR COM module's transmissi- on activities that are not directly handled within the COM's function invoked by the AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM RTE, for example Com_ Send Signal. Per configured Com Main Function Tx instance one Com_ Main F unction Tx_ shall be implemented. Hereby is the short name of the Com Main Function Tx configuration container in the ECU configuration.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 6bb3c5b804b7 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e funcionamento

A função Com_MainFunctionTx executa as atividades de envio do módulo AUTOSAR COM que não são tratadas diretamente dentro das funções COM chamadas pela RTE (como, por exemplo, Com_SendSignal) ([SWS_Com_00399]). A execução decorre de forma síncrona. Não possui parâmetros de entrada, de entrada/saída nem de saída e não devolve qualquer valor de retorno ([SWS_Com_00399]). A interface é declarada através de SchM_Com.h; Interpretação: devido a esta pertença de cabeçalho, o contexto de chamada deverá situar-se no Schedule Management (SchM). Pergunta Q-c33cfcf81700bcc5 (aberta)

Para cada contentor configurado de uma Com Main Function Tx na configuração da ECU, deve ser implementada uma função de instância específica de acordo com o esquema de nomenclatura Com_MainFunctionTx_<shortName>, em que <shortName> corresponde ao nome abreviado do contentor de configuração ([SWS_Com_00399]).

Simultaneidade e restrições

Relativamente à reentrância, Com_MainFunctionTx foi concebida para ser reentrante para instâncias distintas, mas não pode ser chamada de forma reentrante para a mesma instância ([SWS_Com_00399]).

Tratamento de erros e estado de inicialização

De acordo com [SWS_Com_00804], a chamada de serviços COM antes da inicialização através de Com_Init ou após a desinicialização via Com_DeInit resulta regularmente no erro COM_E_UNINIT (0x02). No entanto, Com_MainFunctionTx está explicitamente isenta disso e não gera tal erro de inicialização nestes estados ([SWS_Com_00804]).

Este texto foi gerado por uma inteligência artificial e baseia-se na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I1)

função Signals [SWS_Com_00400] 📄 PDF

void Com_MainFunctionRouteSignals (void);

Calls the signal gateway part of the AUTOSAR COM module to forward received signals to be routed. Per configured Com Main Function Route Signals instance one Com_ Main Functi on Route Signals_ shall be implemented. Hereby is the short name of the Com Main Function Route Signals configuration container in the ECU configuration.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 626630c6dee2 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função principal Com_MainFunctionRouteSignals (Service ID 0x1a) serve no módulo AUTOSAR COM como interface síncrona central para o encaminhamento de sinais ([SWS_Com_00400]). A sua tarefa consiste em chamar a parte de gateway de sinais do módulo COM para que os sinais recebidos previstos para um roteamento sejam encaminhados para os respetivos destinos configurados ([SWS_Com_00400]).

Chamada e semântica

A interface C sem parâmetros possui a assinatura void Com_MainFunctionRouteSignals(void) ([SWS_Com_00400]). É executada de forma síncrona e não possui parâmetros de entrada, de entrada/saída ou de saída, nem um valor de retorno ([SWS_Com_00400]). A declaração da função principal é disponibilizada através do ficheiro de cabeçalho SchM_Com.h ([SWS_Com_00400]). Interpretação: devido a esta disponibilização através de SchM_Com.h, a chamada planeada no contexto de tarefas deverá decorrer periodicamente através do escalonador BSW (SchM). Pergunta Q-0f0b57034d6d6bf1 (aberta)

Instanciação e reentrância

Para a integração, nomenclatura e concorrência, [SWS_Com_00400] define os seguintes requisitos vinculativos:

  • Implementação específica da instância: para cada instância existente na configuração da ECU do contentor de configuração ComMainFunctionRouteSignals, deve ser implementada uma função própria segundo o esquema de nomenclatura Com_MainFunctionRouteSignals_<shortName> ([SWS_Com_00400]). Neste âmbito, <shortName> corresponde ao nome abreviado do contentor de configuração em causa.
  • Comportamento de reentrância: a função é reentrante para chamadas de instâncias distintas ([SWS_Com_00400]). Contudo, para a mesmíssima instância, é explicitamente não reentrante e, por isso, não pode ser executada concorrentemente ([SWS_Com_00400]).

Esta nota de uso foi gerada automaticamente com base na especificação.

função Com_CbkTxAck [SWS_Com_00468] 📄 PDF

void Com_CbkTxAck (void);

This callback represents notification class 2 of [17]. It is called immediately after successful transmission of the I - PDU containing the message.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 0cd088b5afe8 Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função de callback Com_CbkTxAck serve no módulo Com para a notificação sobre o envio bem-sucedido de uma mensagem [SWS_Com_00468]. Ela representa a classe de notificação 2 (notification class 2) e é chamada imediatamente após a transmissão bem-sucedida daquela I-PDU que contém a respectiva mensagem [SWS_Com_00468].

Para o contexto de chamada e as propriedades da interface, aplicam-se as seguintes diretrizes conforme a especificação [SWS_Com_00468]:

  • Assinatura e parâmetros: A função de callback possui a assinatura void Com_CbkTxAck (void). Ela não recebe parâmetros de entrada, de entrada/saída nem de saída e não retorna nenhum valor [SWS_Com_00468].
  • Sincronismo: A chamada está especificada como síncrona (Synchronous) [SWS_Com_00468].
  • Reentrância: O comportamento de reentrância está classificado como don't care [SWS_Com_00468].
  • Configuração: A interface está declarada como configurável (configurable) [SWS_Com_00468]. Interpretação: O nome real da função de callback provavelmente deve ser parametrizado na ferramenta de configuração especificamente para a mensagem ou sinal. Pergunta Q-3670b7b04fd7c74c (aberta)

Códigos de erro específicos, reações a erros e mensagens para DET ou DEM não estão definidos na especificação para este elemento [SWS_Com_00468]. Também não são listadas condições adicionais de ordenação em relação a outras chamadas [SWS_Com_00468].

Este texto foi gerado por uma IA com base no AUTOSAR R20-11.

função Com_CbkTxErr [SWS_Com_00491] 📄 PDF

void Com_CbkTxErr (void);

This callback corresponds to notification class 4 of [17]. It is called in case the transmission is not possible because the corresponding I - PDU group is stopped.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 2eeb947394ae Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função de callback Com_CbkTxErr é chamada sincronamente quando uma transmissão não é possível porque o grupo de I-PDUs correspondente está parado [SWS_Com_00491]. Ela corresponde à classe de notificação 4 de acordo com as especificações subjacentes [SWS_Com_00491].

Chamada e semântica

  • Assinatura e parâmetros: A função não possui parâmetros de entrada, de entrada/saída nem de saída (void Com_CbkTxErr (void)) e não retorna nenhum valor [SWS_Com_00491].
  • Comportamento de execução: A chamada ocorre de forma síncrona («Synchronous»), enquanto para a reentrância é especificado «don't care» [SWS_Com_00491].
  • Disponibilidade: A interface de callback é configurável («configurable») [SWS_Com_00491].

Tratamento de erros e interação

A função serve especificamente para sinalizar à camada chamadora ou de nível superior o caso de erro de uma solicitação de envio impedida devido a um grupo de I-PDUs parado [SWS_Com_00491]. Como nenhum parâmetro é passado, o contexto do sinal ou da I-PDU afetada provavelmente deve ser pré-determinado através da configuração ou de atribuições específicas do módulo. Pergunta Q-d7153324d2eb2995 (aberta)

Esta nota de uso foi gerada automaticamente por um sistema de IA com base nos dados da especificação.

função Com_CbkTxTOut [SWS_Com_00554] 📄 PDF

void Com_CbkTxTOut (void);

This callback corresponds to notification class 4 of [17]. It is called immediately after a message transmission error has been detected by the deadline monitoring mechanism.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 2a4f700c045f Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e contexto de chamada

A função de callback Com_CbkTxTOut serve como interface de notificação sobre a ausência de uma transmissão bem-sucedida. De acordo com [SWS_Com_00554], ela é chamada imediatamente após o mecanismo de monitoramento de prazo limite (deadline monitoring mechanism) detectar um erro de transmissão de uma mensagem. A chamada ocorre de forma síncrona e corresponde à classe de notificação 4. Como a assinatura void Com_CbkTxTOut(void) não possui parâmetros de passagem nem valores de retorno, a sinalização para a camada de nível superior ocorre sem parâmetros.

Simultaneidade e configuração

Em relação à reentrância, a função está especificada segundo [SWS_Com_00554] com don't care. Presumivelmente, cabe portanto ao software de aplicação chamado tomar medidas adequadas para a segurança de threads, caso eventos de monitoramento possam ocorrer concorrentemente. Pergunta Q-793a6c18d81de85e (aberta) A disponibilidade da função de callback é configurável no módulo de comunicação e é adaptada aos respectivos requisitos de monitoramento.

Tratamento de erros

Em [SWS_Com_00554], não estão definidas para Com_CbkTxTOut mensagens de erro DET ou DEM separadas nem valores de retorno para confirmação de erros. O próprio acionamento do callback representa a reação de erro a um prazo limite de envio ultrapassado.

Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.

função Com_CbkRxAck [SWS_Com_00555] 📄 PDF

void Com_CbkRxAck (void);

This callback represents notification class 1 of [17]. It is called immediately after the message has been stored in the receiving message object.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 5f202dc48b43 Procedência Perguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função de callback Com_CbkRxAck serve no módulo AUTOSAR COM como confirmação de recepção configurável e representa a classe de notificação 1 conforme [17] [SWS_Com_00555]. O módulo COM chama esta rotina de callback imediatamente após uma mensagem recebida ter sido depositada e armazenada com sucesso no objeto de mensagem de recepção previsto para ela [SWS_Com_00555].

Utilização e contexto de chamada

  • Comportamento de execução síncrono: A função está especificada como síncrona [SWS_Com_00555]. Ela é executada diretamente no decorrer do processo de armazenamento, de modo que o contexto chamador do módulo COM aguarda a execução do callback.
  • Parâmetros e valores de retorno: De acordo com a assinatura void Com_CbkRxAck (void), nenhum parâmetro de entrada, nenhum parâmetro de entrada/saída e nenhum parâmetro de saída são passados [SWS_Com_00555]. Além disso, a função não retorna nenhum valor ao módulo chamador [SWS_Com_00555].
  • Disponibilidade: O mecanismo de chamada está disponível para o sistema como uma interface configurável [SWS_Com_00555].

Simultaneidade e tratamento de erros

Para a reentrância, está definida a propriedade «don't care» [SWS_Com_00555]. Isso deve significar que a especificação COM não impõe requisitos para uma chamada reentrante e que mecanismos de proteção contra acesso simultâneo são de responsabilidade do usuário. Pergunta (aberta) Como não estão definidos valores de retorno nem códigos de erro específicos ou mensagens de erro para DET ou DEM [SWS_Com_00555], eventuais erros durante o processamento provavelmente devem ser tratados completamente de forma local dentro da função de callback.

Este texto foi gerado por uma IA com base na especificação R20-11.

função Com_CbkRxTOut [SWS_Com_00556] 📄 PDF

void Com_CbkRxTOut (void);

This callback corresponds to notification class 3 of [17]. It is called immediately after a message reception error has been detected by the deadline monitoring mechanism.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 8121281e52ca Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Utilização e semântica

A função de callback Com_CbkRxTOut serve para a notificação sobre a ausência de uma mensagem esperada. De acordo com [SWS_Com_00556], ela é chamada imediatamente assim que o mecanismo de Deadline-Monitoring do módulo detecta um erro na recepção de mensagens. Esta notificação corresponde à classe de notificação 3 («notification class 3 of [17]») e está disponível como interface configurável [SWS_Com_00556].

A chamada ocorre de forma síncrona (Synchronous) sem parâmetros de passagem e sem valor de retorno (void Com_CbkRxTOut(void)) [SWS_Com_00556]. Dessa forma, a função sinaliza ao receptor chamador ou à camada de software de nível superior puramente o próprio evento de timeout, sem transmitir dados de contexto diretamente na chamada.

Simultaneidade e restrições

Para a reentrância da função, don't care está definido na especificação [SWS_Com_00556]. Como a chamada ocorre de forma imediata e síncrona após a detecção do erro, a implementação da rotina de callback provavelmente deve ser projetada para ser não bloqueante, a fim de não atrasar indevidamente o Deadline-Monitoring do módulo COM. Pergunta Q-88055efc50f5843b (aberta)

Este texto foi gerado por uma IA e serve como orientação. São determinantes as especificações AUTOSAR referenciadas.

função Com_CbkInv [SWS_Com_00536] 📄 PDF

void Com_CbkInv (void);

This callback function corresponds to SWS_ Com_00680. It is called after recepti- on of an invalid signal or signal group respectively.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 148e16c23d2c Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função de callback Com_CbkInv notifica camadas de software de nível superior sobre a recepção de dados de comunicação incorretos ou inválidos no módulo AUTOSAR COM [SWS_Com_00536]. Ela é chamada imediatamente após a recepção de um sinal inválido ou de um grupo de sinais inválido e informa o receptor sobre a presença de um valor de sinal inválido [SWS_Com_00536].

A interface possui a assinatura void Com_CbkInv(void), portanto não recebe parâmetros de passagem e não retorna nenhum valor ao chamador [SWS_Com_00536]. A chamada ocorre de forma síncrona, enquanto o comportamento de reentrância é indicado na especificação como «don't care» [SWS_Com_00536]. Como nenhum parâmetro para a identificação do sinal afetado é passado, o identificador Com_CbkInv provavelmente deve servir como um modelo de assinatura configurável para notificações específicas de sinais. Pergunta Q-6e02e6bcf324eb93 (aberta)

Em relação à integração e ao comportamento do sistema, aplicam-se as seguintes condições de contorno:

  • A disponibilização da função é configurável, permitindo que a notificação seja ativada conforme a necessidade por sinal ou grupo de sinais [SWS_Com_00536].
  • Tecnicamente, a função corresponde ao requisito SWS_Com_00680 para o tratamento de invalidação de sinais recebidos no módulo COM [SWS_Com_00536].
  • Rotinas específicas de tratamento de erros, códigos de erro ou mensagens de erro para módulos de desenvolvimento ou diagnóstico, como DET ou DEM, não estão indicados para esta interface [SWS_Com_00536].

Esta nota de uso foi gerada automaticamente com base nos dados de especificação.

função Com_CbkCounterErr [SWS_Com_00726] 📄 PDF

void Com_CbkCounterErr (PduIdType ComPduId, uint8 ExpectedCounter, uint8 ReceivedCounter);

This function is called immediately, if the AUTOSAR COM module receives an I - PDU counter that differs from the expected one. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: df6b24d5c921 Procedência Perguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função de callback configurável Com_CbkCounterErr serve para a sinalização de erros no monitoramento do contador de I-PDU de acordo com [SWS_Com_00726]. Ela é chamada de forma imediata e síncrona pelo módulo AUTOSAR COM quando, em uma I-PDU recebida, é detectado um valor de contador que não coincide com o valor de contador esperado. Isso possibilita a detecção precoce de erros de sequência na recepção de mensagens.

A interface não possui valor de retorno (void) e passa três parâmetros de entrada para análise de erros na chamada ([SWS_Com_00726]):

  • ComPduId (PduIdType): Identificador da I-PDU afetada na qual ocorreu o erro de contador.
  • ExpectedCounter (uint8): O valor de contador da I-PDU esperado pelo módulo COM.
  • ReceivedCounter (uint8): O valor de contador efetivamente encontrado na mensagem recebida.

Em relação à concorrência, a reentrância da função é declarada na especificação como «don't care» ([SWS_Com_00726]). Mensagens de erro específicas de DET ou DEM não são predefinidas para esta interface em [SWS_Com_00726]. Como a função de callback é definida como configurável, ela provavelmente deve ser implementada em uma camada superior, como a aplicação, a fim de reagir a erros de transmissão ou perdas de pacotes de forma específica para a aplicação. Interpretação: Como a chamada ocorre de forma imediata e síncrona no contexto do processamento de recepção do COM ([SWS_Com_00726]), a rotina chamada não deve realizar operações bloqueantes. Pergunta Q-a745eb5416fc156b (aberta)

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR R20-11.

função Com_CbkTxPrep [SWS_Com_91013] 📄 PDF

void Com_CbkTxPrep (void);

This callback function indicates that the signals/ signal groups of a dedicated Com_ Main Function Tx instance will now be prepared for transmission.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 0dd4280d4342 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função de callback Com_CbkTxPrep serve como notificação de que os sinais ou grupos de sinais de uma instância dedicada de Com_MainFunctionTx estão agora sendo preparados para transmissão [SWS_Com_91013]. A execução da função ocorre de forma síncrona com a instância chamadora [SWS_Com_91013]. De acordo com a sua assinatura void Com_CbkTxPrep(void), ela não recebe parâmetros de entrada, nem parâmetros de entrada e saída, nem parâmetros de saída, e não possui valor de retorno [SWS_Com_91013].

A disponibilização da interface está acessível através de uma configuração [SWS_Com_91013]. Desde que o parâmetro de configuração ComPreparationNotification esteja configurado, a respectiva função Com_CbkTxPrep deve ser chamada dentro da respectiva MainFunctionTx [SWS_Com_00886]. Nesse caso, uma condição rígida de ordem temporal deve ser obrigatoriamente cumprida: a chamada deve ocorrer completamente antes que o processamento propriamente dito das I-PDUs seja iniciado dentro da função principal de Tx [SWS_Com_00886].

Em relação ao comportamento de concorrência e possíveis restrições, Com_CbkTxPrep é especificado como não reentrante (Non Reentrant) [SWS_Com_91013]. O contexto de chamada está rigidamente vinculado ao fluxo da respectiva instância de MainFunctionTx [SWS_Com_91013]. Como o callback deve ser executado imediatamente antes do início do processamento da I-PDU, a função está integrada de forma síncrona na rotina de envio correspondente [SWS_Com_00886].

Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR R20-11.

Guia do implementador em breve (complexidade I1)

função Com_RxIpduCallout [SWS_Com_00700] 📄 PDF

boolean Com_RxIpduCallout (PduIdType PduId, const PduInfoType* PduInfoPtr);

The I - PDU callout on receiver side can be configured to implement user - defined receive filtering mechanisms.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 27d82988d509 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_RxIpduCallout é um callout configurável no lado do recetor, que serve para a implementação de mecanismos de filtragem de receção específicos do utilizador para I-PDUs [SWS_Com_00700]. A execução ocorre de forma síncrona e, no que diz respeito à reentrância, a interface está especificada como don't care [SWS_Com_00700].

São passados à chamada o identificador bem como os dados da PDU recebida [SWS_Com_00700]:

  • PduId: identificador da I-PDU recebida [SWS_Com_00700].
  • PduInfoPtr: ponteiro para uma estrutura PduInfoType, que disponibiliza o comprimento (SduLength) bem como um ponteiro para os dados úteis (SduDataPtr) da I-PDU recebida [SWS_Com_00700].

Relativamente à disponibilização de dados, [SWS_Com_00816] exige que o módulo AUTOSAR COM encaminhe todos os dados da I-PDU recebida na íntegra para Com_RxIpduCallout, exatamente como foram fornecidos pela camada do roteador de PDU (PduR).

Através do valor de retorno booleano, o callout controla o processamento subsequente da I-PDU no módulo COM [SWS_Com_00700]:

  • true: a I-PDU recebida é processada posteriormente de forma normal [SWS_Com_00700].
  • false: A I-PDU não é processada adicionalmente e é, portanto, descartada [SWS_Com_00700].

Códigos de erro específicos, constantes de código de retorno ou mensagens de DET e DEM não estão previstos na especificação para este callout [SWS_Com_00700].

Nota: Esta nota de utilização foi gerada automaticamente por um sistema de IA com base na especificação AUTOSAR R20-11.

função Com_TxIpduCallout [SWS_Com_00346] 📄 PDF

boolean Com_TxIpduCallout (PduIdType PduId, PduInfoType* PduInfoPtr);

The I - PDU callout on sender side can be configured for example to implement user - defined transmission filtering or user - defined pre - transmission - processing of the outgoing I - PDU.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: df5cc1442b9d Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função Com_TxIpduCallout funciona como callout configurável no lado do transmissor e é chamada de forma síncrona para efetuar um pré-processamento específico do utilizador ou uma filtragem de transmissão de uma I-PDU de saída [SWS_Com_00346].

Parâmetros e valor de retorno

  • PduId (in): passa o identificador da I-PDU a transmitir [SWS_Com_00346].
  • PduInfoPtr (inout): contém o comprimento dos dados úteis (SduLength) bem como um ponteiro para os dados úteis (SduDataPtr) da I-PDU [SWS_Com_00346]. Através disto, os dados da I-PDU podem ser inspecionados ou modificados antes do envio.
  • Valor de retorno (boolean): controla o processamento subsequente da I-PDU [SWS_Com_00346]. Um valor de retorno de true desencadeia o envio regular da I-PDU, ao passo que false interrompe qualquer processamento posterior e, por conseguinte, a transmissão [SWS_Com_00346].

Simultaneidade e configuração

O callout possui o Service ID 0x29 e a sua reentrância está definida pelo lado da especificação como \"don't care\" [SWS_Com_00346]. Interpretação: como a reentrância é irrestrita, as chamadas deverão decorrer em diferentes contextos de tarefas dependendo da ordem de envio desencadeadora, razão pela qual as implementações do lado do utilizador devem ser thread-safe no caso de recursos partilhados. Pergunta Q-3ce35701879bb60c (aberta)

Este texto foi criado automaticamente. Todas as informações baseiam-se exclusivamente na versão de especificação R20-11 do AUTOSAR.

tipo Com_StatusType [SWS_Com_00819] 📄 PDF

This is a status value returned by the API service Com_ Get Status().

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 7e3d9f87970e Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

O tipo de enumeração Com_StatusType define o valor de status para o módulo AUTOSAR COM e é disponibilizado através do arquivo de cabeçalho Com.h [SWS_Com_00819]. Este tipo serve como valor de retorno do serviço de API Com_GetStatus(), com o qual os chamadores podem consultar o estado atual de inicialização e de operação do módulo de comunicação [SWS_Com_00819].

A faixa de valores especificada de Com_StatusType distingue exatamente dois estados [SWS_Com_00819]:

  • COM_UNINIT: Indica que o módulo AUTOSAR COM não está inicializado ou não está utilizável [SWS_Com_00819]. Este estado possui obrigatoriamente o valor numérico 0x00 (ou valor 0) e forma o valor padrão vinculativo imediatamente após um reset do sistema [SWS_Com_00819].
  • COM_INIT: Sinaliza que o módulo AUTOSAR COM foi inicializado corretamente e está, assim, operacional e utilizável [SWS_Com_00819].

Para o software chamador, a avaliação deste valor de retorno serve para verificar a prontidão operacional do módulo de comunicação antes da sua utilização [SWS_Com_00819]. Enquanto o serviço Com_GetStatus() retornar o valor COM_UNINIT, o módulo COM é considerado não inicializado ou não utilizável [SWS_Com_00819]. Somente quando o status apresenta o valor COM_INIT é que o módulo está inicializado e operacional [SWS_Com_00819]. Outros códigos de erro ou valores de retorno não são especificados para este tipo de enumeração [SWS_Com_00819].

Esta nota de utilização foi gerada automaticamente com base na especificação.

Guia do implementador em breve (complexidade I1)

tipo Com_ConfigType [SWS_Com_00825] 📄 PDF

This is the type of the data structure containing the initialization data for COM.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/CP_MOD_Com
Status
unspecified
Version
AUTOSAR/AP/record/CP_MOD_Com@rel:R20-11#d0962dcf
Content hash
d0962dcf
Source
https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_COM.pdf#nameddest=SWS_Com_00432

Inicialização e estado

Com_DeInit função

This service stops the inter - ECU communication. All started I - PDU groups are stop- ped and have to be started again, if needed, after Com_ Init is called. By a call to Com_ De Init the AUTOSAR COM module is put into an not initialized state.

void Com_DeInit (void);
Com_GetStatus função

Returns the status of the AUTOSAR COM module. Availab le via Com.h

Com_StatusType Com_GetStatus (void);

Returns the version information of this module.

void Com_GetVersionInfo (Std_VersionInfoType* versioninfo);
Com_Init função

This service initializes internal and external interfaces and variables of the AUTO- SAR COM module layer for the further processing. After calling this function the inter - ECU communication is still disabled. In configurations, in which Com is assigned to mo re than one partition (i.e. Com_ Main Functions are mapped to partitions), Com may provide one init function per AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM partition.

void Com_Init (const Com_ConfigType* config);

Serviços · Receive…

Com_ Receive Dyn Signal copies the data of the signal identified by Signal Id to the lo cation specified by Signal Data Ptr and stores the length of the dynamical length signal at the position given by the Length parameter.

uint8 Com_ReceiveDynSignal (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length);

Com_ Receive Dyn Signal With Meta Da ta copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr and stores the length of the dy- namical length signal at the position given by the Length parameter. The received meta data is stored at the position given by the Meta Data Ptr parameter.

uint8 Com_ReceiveDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16* Length, uint8* MetaDataPtr);

Com_ Receive Signal copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr.

uint8 Com_ReceiveSignal (Com_SignalIdType SignalId, void* SignalDataPtr);

The service Com_ Receive Signal Group copies the received signal group from the I - PDU to the shadow buffer.

uint8 Com_ReceiveSignalGroup (Com_SignalGroupIdType SignalGroupId);

The service Com_ Receive Signal Group Array copies the re ceived signal group array AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM representation from the PDU to the location designated by Signal Group Ar - ray Ptr.

uint8 Com_ReceiveSignalGroupArray (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr);

The service Com_ Receive Signal Group Array With Meta Data copies the received si gnal group array representation from the PDU to the location designated by Signal Group Ar - ray Ptr. The received meta data is stored at the position given by the Meta Data Ptr parameter.

void Com_ReceiveSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);

The service Com_ Receive Signal Group With Meta Data copies the received signal group from the I - PDU to the shadow buffer. The received meta data is stored at the position given by the Meta Data Ptr parameter.

uint8 Com_ReceiveSignalGroupWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr);

Com_ Receive Signal With Meta Data copies the data of the signal identified by Signal Id to the location specified by Signal Data Ptr. The received meta data is stored at the position given by the Meta Data Ptr parameter. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM

uint8 Com_ReceiveSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);

Serviços · Send…

The service Com_ Send Dyn Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter.

uint8 Com_SendDynSignal (Com_SignalIdType SignalId, const void* SignalDataPtr, uint16 Length);

The service Com_ Send Dyn Signal With Meta Data updates the signal object identified by Signal Id wit h the signal referenced by the Signal Data Ptr parameter. The meta data is provided via the Meta Data Ptr parameter. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM

uint8 Com_SendDynSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint16 Length, uint8* MetaDataPtr);

The service Com_ Send Signal updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter. Avai lable via Com.h

uint8 Com_SendSignal (Com_SignalIdType SignalId, const void* SignalDataPtr);

The service Com_ Send Si gnal Group copies the content of the associated shadow buffer to the associated I - PDU.

uint8 Com_SendSignalGroup (Com_SignalGroupIdType SignalGroupId);

The service Com_ Send Signal Group Array copies the conte nt of the provided Signal Group Array Ptr to the associated I - PDU. The provided data shall correspond to the array representation of the signal group.

uint8 Com_SendSignalGroupArray (Com_SignalGroupIdType SignalGroupId, const uint8* SignalGroupArrayPtr);

The service Com_ Send Signal Group Array With Meta Data copies the content of the provided Signal Group Array Ptr to the associated I - PDU. The provided data shall c orrespond to the array representation of the signal group. The meta data is provi- ded via the Meta Data Ptr parameter.

uint8 Com_SendSignalGroupArrayWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr, uint8* MetaDataPtr);

The service Com_ Send Signal Group With Meta Data copies the content of the associated shadow buffer to the associated I - PDU. The meta data is provided via the Meta Data Ptr parameter.

uint8 Com_SendSignalGroupWithMetaData (Com_SignalGroupIdType SignalGroupId, uint8* MetaDataPtr);

The service Com_ Send Si gnal With Meta Data updates the signal object identified by Signal Id with the signal referenced by the Signal Data Ptr parameter. The meta data is provided via the Meta Data Ptr parameter.

uint8 Com_SendSignalWithMetaData (Com_SignalIdType SignalId, void* SignalDataPtr, uint8* MetaDataPtr);

Serviços · Outros

Disables the reception deadline monitoring for the I - PDUs within the given I - PDU group.

void Com_DisableReceptionDM (Com_IpduGroupIdType IpduGroupId);

Enables the reception deadline monitoring for the I - PDUs within the given I - PDU group.

void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId);

The service Com_ In validate Signal invalidates the signal with the given Signal Id by setting its value to its configured Com Signal Data Invalid Value.

uint8 Com_InvalidateSignal (Com_SignalIdType SignalId);

The service Co m_ Invalidate Signal Group invalidates all group signals of the signal group with the given Signal Group Id by setting their values to their configured Com Signal Data Invalid Values.

uint8 Com_InvalidateSignalGroup (Com_SignalGroupIdType SignalGroupId);

Starts a preconfigured I - PDU group. For example, cyclic I - PDUs will be sent out cyclically after the call of Com_ Ipdu Group Start(). If Initialize is true all I - PDUs of the I - PDU group shall be (r e - )initialized before the I - PDU group is started. That is they shall behave like after a start - up of COM, for example the old_ value of the filter ob- jects and shadow buffers of signal groups have to be (re - )initialized.

void Com_IpduGroupStart (Com_IpduGroupIdType IpduGroupId, boolean initialize);

Stops a preconfigured I - PDU group. For example, cyclic I - PDUs will be stopped after the call of Com_ Ipdu Group Stop().

void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId);

The service Com_ Switch Ipdu Tx Mode sets the transmi ssion mode of the I - PDU refe- renced by Pdu Id to Mode. In case the transmission mode changes, the new mode shall immediately be effective (see SWS_ Com_00239). In case the requested transmission mode was already active for this I - PDU, the call will have no effect.

void Com_SwitchIpduTxMode (PduIdType PduId, booleanMode); ⚠️

By a call to Com_ Trigger IPDUSend the I - PDU with the given ID is triggered for transmission.

Std_ReturnType Com_TriggerIPDUSend (PduIdType PduId);

By a call to Com_ Trigger IPDUSend With Meta Data the AUTOSAR COM module updates its internal metadata for the I - PDU with the given ID by copying the metada- ta from the given position and with respect to length of the globally configured Meta Data Type of this I - PDU. Then the I - PDU is triggered for transmission.

Std_ReturnType Com_TriggerIPDUSendWithMetaData (PduIdType PduId, const uint8* MetaData);

Callbacks

This function is called immediately, if the AUTOSAR COM module receives an I - PDU counter that differs from the expected one. AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM

void Com_CbkCounterErr (PduIdType ComPduId, uint8 ExpectedCounter, uint8 ReceivedCounter);
Com_CbkInv função

This callback function corresponds to SWS_ Com_00680. It is called after recepti- on of an invalid signal or signal group respectively.

void Com_CbkInv (void);
Com_CbkRxAck função

This callback represents notification class 1 of [17]. It is called immediately after the message has been stored in the receiving message object.

void Com_CbkRxAck (void);
Com_CbkRxTOut função

This callback corresponds to notification class 3 of [17]. It is called immediately after a message reception error has been detected by the deadline monitoring mechanism.

void Com_CbkRxTOut (void);
Com_CbkTxAck função

This callback represents notification class 2 of [17]. It is called immediately after successful transmission of the I - PDU containing the message.

void Com_CbkTxAck (void);
Com_CbkTxErr função

This callback corresponds to notification class 4 of [17]. It is called in case the transmission is not possible because the corresponding I - PDU group is stopped.

void Com_CbkTxErr (void);
Com_CbkTxPrep função

This callback function indicates that the signals/ signal groups of a dedicated Com_ Main Function Tx instance will now be prepared for transmission.

void Com_CbkTxPrep (void);
Com_CbkTxTOut função

This callback corresponds to notification class 4 of [17]. It is called immediately after a message transmission error has been detected by the deadline monitoring mechanism.

void Com_CbkTxTOut (void);

Service Com_CopyRxData.

BufReq_ReturnType Com_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);

Service Com_CopyTxData.

BufReq_ReturnType Com_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);

Indication of a received PDU from a lower layer communication interface module.

void Com_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);

Service Com_StartReception.

BufReq_ReturnType Com_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);

Called after an I - PDU has been received via the TP API, the result indicates whe- ther the transmission was successful or not.

void Com_TpRxIndication (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 successful or not.

void Com_TpTxConfirmation (PduIdType id, Std_ReturnType result);

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.

Std_ReturnType Com_TriggerTransmit (PduIdType TxPduId, PduInfoType* PduInfoPtr);

The lower layer communication interface module confirms the transmission of a AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM PDU, or the failure to transmit a PDU.

void Com_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);

Callouts e interfaces esperadas

The I - PDU callout on receiver side can be configured to implement user - defined receive filtering mechanisms.

boolean Com_RxIpduCallout (PduIdType PduId, const PduInfoType* PduInfoPtr);

The I - PDU callout on sender side can be configured for example to implement user - defined transmission filtering or user - defined pre - transmission - processing of the outgoing I - PDU.

boolean Com_TxIpduCallout (PduIdType PduId, PduInfoType* PduInfoPtr);

Cíclico

Calls the signal gateway part of the AUTOSAR COM module to forward received signals to be routed. Per configured Com Main Function Route Signals instance one Com_ Main Functi on Route Signals_ shall be implemented. Hereby is the short name of the Com Main Function Route Signals configuration container in the ECU configuration.

void Com_MainFunctionRouteSignals (void);

This function performs the processing of the AUTOSAR COM module's receive processing that are not directly handled within the COM's functions invoked by the PDU - R, for example Com_ Rx Indication. Per configured Com Main Function Rx instance one Com_ Main F unction Rx_ shall be implemented. Hereby is the short name of the Com Main Function Rx configuration container in the ECU configuration.

void Com_MainFunctionRx (void);

This function performs the processing of the AUTOSAR COM module's transmissi- on activities that are not directly handled within the COM's function invoked by the AUTOSAR CP R20 - of Document ID : AUTOSAR_SWS_COM RTE, for example Com_ Send Signal. Per configured Com Main Function Tx instance one Com_ Main F unction Tx_ shall be implemented. Hereby is the short name of the Com Main Function Tx configuration container in the ECU configuration.

void Com_MainFunctionTx (void);

Tipos

This is the type of the data structure containing the initialization data for COM.

The AUTOSAR COM I - PDU module's group object identifier.

The AUTOSAR COM module's signal group object identifier.

The AUTOSAR COM module's signal object identifier.

This is a status value returned by the API service Com_ Get Status().