AUTOSAR COM
The AUTOSAR COM module provides signal-based communication services for inter-ECU exchange across diverse bus systems.
Funktionen — Übersicht
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...void Com_DeInit (void);This service stops the inter - ECU communication.void Com_IpduGroupStart (Com_IpduGroupIdType IpduGroupId, boolean initialize);Starts a preconfigured I - PDU group.void Com_IpduGroupStop (Com_IpduGroupIdType IpduGroupId);Stops a preconfigured I - PDU group.void Com_EnableReceptionDM (Com_IpduGroupIdType IpduGroupId);Enables the reception deadline monitoring for the I - PDUs within the given I - PDU group.void Com_DisableReceptionDM (Com_IpduGroupIdType IpduGroupId);Disables the reception deadline monitoring for the I - PDUs within the given I - PDU group.Com_StatusType Com_GetStatus (void);Returns the status of the AUTOSAR COM module.void Com_GetVersionInfo (Std_VersionInfoType* versioninfo);Returns the version information of this module.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...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...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.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...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.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.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.uint8 Com_ReceiveSignalGroupArray (Com_SignalGroupIdType SignalGroupId, uint8* SignalGroupArrayPtr);The service Com_ Receive Signal Group Array copies the re ceived signal group arrayuint8 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...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...uint8 Com_ReceiveSignalGroupWith MetaData (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.void Com_ReceiveSignalGroupArrayWith MetaData (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...uint8 Com_SendSignalWith MetaData (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...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...uint8 Com_SendSignalGroupWith MetaData (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.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...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...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...Std_ReturnType Com_TriggerIPDUSend (PduIdType PduId);By a call to Com_ Trigger IPDUSend the I - PDU with the given ID is triggered for transmission.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...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.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...void Com_RxIndication (PduIdType RxPduId, const PduInfoType* PduInfoPtr);Indication of a received PDU from a lower layer communication interface module.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.void Com_TxConfirmation (PduIdType TxPduId, Std_ReturnType result);The lower layer communication interface module confirms the transmission of avoid 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...BufReq_ReturnType Com_StartOfReception (PduIdType id, const PduInfoType* info, PduLengthType TpSduLength, PduLengthType* bufferSizePtr);Service Com_StartReception.BufReq_ReturnType Com_CopyRxData (PduIdType id, const PduInfoType* info, PduLengthType* bufferSizePtr);Service Com_CopyRxData.BufReq_ReturnType Com_CopyTxData (PduIdType id, const PduInfoType* info, const RetryInfoType* retry, PduLengthType* availableDataPtr);Service Com_CopyTxData.void Com_MainFunctionRx (void);This function performs the processing of the AUTOSAR COM module's receive processing that are not directly handled within the...void Com_MainFunctionTx (void);This function performs the processing of the AUTOSAR COM module's transmissi- on activities that are not directly handled...void Com_MainFunction RouteSignals (void); ⚠️Calls the signal gateway part of the AUTOSAR COM module to forward received signals to be routed.void Com_CbkTxAck (void);This callback represents notification class 2 of [17].void Com_CbkTxErr (void);This callback corresponds to notification class 4 of [17].void Com_CbkTxTOut (void);This callback corresponds to notification class 4 of [17].void Com_CbkRxAck (void);This callback represents notification class 1 of [17].void Com_CbkRxTOut (void);This callback corresponds to notification class 3 of [17].void Com_CbkInv (void);This callback function corresponds to SWS_ Com_00680.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.void Com_CbkTxPrep (void);This callback function indicates that the signals/ signal groups of a dedicated Com_ Main Function Tx instance will now be...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.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 -...
Typen — Übersicht
enum Com_StatusTypeThis is a status value returned by the API service Com_ Get Status().Com_SignalIdTypeThe AUTOSAR COM module's signal object identifier.Com_SignalGroupIdTypeThe AUTOSAR COM module's signal group object identifier.Com_IpduGroupIdTypeThe AUTOSAR COM I - PDU module's group object identifier.struct Com_ConfigTypeThis is the type of the data structure containing the initialization data for COM.
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.
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_Initcomo se tivesse sido iniciada viaCom_IpduGroupStartcom o parâmetro de inicialização definido ([SWS_Com_00840]). - Para grupos de sinais com acesso via array configurado (
ComSignalGroupArrayAccess),Com_Initinicializa 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.
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_Initcom a passagem do ponteiro de configuraçãoconfig([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.
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().
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
IpduGroupIddo tipoCom_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.
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.
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_GetStatus [SWS_Com_00194] 📄 PDF
Com_StatusType Com_GetStatus (void);
Returns the status of the AUTOSAR COM module. Availab le via Com.h
função Com_GetVersionInfo [SWS_Com_00426] 📄 PDF
void Com_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
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
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.
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âmetroLengthexcede o comprimento máximo configurado para este sinalComSignalLength([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.
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.
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 deLengthé 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.
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.
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.
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.
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
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.
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 deLengthé 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 deLength, 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.
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.
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.
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çãoCom_ReceiveSignalWithMetaData([SWS_Com_91005]) e complementa serviços de metadados relacionados a I-PDUs, comoCom_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
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: OLengthpassado excede oComSignalLengthconfigurado 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.
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.
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.
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 nenhumCom Signal Data Invalid Valuefoi configurado para oSignalIdespecificado 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.
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, nenhumComSignalDataInvalidValuefoi 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.
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.
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.
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.
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:
- O tamanho do buffer fornecido em
PduInfoPtr->SduLengthé menor do que o comprimento real da PDU [SWS_Com_00001], [SWS_Com_00869]. Nesse caso,PduInfoPtrpermanece inalterado [SWS_Com_00001]. - A respectiva I-PDU encontra-se no estado parado [SWS_Com_00884].
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.
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 dadosPduIdType): Representa o identificador unívoco da PDU recebida [SWS_Com_00123].PduInfoPtr(ponteiro paraPduInfoTypeconstante): 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.
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.
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(tipoPduIdType): Identificador unívoco da PDU cuja transmissão foi concluída ou falhou [SWS_Com_00124].result(tipoStd_ReturnType): Status de resultado do processo de envio [SWS_Com_00124]. O valorE_OKconfirma a transmissão realizada da PDU, enquantoE_NOT_OKsinaliza 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.
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.
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;bufferSizePtrindica 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 debufferSizePtrpermanece 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;bufferSizePtrpermanece 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.
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 tipoPduInfoType. Ela transfere por meio deSduDataPtro ponteiro para o buffer de origem e por meio deSduLengtho número de bytes a serem copiados [SWS_Com_00692]. A especificação de0paraSduLengthserve para consultar o tamanho de buffer atualmente disponível da camada superior; neste caso de consulta pura,SduDataPtrpode ser definido comoNULL_PTR[SWS_Com_00692].bufferSizePtr: Ponteiro para uma variável do tipoPduLengthType, 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.
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 deSduDataPtro buffer de destino e através deSduLengtho número de bytes a copiar. É admissível um comprimento de 0 para transmitir mudanças de estado através deretryou consultar a quantidade de dados disponível; neste caso,SduDataPtrpode ser umNULL_PTR[SWS_Com_00693].retry: confirma dados enviados ou desencadeia retransmissões. Seretryfor umNULL_PTR, os dados podem ser removidos do buffer imediatamente após a cópia. Seretryapontar para uma estruturaRetryInfoType,TpDataStatecontrola a retenção no buffer:TP_CONFPENDINGmantém os dados no buffer para recuperação de erros,TP_DATACONFconfirma os dados copiados antes da chamada para eliminação eTP_DATARETRYvolta a copiar dados lidos anteriormente a partir do offsetTxTpDataCnt[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_
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
ComMainFunctionRxdefinido na configuração da ECU, é implementada uma função autónoma sob a formaCom_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_
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_
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 nomenclaturaCom_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.
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.
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.
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.
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.
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.
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_00680para 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
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.
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.
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 estruturaPduInfoType, 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.
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 detruedesencadeia o envio regular da I-PDU, ao passo quefalseinterrompe 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().
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érico0x00(ou valor0) 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_SignalIdType [SWS_Com_00820] 📄 PDF
The AUTOSAR COM module's signal object identifier.
tipo Com_SignalGroupIdType [SWS_Com_00821] 📄 PDF
The AUTOSAR COM module's signal group object identifier.
tipo Com_IpduGroupIdType [SWS_Com_00822] 📄 PDF
The AUTOSAR COM I - PDU module's group object identifier.
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
gemini-3.8-flash-low· 2026-10-13 · Original em alemão