LIN Interface (LinIf)
Abstracts LIN hardware and manages schedule tables and frame transmission.
Funktionen — Übersicht
void LinIf_Init (const LinIf_ConfigType* ConfigPtr);Initializes the LIN Interface.void LinIf_GetVersionInfo (Std_VersionInfoType* versioninfo);Returns the version information of this module.Std_ReturnType LinIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);Re quests transmission of a PDU.Std_ReturnType LinIf_ScheduleRequest (NetworkHandleType Channel, LinIf_SchHandleType Schedule);Requests a schedule table to be executed.Std_ReturnType LinIf_GotoSleep (NetworkHandleType Channel);Initiates a transition into the Sleep Mode on the selected channel.Std_ReturnType LinIf_Wakeup (NetworkHandleType Channel);Initiates the wake up process.Std_ReturnType LinIf_SetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType TransceiverMode);Set the given LIN transceiver to the given mode.Std_ReturnType LinIf_GetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType* TransceiverModePtr);Returns the actual sta te of a LIN Transceiver Driver.Std_ReturnType LinIf_GetTrcvWakeupReason (NetworkHandleType Channel, LinTrcv_TrcvWakeupReasonType* TrcvWuReasonPtr);Returns the reason for the wake up that has been detected by the LIN Transceiver Driver.Std_ReturnType LinIf_SetTrcvWakeupMode (NetworkHandleType Channel, LinTrcv_TrcvWakeupModeType LinTrcvWakeupMode);This API enables, disables and cl ears the notification for wakeup events on the addressed networkStd_ReturnType LinIf_GetPIDTable (NetworkHandleType Channel, Lin_FramePidType* PidBuffer, uint8* PidBufferLength);Retrieves all assigned PID values.Std_ReturnType LinIf_SetPIDTable (NetworkHandleType Channel, Lin_FramePidType* PidBuffer, uint8 PidBufferLength);Sets all assigned PID values.Std_ReturnType LinIf_GetConfiguredNAD (NetworkHandleType Channel, uint8* Nad);Reports the current configured NAD.Std_ReturnType LinIf_SetConfiguredNAD (NetworkHandleType Channel, uint8 Nad);Sets the current configured NAD.void LinTp_Init (const LinTp_ConfigType* ConfigPtr);Initializes the LIN Transport Layer.Std_ReturnType LinTp_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);Requests transmission of a PDU.void LinTp_GetVersionInfo (Std_VersionInfoType* versioninfo);Returns the version information of this module.void LinTp_Shutdown (void);Shutdowns the LIN TP.Std_ReturnType LinTp_ChangeParameter (PduIdType id, TPParameterType parameter, uint16 value);Request to change a specific transport protocol parameter (e.Std_ReturnType LinIf_CheckWakeup (EcuM_WakeupSourceType WakeupSource);Will be called when the Ecu M has been notified about a wakeup on a specific LIN channel.Std_ReturnType LinIf_EnableBusMirroring (NetworkHandleType Channel, boolean MirroringActive);Enables or disables mirroring for a LIN channel.void LinIf_WakeupConfirmation (EcuM_WakeupSourceType WakeupSource);The LIN Driver or LIN Transceiver Driver will call this function to report the wake up source after the successful wakeup...Std_ReturnType LinIf_HeaderIndication (NetworkHandleType Channel, Lin_PduType* PduPtr);The LIN Driver will call this function to report a received LIN header.void LinIf_RxIndication (NetworkHandleType Channel, uint8* Lin_SduPtr);The LIN Driver will call this function to report a successfully received response and provides the reception data to the LIN...void LinIf_TxConfirmation (NetworkHandleType Channel);The LIN Driver will call this function to report a successfully transmitted response.void LinIf_LinErrorIndication (NetworkHandleType Channel, Lin_SlaveErrorType ErrorStatus);The LIN Driver will call this function to report a detected error event during header or response processing.Std_ReturnType <User_TriggerTransmit> (PduIdType TxPduId, PduInfoType* PduInfoPtr);Within this API, the upper layer module (called module) shall check whether the available data fits into the b uffer size...void <User_TxConfirmation> (PduIdType TxPduId, Std_ReturnType result);The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.void <User_RxIndication> (PduIdType RxPduId, const PduInfoType* PduInfoPtr);Indication of a received PDU from a lower layer communication interface module.void <User_ResponseErrorSignalChanged> (NetworkHandleType Channel, boolean RespErrSigValue);Notifies the change of the response error signal with the new value.boolean <User_SaveConfigurationRequest> (NetworkHandleType Channel);Notifies the reception of a Save Configuration request.
Typen — Übersicht
LinIf_SchHandleTypeIndex of the schedule table that is selectable and followed by LIN Interface.struct LinIf_ConfigTypeA pointer to an instance of this structure will be used in the initialization of the LIN Interface.struct LinTp_ConfigTypeThis is the base type for the configuration of the LIN Transport Protocol A pointer to an instance of this structure will be...LinTp_ModeThis type denotes which Schedule table can be requested by LIN TP during diagnostic session
Funktionen & Typen — Detailansicht
função LinIf_Init [SWS_LinIf_00198] 📄 PDF
void LinIf_Init (const LinIf_ConfigType* ConfigPtr);
Initializes the LIN Interface.
A função síncrona LinIf_Init serve para a inicialização da interface LIN de acordo com [SWS_LinIf_00198]. A interface possui o Service-ID 0x01, está disponível através do ficheiro de cabeçalho LinIf.h e é executada sincronamente.
Contexto de chamada e parâmetros
A função espera como único parâmetro ConfigPtr (const LinIf_ConfigType*), que serve como ponteiro para a configuração da interface LIN [SWS_LinIf_00198]. Não possui valor de retorno e não dispõe de parâmetros de entrada/saída ou puramente de saída.
Sequências de inicialização e interação
No âmbito da inicialização, a interface LIN efetua parametrizações específicas para nós escravos:
- De acordo com [SWS_LinIf_00767], o módulo inicializa em
LinIf_Inito endereço de nó inicial (initial NAD) e o endereço de nó configurado (configured NAD) do nó escravo com base nos parâmetros de configuraçãoLinIfInitialNADeLinIfConfiguredNAD. - De acordo com [SWS_LinIf_00768], o módulo inicializa em
LinIf_Initos PIDs configurados do nó escravo a partir dos dados de configuração através dos parâmetros de configuraçãoLinIfFrameId.
Simultaneidade e restrições
A função está especificada como não reentrante (Non Reentrant) [SWS_LinIf_00198]. Uma chamada concorrente ou sobreposta é, portanto, inadmissível. Códigos de erro específicos ou mensagens DET não são indicados no âmbito de especificação fornecido para este serviço.
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função LinIf_GetVersionInfo [SWS_LinIf_00340] 📄 PDF
void LinIf_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
função LinIf_Transmit [SWS_LinIf_00201] 📄 PDF
Std_ReturnType LinIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Re quests transmission of a PDU.
Utilização e contexto de chamada
A função LinIf_Transmit declarada em LinIf.h (ID de serviço 0x49) serve para a solicitação síncrona de transmissão de uma PDU [SWS_LinIf_00201]. Como parâmetro de entrada, ela espera TxPduId para a identificação unívoca da PDU a ser transmitida, bem como o ponteiro PduInfoPtr para uma estrutura PduInfoType, que, além do comprimento dos dados e dos próprios dados úteis, também pode referenciar metadados [SWS_LinIf_00201]. Não existem parâmetros adicionais de entrada/saída ou de saída [SWS_LinIf_00201].
Valores de retorno e requisitos de comportamento
Como valor de retorno, o serviço fornece o status Std_ReturnType [SWS_LinIf_00201]:
E_OK: A solicitação de transmissão foi aceita com sucesso pela interface LIN [SWS_LinIf_00201].E_NOT_OK: A solicitação de transmissão não pôde ser aceita [SWS_LinIf_00201].
A interação com os tipos de frame é especificada por [SWS_LinIf_00700]: Com a interface LIN inicializada, LinIf_Transmit também retorna E_OK se a PDU pertencer a um frame não esporádico em um nó LIN master ou a um frame não orientado a eventos em um nó LIN slave.
simultaneidade
Em relação ao ambiente de execução, LinIf_Transmit é reentrante para diferentes IDs de PDU, mas não pode ser chamada simultaneamente ou de forma concorrente para o mesmo TxPduId [SWS_LinIf_00201].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função LinIf_ScheduleRequest [SWS_LinIf_00202] 📄 PDF
Std_ReturnType LinIf_ScheduleRequest (NetworkHandleType Channel, LinIf_SchHandleType Schedule);
Requests a schedule table to be executed. Only used for LIN master nodes.
A função LinIf_ScheduleRequest serve exclusivamente em nós mestres LIN para solicitar a execução de uma tabela de escalonamento predefinida [SWS_LinIf_00202]. A chamada é processada assincronamente e foi concebida como reentrante [SWS_LinIf_00202].
Parâmetros e valores de retorno
Através do parâmetro Channel é transmitido o índice do canal LIN afetado, enquanto Schedule define a identificação da nova tabela de escalonamento a ser executada [SWS_LinIf_00202]. A função devolve o estado como Std_ReturnType:
E_OK: O pedido de mudança para a tabela de escalonamento foi aceite com sucesso [SWS_LinIf_00202].E_NOT_OK: A comutação foi rejeitada [SWS_LinIf_00202].
Condições de erro e restrições
Um valor de retorno de E_NOT_OK ocorre, de acordo com a especificação, nos seguintes casos de erro [SWS_LinIf_00202]:
- A interface LIN ainda não está inicializada.
- O canal referenciado não existe ou o índice transmitido situa-se fora da faixa de valores.
- A tabela de escalonamento referenciada não existe ou o seu identificador é inválido.
- O estado atual é Sleep.
Interação
A falha de uma solicitação de escalonamento afeta processos de transporte de nível superior: se, no âmbito de uma chamada a LinTp_Transmit através de BswM_LinTp_RequestMode, for iniciada uma mudança de escalonamento via LinIf_ScheduleRequest, LinTp_Transmit deve obrigatoriamente devolver E_NOT_OK se LinIf_ScheduleRequest responder com E_NOT_OK [SWS_LinIf_00878].
Esta nota de utilização baseia-se exclusivamente nos dados de especificação do AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função LinIf_GotoSleep [SWS_LinIf_00204] 📄 PDF
Std_ReturnType LinIf_GotoSleep (NetworkHandleType Channel);
Initiates a transition into the Sleep Mode on the selected channel.
usar
A função LinIf_GotoSleep (ID de serviço 0x06, declarada em LinIf.h) inicia a transição para o modo sleep no canal LIN especificado [SWS_LinIf_00204]. A chamada ocorre de forma assíncrona e recebe como parâmetro de entrada Channel do tipo NetworkHandleType o identificador do respectivo canal [SWS_LinIf_00204].
Valores de retorno e tratamento de erros
Como valor de retorno, o serviço fornece o tipo Std_ReturnType com os seguintes significados [SWS_LinIf_00204]:
E_OK: A solicitação de mudança para o modo sleep foi aceita com sucesso, a transição de estado para o modo sleep já está em andamento ou o controlador já se encontra no estado sleep [SWS_LinIf_00204].E_NOT_OK: A solicitação não foi aceita. As causas possíveis para isso são uma interface LIN ainda não inicializada ou um identificador de canal inexistente ou fora da faixa de valores válidos [SWS_LinIf_00204].
Concorrência e interação no sistema
A interface é definida como não reentrante (Non Reentrant) [SWS_LinIf_00204]. Se LinIf_GotoSleep for chamada, a interface LIN deve chamar imediatamente a função Lin_GotoSleepInternal e não pode aguardar até o próximo ciclo da função principal [SWS_LinIf_00757].
Esta nota de uso foi criada automaticamente com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função LinIf_Wakeup [SWS_LinIf_00205] 📄 PDF
Std_ReturnType LinIf_Wakeup (NetworkHandleType Channel);
Initiates the wake up process.
A função reentrante LinIf_Wakeup dispara o processo de wakeup assíncrono para o canal LIN identificado pelo parâmetro Channel [SWS_LinIf_00205]. Ela está disponível por meio do header LinIf.h [SWS_LinIf_00205].
O valor de retorno Std_ReturnType fornece informações sobre a aceitação da solicitação [SWS_LinIf_00205]:
E_OKsinaliza que a solicitação de wakeup foi aceita ou que o controlador já não se encontra no estado de repouso [SWS_LinIf_00205].E_NOT_OKé retornado se a LIN Interface não estiver inicializada, se o ID do canal fornecido estiver fora da faixa válida ou se as chamadas de driver subjacentesLin_WakeupouLin_WakeupInternalfalharem comE_NOT_OK[SWS_LinIf_00205].
A interação com o usuário ocorre por meio da função de callback <User>_WakeupConfirmation:
- Em caso de erro, a LIN Interface chama obrigatoriamente
<User>_WakeupConfirmation(FALSE)antes do retorno deE_NOT_OK[SWS_LinIf_00762]. - Em caso de aceitação bem-sucedida (
E_OK), a LIN Interface confirma o wakeup de forma assíncrona: Somente quando, em seguida, a funçãoLinIf_HeaderIndicationfor chamada pela primeira vez, o módulo emite a chamada<User>_WakeupConfirmation(TRUE)[SWS_LinIf_00761].
Este texto foi gerado automaticamente. Ele baseia-se nos requisitos da especificação AUTOSAR.
Guia do implementador em breve (complexidade I1)
função LinIf_SetTrcvMode [SWS_LinIf_00544] 📄 PDF
Std_ReturnType LinIf_SetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType TransceiverMode);
Set the given LIN transceiver to the given mode.
A função síncrona e reentrante LinIf_SetTrcvMode (ID de serviço 0x08) serve para comutar o transceiver LIN especificado para o modo de operação solicitado [SWS_LinIf_00544]. A interface está disponível por meio do arquivo de cabeçalho LinIf.h [SWS_LinIf_00544].
Parâmetros e valores de retorno
A chamada requer dois parâmetros de entrada [SWS_LinIf_00544]:
Channel(NetworkHandleType): Identifica o canal LIN a ser controlado [SWS_LinIf_00544].TransceiverMode(LinTrcv_TrcvModeType): Determina a transição de estado solicitada do transceiver [SWS_LinIf_00544].
O valor de retorno do tipo Std_ReturnType sinaliza o resultado do processo de comutação [SWS_LinIf_00544]:
E_OK: É retornado quando o estado do transceiver foi comutado com sucesso para o modo solicitado [SWS_LinIf_00544].E_NOT_OK: Sinaliza que a mudança de estado falhou ou que pelo menos um parâmetro está fora da faixa permitida. O estado anterior do transceiver permanece inalterado [SWS_LinIf_00544].
Execução e comportamento em caso de erro
A função é executada de forma síncrona e é especificada como reentrante [SWS_LinIf_00544]. Mensagens de erro específicas de DET ou DEM não estão listadas separadamente no elemento de especificação; uma falha na mudança de modo ou valores de parâmetros inadmissíveis levam diretamente ao valor de retorno E_NOT_OK [SWS_LinIf_00544].
Esta nota de uso foi gerada automaticamente com base na especificação do AUTOSAR CP R20-11.
Guia do implementador em breve (complexidade I1)
função LinIf_GetTrcvMode [SWS_LinIf_00545] 📄 PDF
Std_ReturnType LinIf_GetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType* TransceiverModePtr);
Returns the actual sta te of a LIN Transceiver Driver.
função LinIf_GetTrcvWakeupReason [SWS_LinIf_00547] 📄 PDF
Std_ReturnType LinIf_GetTrcvWakeupReason (NetworkHandleType Channel, LinTrcv_TrcvWakeupReasonType* TrcvWuReasonPtr);
Returns the reason for the wake up that has been detected by the LIN Transceiver Driver.
função LinIf_SetTrcvWakeupMode [SWS_LinIf_00550] 📄 PDF
Std_ReturnType LinIf_SetTrcvWakeupMode (NetworkHandleType Channel, LinTrcv_TrcvWakeupModeType LinTrcvWakeupMode);
This API enables, disables and cl ears the notification for wakeup events on the addressed network
A função síncrona e reentrante LinIf_SetTrcvWakeupMode serve para ativar, desativar ou reiniciar notificações para eventos de wake-up no canal LIN indicado [SWS_LinIf_00550]. A declaração é disponibilizada através do cabeçalho LinIf.h e possui o Service-ID 0x0b [SWS_LinIf_00550].
A interface espera dois parâmetros de entrada [SWS_LinIf_00550]:
Channel: Identificador unívoco da rede LIN ou canal LIN a endereçar do tipoNetworkHandleType[SWS_LinIf_00550].LinTrcvWakeupMode: Modo de wake-up solicitado do transcetor do tipoLinTrcv_TrcvWakeupModeType[SWS_LinIf_00550].
Como valor de retorno, a função fornece o status Std_ReturnType [SWS_LinIf_00550]:
E_OK: A chamada do serviço de API do controlador do transcetor LIN foi bem-sucedida e devolveuE_OK[SWS_LinIf_00550].E_NOT_OK: O serviço de API do controlador do transcetor LIN falhou (retornoE_NOT_OK) ou pelo menos um dos parâmetros transmitidos para o canal ou modo é inválido [SWS_LinIf_00550].
No que diz respeito à interação, a função delega o pedido ao controlador do transcetor LIN; presumivelmente, o LinIf constitui aqui uma interface intermediária entre as camadas superiores e o hardware do transcetor [SWS_LinIf_00550]. Pergunta Q-07b525a14a2c5fcd (aberta) Como o serviço está especificado como reentrante, pode ser executado em paralelo para canais diferentes ou para o mesmo canal [SWS_LinIf_00550].
Este texto foi gerado por uma IA e serve como guia de orientação. Determinantes são os documentos de especificação oficiais da AUTOSAR.
Guia do implementador em breve (complexidade I1)
função LinIf_GetPIDTable [SWS_LinIf_91002] 📄 PDF
Std_ReturnType LinIf_GetPIDTable (NetworkHandleType Channel, Lin_FramePidType* PidBuffer, uint8* PidBufferLength);
Retrieves all assigned PID values. The order is congruent to the LIN frame index. Only applicable for LIN slave nodes.
função LinIf_SetPIDTable [SWS_LinIf_91003] 📄 PDF
Std_ReturnType LinIf_SetPIDTable (NetworkHandleType Channel, Lin_FramePidType* PidBuffer, uint8 PidBufferLength);
Sets all assigned PID values. The order is congruent to the LIN frame index. Only applicable for LIN slave nodes.
função LinIf_GetConfiguredNAD [SWS_LinIf_00829] 📄 PDF
Std_ReturnType LinIf_GetConfiguredNAD (NetworkHandleType Channel, uint8* Nad);
Reports the current configured NAD. Only applicable for LIN slave nodes.
função LinIf_SetConfiguredNAD [SWS_LinIf_00833] 📄 PDF
Std_ReturnType LinIf_SetConfiguredNAD (NetworkHandleType Channel, uint8 Nad);
Sets the current configured NAD. Only applicable for LIN slave nodes.
função LinTp_Init [SWS_LinIf_00350] 📄 PDF
void LinTp_Init (const LinTp_ConfigType* ConfigPtr);
Initializes the LIN Transport Layer.
Utilização e contexto de chamada
A função LinTp_Init serve para a inicialização da camada de transporte do protocolo LIN ([SWS_LinIf_00350]). De acordo com a especificação [SWS_LinIf_00350], a chamada da função opera de forma síncrona.
A assinatura da função é void LinTp_Init (const LinTp_ConfigType* ConfigPtr). A configuração é transmitida através do parâmetro de entrada:
ConfigPtr(in): Ponteiro para os dados de configuração da camada de transporte LIN do tipoLinTp_ConfigType([SWS_LinIf_00350]).
A função não devolve qualquer valor de retorno (void) e não define parâmetros de saída nem de entrada/saída ([SWS_LinIf_00350]). Possui o Service-ID hexadecimal 0x40 e é disponibilizada através do ficheiro de cabeçalho LinIf.h ([SWS_LinIf_00350]).
Tratamento de erros
O requisito [SWS_LinIf_00350] não define códigos de erro específicos, mensagens DET ou eventos DEM para esta função. Não ocorre qualquer retorno de um estado de erro para o chamador ([SWS_LinIf_00350]).
Simultaneidade e restrições
A função LinTp_Init está explicitamente classificada como não reentrante (Non Reentrant) ([SWS_LinIf_00350]). Consequentemente, não pode ser chamada concorrentemente a partir de múltiplas threads, tarefas ou rotinas de interrupção. Interpretação: A chamada deverá ocorrer tipicamente de forma centralizada no âmbito da sequência de inicialização do software básico, antes que solicitações de comunicação subsequentes possam ser processadas. Pergunta Q-6e391bdf8abb1a09 (aberta)
Interação
Para LinTp_Init, não são listadas no presente excerto quaisquer ligações diretas a outros requisitos de especificação ou funções vizinhas ([SWS_LinIf_00350]). O módulo LinIf disponibiliza a declaração ([SWS_LinIf_00350]).
Esta nota de uso foi gerada automaticamente com base na especificação do AUTOSAR Classic Release R20-11.
Guia do implementador em breve (complexidade I1)
função LinTp_Transmit [SWS_LinIf_00351] 📄 PDF
Std_ReturnType LinTp_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Requests transmission of a PDU.
A função síncrona LinTp_Transmit serve para solicitar uma transmissão de PDU por meio do protocolo de transporte LIN ([SWS_LinIf_00351]). Como parâmetros de transferência, ela espera o identificador de PDU TxPduId, bem como o ponteiro PduInfoPtr, que fornece o comprimento dos dados e ponteiros para os dados da PDU e metadados ([SWS_LinIf_00351]). O valor de retorno é E_OK em caso de aceitação bem-sucedida da solicitação de envio e E_NOT_OK em caso de rejeição ([SWS_LinIf_00351]).
O comportamento em tempo de execução e a interação com a LIN Interface estão sujeitos às seguintes diretrizes:
- Solicitação de schedule: Se a troca de schedule iniciada em
LinIf_ScheduleRequestno âmbito da chamada viaBswM_LinTp_RequestModefalhar e retornarE_NOT_OK,LinTp_Transmittambém deve responder diretamente comE_NOT_OK([SWS_LinIf_00878]). - Confirmação: Apenas se
LinTp_Transmittiver sido bem-sucedida (valor de retornoE_OK), a LIN Interface chama a funçãoPduR_LinTpTxConfirmationcom resultado positivo ou negativo após a troca de schedule table bem-sucedida ou com falha ([SWS_LinIf_00702]). Se a ordem de envio for rejeitada, essa chamada é totalmente omitida ([SWS_LinIf_00702]). - Interrupção de processos em andamento: Se uma nova requisição física for disparada via
LinTp_Transmitdurante a espera por uma resposta física ou durante o recebimento de uma resposta, a LIN Interface aborta o tratamento de TP em andamento, incluindo a recepção e o monitoramento de timeout de N_Cr e P2, e aceita a nova requisição ([SWS_LinIf_00708]).
No que diz respeito à concorrência, LinTp_Transmit é reentrante para diferentes TxPduId, mas não pode ser executada concorrentemente para o mesmo TxPduId ([SWS_LinIf_00351]).
Esta nota de uso baseia-se na especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função LinTp_GetVersionInfo [SWS_LinIf_00352] 📄 PDF
void LinTp_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
função LinTp_Shutdown [SWS_LinIf_00355] 📄 PDF
void LinTp_Shutdown (void);
Shutdowns the LIN TP.
A função LinTp_Shutdown serve para o encerramento controlado do protocolo de transporte LIN ([SWS_LinIf_00355]). Através da sua chamada, a operação do componente LIN-TP é terminada ([SWS_LinIf_00355]). A declaração da função está disponível através do ficheiro de cabeçalho LinIf.h ([SWS_LinIf_00355]).
Para a utilização e execução aplicam-se as seguintes características de especificação ([SWS_LinIf_00355]):
- Parâmetros e valor de retorno: A função não possui parâmetros de entrada, de entrada/saída ou de saída (
void) e não devolve qualquer valor de retorno (void) ([SWS_LinIf_00355]). - Identificação do serviço: O serviço está definido sob o Service-ID
0x43([SWS_LinIf_00355]). - Sincronismo: A chamada é processada de forma síncrona ([SWS_LinIf_00355]).
- Reentrância: A função é não reentrante (Non Reentrant) ([SWS_LinIf_00355]). Chamadas concorrentes ou aninhadas a partir de diferentes contextos não são permitidas.
Códigos de erro específicos, mensagens de retorno para o Development Error Tracer (DET) ou tratamentos especiais em caso de erro não estão descritos nas fontes para esta função ([SWS_LinIf_00355]). Da mesma forma, faltam indicações sobre requisitos relacionados ou sobre o chamador exato; presumivelmente, a chamada ocorre no âmbito da desinicialização sequencial da pilha de comunicação por uma gestão de estados BSW de nível superior. Pergunta Q-e25a3c9531527c4f (aberta)
Esta nota de utilização foi criada automaticamente. Baseia-se exclusivamente nas informações de especificação do elemento AUTOSAR na release R20-11.
Guia do implementador em breve (complexidade I1)
função LinTp_ChangeParameter [SWS_LinIf_00501] 📄 PDF
Std_ReturnType LinTp_ChangeParameter (PduIdType id, TPParameterType parameter, uint16 value);
Request to change a specific transport protocol parameter (e.g. block size).
Utilização e semântica
A função síncrona LinTp_ChangeParameter serve para ajustar em tempo de execução um parâmetro específico do protocolo de transporte para uma determinada PDU [SWS_LinIf_00501]. Como parâmetros são transmitidos o identificador da PDU (id), o identificador do parâmetro do protocolo de transporte a ser alterado (parameter, por exemplo o tamanho do bloco), bem como o novo valor pretendido (value) [SWS_LinIf_00501]. A declaração é disponibilizada através do cabeçalho LinIf.h [SWS_LinIf_00501].
Valores de retorno e comportamento em caso de erro
A função sinaliza o resultado do pedido diretamente através do seu valor de retorno do tipo Std_ReturnType [SWS_LinIf_00501]:
E_OK: O parâmetro solicitado foi alterado com sucesso para o novo valor [SWS_LinIf_00501].E_NOT_OK: A alteração foi rejeitada pelo protocolo de transporte LIN [SWS_LinIf_00501]. Isto deverá ocorrer tipicamente se o parâmetro for inválido ou se uma transmissão em curso impedir a modificação. Pergunta Q-84aaf28c12dee2e9 (aberta)
Simultaneidade e restrições
De acordo com a especificação, LinTp_ChangeParameter está classificada como não reentrante (Non Reentrant) [SWS_LinIf_00501]. Uma chamada concorrente ou aninhada para o mesmo contexto ou contextos paralelos é, portanto, inadmissível e deve ser evitada pelo chamador. O fluxo síncrono bloqueia o chamador até à decisão sobre a adoção do valor do parâmetro [SWS_LinIf_00501].
Este texto foi criado por uma IA e baseia-se exclusivamente nos dados de especificação do AUTOSAR R20-11.
função LinIf_CheckWakeup [SWS_LinIf_00378] 📄 PDF
Std_ReturnType LinIf_CheckWakeup (EcuM_WakeupSourceType WakeupSource);
Will be called when the Ecu M has been notified about a wakeup on a specific LIN channel.
Utilização e contexto de chamada
A função síncrona LinIf_CheckWakeup é chamada assim que o módulo EcuM for notificado sobre um evento de wake-up num determinado canal LIN [SWS_LinIf_00378]. A chamada ocorre com o parâmetro de entrada WakeupSource do tipo EcuM_WakeupSourceType [SWS_LinIf_00378]. Este parâmetro especifica o dispositivo de origem que iniciou o evento de despertar, podendo tratar-se de um controlador LIN ou de um transcetor LIN [SWS_LinIf_00378].
Tratamento de erros e valores de retorno
Como valor de retorno a função fornece um status do tipo Std_ReturnType [SWS_LinIf_00378]:
E_OK: Não ocorreu qualquer erro durante a execução da interface [SWS_LinIf_00378].E_NOT_OK: Ocorreu um erro durante a execução da interface ou foi transmitido um valor inválido paraWakeupSource[SWS_LinIf_00378].
Simultaneidade e integração
A interface está especificada como reentrante, possui o Service-ID 0x60 e é disponibilizada através do ficheiro de cabeçalho LinIf.h [SWS_LinIf_00378]. Liga o processamento de despertar do EcuM diretamente aos canais da interface LIN [SWS_LinIf_00378].
Este texto foi gerado por uma IA com base na especificação AUTOSAR CP R20-11.
função LinIf_EnableBusMirroring [SWS_LinIf_00876] 📄 PDF
Std_ReturnType LinIf_EnableBusMirroring (NetworkHandleType Channel, boolean MirroringActive);
Enables or disables mirroring for a LIN channel.
A função síncrona e reentrante LinIf_EnableBusMirroring ativa ou desativa o espelhamento de barramento para um canal LIN individual [SWS_LinIf_00876]. Está disponível através do cabeçalho LinIf.h e pode ser omitida se o espelhamento de barramento não estiver ativado através do parâmetro de configuração LinIfBusMirroringSupport [SWS_LinIf_00875]. Como chamador deverá funcionar tipicamente o módulo Mirror. Pergunta Q-1703af5207cb7ade (aberta)
Através do parâmetro Channel é transmitido o canal LIN afetado, enquanto MirroringActive controla o modo [SWS_LinIf_00876]: aquando da transmissão de TRUE, o espelhamento é ativado, em FALSE desativado [SWS_LinIf_00876]. Como valor de retorno, a função devolve E_OK se o modo de espelhamento tiver sido alterado com sucesso, ou E_NOT_OK caso tenha sido indicado um canal inválido ou o espelhamento esteja globalmente desativado [SWS_LinIf_00876]. Mensagens de erro DET ou DEM específicas não são indicadas na definição da função [SWS_LinIf_00876].
Se o espelhamento de barramento estiver ativado globalmente através de LinIfBusMirroringSupported, bem como para o respetivo canal, a interface LIN encaminha eventos relevantes para Mirror_ReportLinFrame:
- Tramas recebidas em
LinIf_RxIndicationcom estadoLIN_RX_OKe ponteiro para os dados úteis [SWS_LinIf_00838], bem como na leitura do estado do driver LIN para slots Rx [SWS_LinIf_00873]. - Tramas enviadas em
LinIf_TxConfirmationcom estadoLIN_TX_OKe ponteiro para os dados transmitidos [SWS_LinIf_00839], bem como na leitura do estado do driver LIN para slots Tx [SWS_LinIf_00874]. - Notificações de erro em
LinIf_LinErrorIndicationpara todos os códigos de erro excetoLIN_ERR_HEADERcom estado de erro e ponteiro NULL como conteúdo de dados [SWS_LinIf_00869].
Esta nota de utilização foi gerada por uma IA com base na especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I1)
função LinIf_WakeupConfirmation [SWS_LinIf_00715] 📄 PDF
void LinIf_WakeupConfirmation (EcuM_WakeupSourceType WakeupSource);
The LIN Driver or LIN Transceiver Driver will call this function to report the wake up source after the successful wakeup detection during Check Wakeup or after power on by bus.
A função LinIf_WakeupConfirmation serve para comunicar à interface LIN a deteção bem-sucedida de um evento de despertar [SWS_LinIf_00715].
Chamada e parâmetros
A chamada é efetuada pelo controlador LIN (LIN Driver) ou pelo controlador do transcetor LIN (LIN Transceiver Driver), após ter ocorrido uma deteção bem-sucedida de despertar durante Check Wakeup ou após uma ativação através do barramento (power on by bus) [SWS_LinIf_00715]. Como parâmetro de transmissão é passado WakeupSource do tipo EcuM_WakeupSourceType, que indica o dispositivo de origem que iniciou o evento de despertar (controlador LIN ou transcetor LIN) [SWS_LinIf_00715].
Propriedades de execução e interface
- Semântica: A chamada é processada de forma síncrona [SWS_LinIf_00715].
- Reentrância: A função está especificada como reentrante [SWS_LinIf_00715].
- Valor de retorno: Não existe valor de retorno (
void) [SWS_LinIf_00715]. - Cabeçalho: A declaração é disponibilizada através de
LinIf.h(Service-ID:0x61) [SWS_LinIf_00715].
Este texto foi gerado por uma IA com base na especificação AUTOSAR.
função LinIf_HeaderIndication [SWS_LinIf_91004] 📄 PDF
Std_ReturnType LinIf_HeaderIndication (NetworkHandleType Channel, Lin_PduType* PduPtr);
The LIN Driver will call this function to report a received LIN header. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).
A função de callback LinIf_HeaderIndication é chamada sincronicamente pelo driver LIN para notificar o recebimento de um header LIN em um canal slave [SWS_LinIf_91004]. Ela está disponível exclusivamente se a ECU possuir pelo menos um canal LIN slave configurado [SWS_LinIf_91004]. A função é reentrante para canais diferentes, mas não pode ser chamada concorrentemente para o mesmo canal [SWS_LinIf_91004].
Por meio do parâmetro de entrada/saída PduPtr, o driver passa o identificador recebido (PID) bem como o ponteiro para o buffer de dados da SDU [SWS_LinIf_91004]. O LinIf avalia o PID e controla a reação do nó slave:
- Frame de recepção: Se o PID pertencer a um frame de recepção configurado, o LinIf define o tipo de checksum
PduPtr->Cs, o comprimento dos dadosPduPtr->Dle atribui o valorLIN_FRAMERESPONSE_RXaPduPtr->Drcantes do retorno [SWS_LinIf_00733]. - Frame de envio: Se for um frame de envio, o LinIf solicita os dados úteis via
<User_TriggerTransmit>[SWS_LinIf_00738]. Havendo disponibilização bem-sucedida (valor de retornoE_OKou dados SRF pelo Node Configuration Handler / protocolo de transporte), o checksum e o comprimento são configurados ePduPtr->Drcé definido comoLIN_FRAMERESPONSE_TX[SWS_LinIf_00739]. Se a consulta falhar comE_NOT_OK,PduPtr->Drcé definido comoLIN_FRAMERESPONSE_IGNORE[SWS_LinIf_00740]. - Frames irrelevantes: Se o frame não for relevante para o slave, o LinIf também define
PduPtr->DrccomoLIN_FRAMERESPONSE_IGNORE[SWS_LinIf_00748].
Além disso, cada chamada recarrega o timer de bus idle em execução [SWS_LinIf_00754]. Se a chamada ocorrer pela primeira vez após um LinIf_Wakeup bem-sucedido, <User>_WakeupConfirmation(TRUE) é disparado [SWS_LinIf_00761]. Ao receber um header SRF, o LinIf também inicia o timer N_As para Consecutive Frames (CF) [SWS_LinIf_00800]. Como valor de retorno, E_OK sinaliza a aceitação da solicitação, enquanto E_NOT_OK indica erros de desenvolvimento ou de produção [SWS_LinIf_91004].
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I2)
função LinIf_RxIndication [SWS_LinIf_91005] 📄 PDF
void LinIf_RxIndication (NetworkHandleType Channel, uint8* Lin_SduPtr);
The LIN Driver will call this function to report a successfully received response and provides the reception data to the LIN Interface. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).
A função de callback LinIf_RxIndication é chamada sincronicamente pelo driver LIN para comunicar à interface LIN o recebimento bem-sucedido de uma response, incluindo os dados recebidos [SWS_LinIf_91005]. A função está disponível exclusivamente em ECUs com pelo menos um canal LIN slave configurado [SWS_LinIf_91005].
Em relação à parametrização e concorrência, aplicam-se as seguintes condições:
- Parâmetros: São passados a identificação do canal
Channele o ponteiroLin_SduPtrpara um shadow buffer ou para o buffer de recepção mapeado em memória do hardware LIN [SWS_LinIf_91005]. Esse ponteiro é válido apenas em caso de response efetivamente recebida [SWS_LinIf_91005]. - Valor de retorno: A função não possui valor de retorno (
void) [SWS_LinIf_91005]. - Reentrância: A interface é reentrante para canais LIN diferentes, porém não reentrante para o mesmo canal [SWS_LinIf_91005].
Na interação com o comportamento do módulo, a chamada dispara várias ações coordenadas:
- Encaminhamento dos dados úteis recebidos e do comprimento dos dados úteis para a camada superior via
<User_RxIndication>[SWS_LinIf_00734]. - Verificação de comandos sleep: Se for um Master Request Frame (MRF) com o NAD 0, a interface LIN reconhece um comando go-to-sleep e inicia a transição para o modo sleep [SWS_LinIf_00750].
- Controle de timers: A cada chamada, o timer de bus idle é recarregado [SWS_LinIf_00754]. Além disso, em frames MRF (FF, CF), a chamada controla o timer N_Cr (início/reinício em FF e CF antes do último frame, parada no último CF) [SWS_LinIf_00805].
- Bus mirroring: Se o espelhamento estiver ativado globalmente e para o canal, a interface LIN reporta o frame com o status
LIN_RX_OKviaMirror_ReportLinFrame()[SWS_LinIf_00838].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função LinIf_TxConfirmation [SWS_LinIf_91006] 📄 PDF
void LinIf_TxConfirmation (NetworkHandleType Channel);
The LIN Driver will call this function to report a successfully transmitted response. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).
A função de callback síncrona LinIf_TxConfirmation (ID de serviço 0x7a, declarada em LinIf.h) é chamada pelo driver LIN para confirmar a transmissão bem-sucedida de uma resposta (response) no canal especificado [SWS_LinIf_91006]. A função não possui valor de retorno e destina-se exclusivamente a ECUs com pelo menos um canal LIN slave configurado [SWS_LinIf_91006].
Ao receber a confirmação, a interface LIN executa vários processamentos subsequentes:
- Notificação da camada superior: O módulo encaminha o evento de envio para a camada superior por meio da função de callback
<User_TxConfirmation>com o valor de retornoE_OK[SWS_LinIf_00741]. - Status de erro: Caso o frame transmitido com sucesso contenha o sinal de erro
response_error, a interface LIN redefine esse sinal [SWS_LinIf_00747]. - Monitoramento de repouso do barramento: Cada chamada de
LinIf_TxConfirmationrecarrega o timer de bus idle em execução do canal [SWS_LinIf_00754]. - Protocolo de transporte (LinTp): Se o driver confirmar a resposta a um header SRF (Slave Response Frame), a interface para o timer de monitoramento
N_As[SWS_LinIf_00800]. - Bus mirroring: Se o espelhamento estiver configurado globalmente via
LinIfBusMirroringSupportede ativado porLinIf_EnableBusMirroring(), a interface reporta o frame com o statusLIN_TX_OKe o ponteiro para os dados de envio paraMirror_ReportLinFrame()[SWS_LinIf_00839].
Quanto à concorrência, LinIf_TxConfirmation foi projetada para ser reentrante para diferentes canais LIN, mas não pode ser chamada de forma reentrante para o mesmo canal [SWS_LinIf_91006].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
função LinIf_LinErrorIndication [SWS_LinIf_91007] 📄 PDF
void LinIf_LinErrorIndication (NetworkHandleType Channel, Lin_SlaveErrorType ErrorStatus);
The LIN Driver will call this function to report a detected error event during header or response processing. This function is only applicable for LIN slave nodes (available only if the ECU has any LIN slave channel).
Utilização e contexto de chamada
A função síncrona LinIf_LinErrorIndication é chamada pelo driver LIN para reportar erros ocorridos durante o processamento do cabeçalho ou da resposta [SWS_LinIf_91007]. Ela é destinada exclusivamente a nós LIN slave e pressupõe que a ECU possua pelo menos um canal LIN slave configurado [SWS_LinIf_91007]. Como parâmetros, são transmitidos a identificação do canal Channel e o status do erro ocorrido ErrorStatus do tipo Lin_SlaveErrorType [SWS_LinIf_91007].
Tratamento de erros e simultaneidade
A função é reentrante para canais distintos, porém não deve ser chamada concorrentemente para o mesmo canal [SWS_LinIf_91007]. Ao ser chamada, o LIN Interface considera a resposta ou o frame transmitido como perdido e reporta o erro em tempo de execução LINIF_E_RESPONSE ao Default Error Tracer (DET), a menos que o status de erro reportado seja LIN_ERR_HEADER [SWS_LinIf_00735], [SWS_LinIf_00743].
Interação e monitoramento de barramento
Independentemente do código de erro transmitido, o LIN Interface recarrega o temporizador de barramento ocioso (bus idle timer) ativo a cada chamada de LinIf_LinErrorIndication [SWS_LinIf_00754]. Se ocorrer um erro em uma resposta SRF após a recepção de um cabeçalho SRF, o LIN Interface cancela a transmissão e reporta isso à camada superior por meio de PduR_LinTpTxConfirmation com o resultado E_NOT_OK [SWS_LinIf_00796].
Se o espelhamento de barramento (bus mirroring) estiver globalmente ativo via LinIfBusMirroringSupported e habilitado para o canal, o LIN Interface encaminha erros diferentes de LIN_ERR_HEADER via Mirror_ReportLinFrame() com um ponteiro NULL para o conteúdo dos dados [SWS_LinIf_00869]. Nessa etapa, os códigos de erro do driver são traduzidos previamente para os valores de status correspondentes do tipo Lin_StatusType [SWS_LinIf_00870].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR Classic R20-11.
Guia do implementador em breve (complexidade I2)
função <User_TriggerTransmit> [SWS_LinIf_00528] 📄 PDF
Std_ReturnType <User_TriggerTransmit> (PduIdType TxPduId, PduInfoType* PduInfoPtr);
Within this API, the upper layer module (called module) shall check whether the available data fits into the b uffer 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 ch anging Pdu Info Ptr.
A interface configurável <User_TriggerTransmit> serve para a obtenção síncrona de dados de SDU a partir de um módulo sobrejacente para uma transmissão pendente [SWS_LinIf_00528].
Através do parâmetro TxPduId identifica-se a SDU solicitada, enquanto PduInfoPtr é transmitido como ponteiro para uma estrutura com o buffer de destino (SduDataPtr) e o tamanho de buffer disponível (SduLength) [SWS_LinIf_00528]. O módulo sobrejacente chamado verifica dentro desta API se os dados prontos cabem no tamanho de buffer reportado [SWS_LinIf_00528]. Se houver espaço suficiente, o módulo copia os seus dados para SduDataPtr, atualiza SduLength com o número de bytes efetivamente copiados e sinaliza o sucesso com o valor de retorno E_OK [SWS_LinIf_00528].
Se, pelo contrário, o tamanho do buffer não for suficiente, nenhuns dados de SDU são copiados e o módulo devolve E_NOT_OK, sem alterar PduInfoPtr [SWS_LinIf_00528]. Com um valor de retorno de E_NOT_OK, o chamador não deve de forma alguma utilizar PduInfoPtr, uma vez que este pode apontar para dados inválidos ou ser um ponteiro NULL [SWS_LinIf_00528].
No que respeita à concorrência, a função é reentrante para IDs de PDU diferentes, mas não é reentrante para o mesmo ID de PDU [SWS_LinIf_00528].
Esta nota de utilização baseia-se na especificação AUTOSAR SWS_LinIf_00528.
função <User_TxConfirmation> [SWS_LinIf_00529] 📄 PDF
void <User_TxConfirmation> (PduIdType TxPduId, Std_ReturnType result);
The lower layer communication interface module confirms the transmission of a PDU, or the failure to transmit a PDU.
A função de callback configurável <User_TxConfirmation> é chamada pelo módulo de interface de comunicação subjacente para confirmar a uma camada superior a transmissão de uma PDU ou a falha da transmissão [SWS_LinIf_00529]. A chamada ocorre de forma síncrona e não devolve qualquer valor de retorno [SWS_LinIf_00529].
Parâmetros e semântica
TxPduId(In): Designa o identificador da PDU transmitida do tipoPduIdType[SWS_LinIf_00529].result(In): Reporta o estado de sucesso da transmissão comoStd_ReturnTypecom os valoresE_OKem caso de transmissão bem-sucedida da PDU ouE_NOT_OKem caso de transmissão falhada [SWS_LinIf_00529].
Simultaneidade e tratamento de erros
No que diz respeito à reentrância, a função foi concebida como reentrante para IDs de PDU diferentes, mas não pode ser chamada de forma reentrante para o mesmo ID de PDU [SWS_LinIf_00529]. O módulo não especifica quaisquer códigos de erro separados ou mensagens DET ou DEM para esta interface; em vez disso, a falha de uma transmissão é indicada através do valor do parâmetro E_NOT_OK [SWS_LinIf_00529]. O identificador real da função deverá ser definido de forma específica da integração, consoante a camada de utilizador configurada, uma vez que o serviço é indicado como configurável [SWS_LinIf_00529]. Pergunta Q-35de931161f26cb8 (aberta)
Este texto foi gerado por uma IA com base na especificação.
função <User_RxIndication> [SWS_LinIf_00530] 📄 PDF
void <User_RxIndication> (PduIdType RxPduId, const PduInfoType* PduInfoPtr);
Indication of a received PDU from a lower layer communication interface module.
A função de callback <User_RxIndication> serve para a sinalização de uma PDU recebida a partir de um módulo de interface de comunicação subjacente para a camada sobrejacente [SWS_LinIf_00530]. A chamada ocorre com semântica síncrona e não possui valor de retorno [SWS_LinIf_00530].
Parâmetros e especificação da interface
A função transmite dois parâmetros de entrada para a camada superior [SWS_LinIf_00530]:
RxPduId: Identificador da PDU recebida do tipoPduIdType[SWS_LinIf_00530].PduInfoPtr: Ponteiro para uma estrutura do tipoPduInfoType, que disponibiliza o comprimento dos dados úteis (SduLength), um ponteiro para o buffer com os dados úteis (SduDataPtr), bem como metadados associados à PDU [SWS_LinIf_00530].
Nem parâmetros de entrada/saída nem parâmetros puramente de saída estão previstos para esta interface [SWS_LinIf_00530].
Simultaneidade e configuração
Relativamente à reentrância, a função foi concebida como reentrante para IDs de PDU diferentes, mas está explicitamente especificada como não reentrante para IDs de PDU idênticos [SWS_LinIf_00530]. Os chamadores devem, portanto, assegurar que não ocorram chamadas sobrepostas para o mesmo RxPduId. A função está declarada como interface configurável [SWS_LinIf_00530]; o nome concreto da função da camada superior deverá, portanto, ser definido através da configuração do módulo. Pergunta Q-94175e8cd86775b6 (aberta)
Esta nota de utilização foi gerada automaticamente com base na especificação SWS_LinIf_00530.
função <User_ResponseErrorSignalChanged> [SWS_LinIf_00856] 📄 PDF
void <User_ResponseErrorSignalChanged> (NetworkHandleType Channel, boolean RespErrSigValue);
Notifies the change of the response error signal with the new value. Only applicable for LIN slave nodes. AUTOSAR CP R20 - of Document ID : AUTOSAR_ SWS_ LINInterface
A interface <User_ResponseErrorSignalChanged> serve no módulo LinIf como função de notificação para reportar uma alteração de valor do sinal Response-Error com o novo valor do sinal [SWS_LinIf_00856]. A chamada ocorre de forma síncrona e possui o Service ID 0x74 [SWS_LinIf_00856]. Não estão previstos parâmetros de entrada/saída nem valor de retorno; a assinatura é definida com o tipo de retorno void [SWS_LinIf_00856].
Como parâmetros de passagem, a função espera dois valores puramente de entrada [SWS_LinIf_00856]:
Channel(tipoNetworkHandleType): identificação unívoca do canal LIN afetado [SWS_LinIf_00856].RespErrSigValue(tipoboolean): valor atual do sinal Response-Error. O parâmetro étruese o sinal estiver definido como 1; caso contrário,false[SWS_LinIf_00856].
Em relação à concorrência e ao contexto de chamada, está estabelecido que a função é reentrante para canais diferentes, porém não pode ser chamada de forma reentrante para o mesmo canal [SWS_LinIf_00856]. Uma condição funcional de contorno consiste em que este serviço de notificação é aplicável exclusivamente para nós escravos LIN [SWS_LinIf_00856]. A declaração é disponibilizada por meio do arquivo de cabeçalho LinIf_Externals.h [SWS_LinIf_00856].
Este texto foi gerado por uma IA com base na especificação AUTOSAR R20-11.
função <User_SaveConfigurationRequest> [SWS_LinIf_00857] 📄 PDF
boolean <User_SaveConfigurationRequest> (NetworkHandleType Channel);
Notifies the reception of a Save Configuration request. Only applicable for LIN slave nodes.
A função de callback <User_SaveConfigurationRequest> (Service-ID 0x75) notifica uma camada superior sobre a receção de um pedido «Save Configuration» e está declarada em LinIf_Externals.h [SWS_LinIf_00857]. Esta interface é aplicável exclusivamente a nós escravos LIN [SWS_LinIf_00857].
A chamada ocorre sincronamente e está especificada como reentrante [SWS_LinIf_00857]:
- Parâmetros: Através do parâmetro de entrada
Channeldo tipoNetworkHandleTypeé transmitido o canal LIN afetado [SWS_LinIf_00857]. Não existem parâmetros adicionais de entrada ou de saída [SWS_LinIf_00857]. - Valor de retorno: A função devolve um valor do tipo
boolean[SWS_LinIf_00857]. O valor de retornoTRUEsinaliza que deve ser enviada uma resposta positiva para o barramento LIN, enquantoFALSEimpede a transmissão de qualquer resposta [SWS_LinIf_00857].
No que respeita ao tratamento de erros, a especificação não define códigos de erro específicos nem mensagens DET ou DEM [SWS_LinIf_00857]. O comportamento em caso de erro ou de rejeição é controlado diretamente através do valor de retorno booleano, ao impedir por FALSE o envio de uma resposta [SWS_LinIf_00857]. Como a chamada está classificada como reentrante, a função deverá estar concebida para a chamada concorrente em canais diferentes [SWS_LinIf_00857]. Pergunta Q-84432030c1aff644 (aberta)
Este texto foi gerado por uma IA com base na especificação da AUTOSAR R20-11.
tipo LinIf_SchHandleType [SWS_LinIf_00197] 📄 PDF
Index of the schedule table that is selectable and followed by LIN Interface. Value is unique per LIN c hannel/ controller, but not per ECU. The number of schedule tables is limited to 255
tipo LinIf_ConfigType [SWS_LinIf_00668] 📄 PDF
A pointer to an instance of this structure will be used in the initialization of the LIN Interface. The outline of the structure is defined in chapter 10 Configuration Specification.
tipo LinTp_ConfigType [SWS_LinIf_00426] 📄 PDF
This is the base type for the configuration of the LIN Transport Protocol A pointer to an instance of this structure will be used in the initialization of the LIN Transport Protocol. The outline of the structure is defined in chapter 10 Configuration Specification
tipo LinTp_Mode [SWS_LinIf_00629] 📄 PDF
This type denotes which Schedule table can be requested by LIN TP during diagnostic session
O tipo de enumeração LinTp_Mode é definido no arquivo de cabeçalho LinIf.h e especifica qual modo de schedule table pode ser solicitado pelo protocolo de transporte LIN (LIN TP) durante uma sessão de diagnóstico [SWS_LinIf_00629].
A faixa de valores abrange três literais de enumeração para o controle da troca de schedule no barramento LIN [SWS_LinIf_00629]:
LINTP_APPLICATIVE_SCHEDULE: Seleciona a schedule table de aplicação para o tráfego regular de mensagens [SWS_LinIf_00629].LINTP_DIAG_REQUEST: Seleciona a master request schedule table para a transmissão de solicitações de diagnóstico [SWS_LinIf_00629].LINTP_DIAG_RESPONSE: Seleciona a slave response schedule table para a recepção de respostas de diagnóstico [SWS_LinIf_00629].
Em relação à interação, o tipo serve para a comutação entre transmissões de diagnóstico e comunicação regular de aplicação dentro da interface LIN [SWS_LinIf_00629]. Contextos específicos de chamada, propriedades de reentrância ou tratamentos de erro (como mensagens de DET ou DEM) não são indicados nas fontes para este tipo de dados puro; presume-se que o tipo seja passado como parâmetro de função em chamadas de controle pelo protocolo de transporte LIN para a interface LIN. Pergunta Q-1bf7553401882471 (aberta)
Este texto foi gerado por uma IA e baseia-se exclusivamente nas especificações da release AUTOSAR R20-11.
Guia do implementador em breve (complexidade I1)
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_LinIf- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_LinIf@rel:R20-11#c251cc4a- Content hash
c251cc4a- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_LINInterface.pdf#nameddest=SWS_LinIf_00198
gemini-3.8-flash-low· 2026-10-13 · Original em alemão