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
function LinIf_Init [SWS_LinIf_00198] 📄 PDF
void LinIf_Init (const LinIf_ConfigType* ConfigPtr);
Initializes the LIN Interface.
Die synchrone Funktion LinIf_Init dient der Initialisierung des LIN-Interface gemäß [SWS_LinIf_00198]. Die Schnittstelle besitzt die Service-ID 0x01, ist über die Header-Datei LinIf.h verfügbar und wird synchron ausgeführt.
Aufrufkontext und Parameter
Die Funktion erwartet als einzigen Parameter ConfigPtr (const LinIf_ConfigType*), welcher als Zeiger auf die Konfiguration des LIN-Interface dient [SWS_LinIf_00198]. Sie besitzt keinen Rückgabewert und verfügt über keine Ein-/Ausgangs- oder reinen Ausgangsparameter.
Initialisierungsabläufe und Zusammenspiel
Im Rahmen der Initialisierung nimmt das LIN-Interface spezifische Einstellungen für Slave-Knoten vor:
- Gemäß [SWS_LinIf_00767] initialisiert das Modul in
LinIf_Initdie initiale Knotenadresse (initial NAD) und die konfigurierte Knotenadresse (configured NAD) des Slave-Knotens anhand der KonfigurationsparameterLinIfInitialNADundLinIfConfiguredNAD. - Gemäß [SWS_LinIf_00768] initialisiert das Modul in
LinIf_Initdie konfigurierten PIDs des Slave-Knotens aus den Konfigurationsdaten über die KonfigurationsparameterLinIfFrameId.
Nebenläufigkeit und Einschränkungen
Die Funktion ist als nicht reentrant (Non Reentrant) spezifiziert [SWS_LinIf_00198]. Ein nebenläufiger oder überlappender Aufruf ist daher unzulässig. Spezifische Fehlercodes oder DET-Meldungen sind im bereitgestellten Spezifikationsumfang für diesen Dienst nicht ausgewiesen.
Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function LinIf_GetVersionInfo [SWS_LinIf_00340] 📄 PDF
void LinIf_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
function LinIf_Transmit [SWS_LinIf_00201] 📄 PDF
Std_ReturnType LinIf_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Re quests transmission of a PDU.
Verwendung und Aufrufkontext
Die in LinIf.h deklarierte Funktion LinIf_Transmit (Service-ID 0x49) dient der synchronen Anforderung zur Übertragung einer PDU [SWS_LinIf_00201]. Als Eingangsparameter erwartet sie TxPduId zur eindeutigen Identifikation der zu sendenden PDU sowie den Zeiger PduInfoPtr auf eine PduInfoType-Struktur, die neben der Datenlänge und den eigentlichen Nutzdaten auch Metadaten referenzieren kann [SWS_LinIf_00201]. Zusätzliche Ein-/Ausgangs- oder Ausgabeparameter existieren nicht [SWS_LinIf_00201].
Rückgabewerte und Verhaltensanforderungen
Als Rückgabewert liefert der Dienst den Status Std_ReturnType [SWS_LinIf_00201]:
E_OK: Die Übertragungsanforderung wurde durch das LIN-Interface erfolgreich angenommen [SWS_LinIf_00201].E_NOT_OK: Die Anforderung zur Übertragung konnte nicht angenommen werden [SWS_LinIf_00201].
Das Zusammenspiel mit den Frame-Typen wird durch [SWS_LinIf_00700] präzisiert: Bei initialisiertem LIN-Interface gibt LinIf_Transmit auch dann E_OK zurück, wenn die PDU zu einem nicht-sporadischen Frame auf einem LIN-Master-Knoten oder zu einem nicht-ereignisgesteuerten Frame auf einem LIN-Slave-Knoten gehört.
Nebenläufigkeit
In Bezug auf die Ausführungsumgebung ist LinIf_Transmit reentrant für unterschiedliche PDU-IDs, darf jedoch für dieselbe TxPduId nicht zeitgleich bzw. nebenläufig aufgerufen werden [SWS_LinIf_00201].
Dieser Nutzungshinweis wurde automatisch auf Basis der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die Funktion LinIf_ScheduleRequest dient ausschließlich auf LIN-Master-Knoten dazu, die Ausführung einer vorgegebenen Schedule-Tabelle anzufordern [SWS_LinIf_00202]. Der Aufruf wird asynchron verarbeitet und ist reentrant ausgelegt [SWS_LinIf_00202].
Parameter und Rückgabewerte
Über den Parameter Channel wird der betroffene LIN-Kanalindex übergeben, während Schedule die Identifikation der neu auszuführenden Schedule-Tabelle festlegt [SWS_LinIf_00202]. Die Funktion liefert den Status als Std_ReturnType zurück:
E_OK: Der Wechselauftrag für die Schedule-Tabelle wurde erfolgreich entgegengenommen [SWS_LinIf_00202].E_NOT_OK: Die Umschaltung wurde abgelehnt [SWS_LinIf_00202].
Fehlerbedingungen und Einschränkungen
Ein Rückgabewert von E_NOT_OK tritt gemäß Spezifikation in folgenden Fehlerfällen auf [SWS_LinIf_00202]:
- Das LIN-Interface ist noch nicht initialisiert.
- Der referenzierte Kanal existiert nicht bzw. der übergebene Index liegt außerhalb des Wertebereichs.
- Die referenzierte Schedule-Tabelle existiert nicht bzw. deren Kennung ist ungültig.
- Der aktuelle Zustand ist Sleep.
Zusammenspiel
Das Scheitern einer Schedule-Anforderung wirkt sich auf übergeordnete Transportabläufe aus: Wird im Rahmen eines LinTp_Transmit-Aufrufs über BswM_LinTp_RequestMode ein Schedule-Wechsel via LinIf_ScheduleRequest initiiert, muss LinTp_Transmit zwingend E_NOT_OK zurückgeben, wenn LinIf_ScheduleRequest mit E_NOT_OK antwortet [SWS_LinIf_00878].
Dieser Nutzungshinweis basiert ausschließlich auf den Spezifikationsdaten von AUTOSAR Classic R20-11.
Implementer's Guide folgt (Komplexität I1)
function LinIf_GotoSleep [SWS_LinIf_00204] 📄 PDF
Std_ReturnType LinIf_GotoSleep (NetworkHandleType Channel);
Initiates a transition into the Sleep Mode on the selected channel.
Verwendung
Die Funktion LinIf_GotoSleep (Service-ID 0x06, deklariert in LinIf.h) initiiert den Übergang in den Sleep-Modus auf dem spezifizierten LIN-Kanal [SWS_LinIf_00204]. Der Aufruf erfolgt asynchron und übernimmt als Eingangsparameter Channel vom Typ NetworkHandleType die Kennung des betreffenden Kanals [SWS_LinIf_00204].
Rückgabewerte und Fehlerbehandlung
Als Rückgabewert liefert der Dienst den Typ Std_ReturnType mit folgenden Bedeutungen [SWS_LinIf_00204]:
E_OK: Die Anforderung zum Wechsel in den Sleep-Modus wurde erfolgreich akzeptiert, der Zustandsübergang in den Sleep-Modus läuft bereits oder der Controller befindet sich bereits im Sleep-Zustand [SWS_LinIf_00204].E_NOT_OK: Die Anforderung wurde nicht akzeptiert. Mögliche Ursachen hierfür sind ein noch nicht initialisiertes LIN-Interface oder ein nicht existierender bzw. außerhalb des gültigen Wertebereichs liegender Kanalbezeichner [SWS_LinIf_00204].
Nebenläufigkeit und Systemzusammenspiel
Die Schnittstelle ist als nicht reentrant (Non Reentrant) definiert [SWS_LinIf_00204]. Wird LinIf_GotoSleep aufgerufen, muss das LIN-Interface unmittelbar die Funktion Lin_GotoSleepInternal aufrufen und darf nicht bis zum nächsten Zyklus der Hauptfunktion warten [SWS_LinIf_00757].
Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation R20-11 erstellt.
Implementer's Guide folgt (Komplexität I1)
function LinIf_Wakeup [SWS_LinIf_00205] 📄 PDF
Std_ReturnType LinIf_Wakeup (NetworkHandleType Channel);
Initiates the wake up process.
Die reentrante Funktion LinIf_Wakeup stößt den asynchronen Aufwachprozess für den durch den Parameter Channel identifizierten LIN-Kanal an [SWS_LinIf_00205]. Sie steht über den Header LinIf.h zur Verfügung [SWS_LinIf_00205].
Der Rückgabewert Std_ReturnType gibt Aufschluss über die Annahme der Anforderung [SWS_LinIf_00205]:
E_OKsignalisiert, dass die Aufweckanforderung akzeptiert wurde oder sich der Controller bereits nicht mehr im Schlafzustand befindet [SWS_LinIf_00205].E_NOT_OKwird zurückgegeben, wenn das LIN Interface nicht initialisiert ist, die übergebene Kanal-ID außerhalb des gültigen Bereichs liegt oder die unterlagerten TreiberaufrufeLin_Wakeupbzw.Lin_WakeupInternalmitE_NOT_OKfehlschlagen [SWS_LinIf_00205].
Das Zusammenspiel mit dem Benutzer erfolgt über die Rückmeldefunktion <User>_WakeupConfirmation:
- Im Fehlerfall ruft das LIN Interface vor der Rückgabe von
E_NOT_OKzwingend<User>_WakeupConfirmation(FALSE)auf [SWS_LinIf_00762]. - Bei erfolgreicher Annahme (
E_OK) bestätigt das LIN Interface das Aufwachen asynchron: Erst wenn nachfolgend zum ersten Mal die FunktionLinIf_HeaderIndicationaufgerufen wird, setzt das Modul den Aufruf<User>_WakeupConfirmation(TRUE)ab [SWS_LinIf_00761].
Dieser Text wurde automatisch generiert. Er basiert auf den Anforderungen der AUTOSAR-Spezifikation.
Implementer's Guide folgt (Komplexität I1)
function LinIf_SetTrcvMode [SWS_LinIf_00544] 📄 PDF
Std_ReturnType LinIf_SetTrcvMode (NetworkHandleType Channel, LinTrcv_TrcvModeType TransceiverMode);
Set the given LIN transceiver to the given mode.
Die synchrone und reentrante Funktion LinIf_SetTrcvMode (Service-ID 0x08) dient dem Umschalten des angegebenen LIN-Transceivers in den angeforderten Betriebsmodus [SWS_LinIf_00544]. Die Schnittstelle ist über die Header-Datei LinIf.h verfügbar [SWS_LinIf_00544].
Parameter und Rückgabewerte
Der Aufruf erfordert zwei Eingabeparameter [SWS_LinIf_00544]:
Channel(NetworkHandleType): Identifiziert den zu steuernden LIN-Kanal [SWS_LinIf_00544].TransceiverMode(LinTrcv_TrcvModeType): Bestimmt den angeforderten Zustandsübergang des Transceivers [SWS_LinIf_00544].
Der Rückgabewert vom Typ Std_ReturnType signalisiert das Ergebnis des Umschaltvorgangs [SWS_LinIf_00544]:
E_OK: Wird zurückgegeben, wenn der Transceiver-Zustand erfolgreich in den angeforderten Modus gewechselt wurde [SWS_LinIf_00544].E_NOT_OK: Signalisiert, dass die Zustandsänderung fehlgeschlagen ist oder mindestens ein Parameter außerhalb des zulässigen Bereichs liegt. Der vorherige Zustand des Transceivers bleibt unverändert [SWS_LinIf_00544].
Ausführung und Fehlerverhalten
Die Funktion wird synchron ausgeführt und ist als reentrant spezifiziert [SWS_LinIf_00544]. Spezifische DET- oder DEM-Fehlermeldungen sind im Spezifikationselement nicht separat aufgeführt; ein Fehlschlagen der Modusänderung oder unzulässige Parameterwerte führen unmittelbar zum Rückgabewert E_NOT_OK [SWS_LinIf_00544].
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation von AUTOSAR CP R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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.
function 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.
function 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
Die synchrone und reentrante Funktion LinIf_SetTrcvWakeupMode dient dazu, Benachrichtigungen für Wakeup-Ereignisse auf dem angegebenen LIN-Kanal zu aktivieren, zu deaktivieren oder zurückzusetzen [SWS_LinIf_00550]. Die Deklaration wird über den Header LinIf.h bereitgestellt und besitzt die Service-ID 0x0b [SWS_LinIf_00550].
Die Schnittstelle erwartet zwei Eingangsparameter [SWS_LinIf_00550]:
Channel: Eindeutige Kennung des anzusprechenden LIN-Netzwerks bzw. -Kanals vom TypNetworkHandleType[SWS_LinIf_00550].LinTrcvWakeupMode: Angeforderter Wakeup-Modus des Transceivers vom TypLinTrcv_TrcvWakeupModeType[SWS_LinIf_00550].
Als Rückgabewert liefert die Funktion den Status Std_ReturnType [SWS_LinIf_00550]:
E_OK: Der Aufruf des API-Dienstes des LIN-Transceiver-Treibers war erfolgreich und lieferteE_OKzurück [SWS_LinIf_00550].E_NOT_OK: Der API-Dienst des LIN-Transceiver-Treibers schlug fehl (RückgabeE_NOT_OK) oder mindestens einer der übergebenen Parameter für Kanal oder Modus ist ungültig [SWS_LinIf_00550].
Hinsichtlich des Zusammenspiels delegiert die Funktion die Anforderung an den LIN-Transceiver-Treiber; vermutlich bildet das LinIf hierbei eine vermittelnde Schnittstelle zwischen oberen Schichten und der Transceiver-Hardware [SWS_LinIf_00550]. Frage Q-07b525a14a2c5fcd (offen) Da der Dienst als reentrant spezifiziert ist, darf er parallel für unterschiedliche oder denselben Kanal ausgeführt werden [SWS_LinIf_00550].
Dieser Text wurde von einer KI generiert und dient als Orientierungshilfe. Maßgeblich sind die offiziellen Spezifikationsdokumente von AUTOSAR.
Implementer's Guide folgt (Komplexität I1)
function 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.
function 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.
function 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.
function 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.
function LinTp_Init [SWS_LinIf_00350] 📄 PDF
void LinTp_Init (const LinTp_ConfigType* ConfigPtr);
Initializes the LIN Transport Layer.
Verwendung und Aufrufkontext
Die Funktion LinTp_Init dient der Initialisierung der Transportschicht des LIN-Protokolls ([SWS_LinIf_00350]). Gemäß Spezifikation [SWS_LinIf_00350] arbeitet der Funktionsaufruf synchron.
Die Funktionssignatur lautet void LinTp_Init (const LinTp_ConfigType* ConfigPtr). Über den Eingangsparameter wird die Konfiguration übergeben:
ConfigPtr(in): Zeiger auf die Konfigurationsdaten der LIN-Transportschicht vom TypLinTp_ConfigType([SWS_LinIf_00350]).
Die Funktion liefert keinen Rückgabewert (void) und definiert weder Ausgangs- noch Ein-/Ausgangsparameter ([SWS_LinIf_00350]). Sie besitzt die hexadezimale Service-ID 0x40 und wird über die Header-Datei LinIf.h bereitgestellt ([SWS_LinIf_00350]).
Fehlerbehandlung
Das Requirement [SWS_LinIf_00350] definiert für diese Funktion keine spezifischen Fehlercodes, DET-Meldungen oder DEM-Ereignisse. Es erfolgt keine Rückgabe eines Fehlerstatus an den Aufrufer ([SWS_LinIf_00350]).
Nebenläufigkeit und Einschränkungen
Die Funktion LinTp_Init ist explizit als nicht-reentrant (Non Reentrant) klassifiziert ([SWS_LinIf_00350]). Sie darf folglich nicht nebenläufig aus mehreren Threads, Tasks oder Unterbrechungsroutinen aufgerufen werden. Interpretation: Der Aufruf dürfte typischerweise zentral im Rahmen der Initialisierungssequenz der Basissoftware erfolgen, bevor nachfolgende Kommunikationsanforderungen verarbeitet werden können. Frage Q-6e391bdf8abb1a09 (offen)
Zusammenspiel
Für LinTp_Init sind im vorliegenden Auszug keine direkten Verknüpfungen zu weiteren Spezifikationsanforderungen oder Nachbarfunktionen aufgeführt ([SWS_LinIf_00350]). Das Modul LinIf stellt die Deklaration zur Verfügung ([SWS_LinIf_00350]).
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation von AUTOSAR Classic Release R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function LinTp_Transmit [SWS_LinIf_00351] 📄 PDF
Std_ReturnType LinTp_Transmit (PduIdType TxPduId, const PduInfoType* PduInfoPtr);
Requests transmission of a PDU.
Die synchrone Funktion LinTp_Transmit dient dem Anfordern einer PDU-Übertragung über das LIN-Transport-Protokoll ([SWS_LinIf_00351]). Als Übergabeparameter erwartet sie den PDU-Identifikator TxPduId sowie den Zeiger PduInfoPtr, der die Datenlänge sowie Zeiger auf die PDU-Daten und Metadaten bereitstellt ([SWS_LinIf_00351]). Der Rückgabewert ist E_OK bei erfolgreicher Annahme der Sendeanforderung und E_NOT_OK im Fall einer Ablehnung ([SWS_LinIf_00351]).
Das Laufzeitverhalten und das Zusammenspiel mit dem LIN Interface unterliegen folgenden Vorgaben:
- Schedule-Anforderung: Schlägt der im Rahmen des Aufrufs über
BswM_LinTp_RequestModeveranlasste Schedule-Wechsel beiLinIf_ScheduleRequestfehl und liefertE_NOT_OK, muss auchLinTp_Transmitdirekt mitE_NOT_OKantworten ([SWS_LinIf_00878]). - Bestätigung: Nur wenn
LinTp_Transmiterfolgreich war (RückgabewertE_OK), ruft das LIN Interface nach erfolgreichem oder fehlgeschlagenem Schedule-Table-Wechsel die FunktionPduR_LinTpTxConfirmationmit positivem oder negativem Ergebnis auf ([SWS_LinIf_00702]). Bei abgewiesenem Sendeauftrag unterbleibt dieser Aufruf vollständig ([SWS_LinIf_00702]). - Unterbrechung laufender Vorgänge: Wird während des Wartens auf eine physikalische Antwort oder während des Antwortempfangs ein neuer physikalischer Request über
LinTp_Transmitausgelöst, bricht das LIN Interface die laufende TP-Behandlung samt Empfang sowie N_Cr- und P2-Timeout-Überwachung ab und akzeptiert den neuen Request ([SWS_LinIf_00708]).
Hinsichtlich der Nebenläufigkeit ist LinTp_Transmit für unterschiedliche TxPduId reentrant, darf jedoch für dieselbe TxPduId nicht nebenläufig ausgeführt werden ([SWS_LinIf_00351]).
Dieser Nutzungshinweis basiert auf der Spezifikation AUTOSAR Classic R20-11.
Implementer's Guide folgt (Komplexität I1)
function LinTp_GetVersionInfo [SWS_LinIf_00352] 📄 PDF
void LinTp_GetVersionInfo (Std_VersionInfoType* versioninfo);
Returns the version information of this module.
function LinTp_Shutdown [SWS_LinIf_00355] 📄 PDF
void LinTp_Shutdown (void);
Shutdowns the LIN TP.
Die Funktion LinTp_Shutdown dient dem kontrollierten Herunterfahren des LIN-Transportprotokolls ([SWS_LinIf_00355]). Über ihren Aufruf wird der Betrieb der LIN-TP-Komponente beendet ([SWS_LinIf_00355]). Die Funktionsdeklaration ist über die Header-Datei LinIf.h verfügbar ([SWS_LinIf_00355]).
Für die Verwendung und Ausführung gelten die folgenden Spezifikationsmerkmale ([SWS_LinIf_00355]):
- Parameter und Rückgabewert: Die Funktion besitzt keine Eingabe-, Ein-/Ausgabe- oder Ausgabeparameter (
void) und liefert keinen Rückgabewert (void) zurück ([SWS_LinIf_00355]). - Dienstidentifikation: Der Service ist unter der Service-ID
0x43definiert ([SWS_LinIf_00355]). - Synchronizität: Der Aufruf wird synchron abgearbeitet ([SWS_LinIf_00355]).
- Reentranz: Die Funktion ist nicht reentrant (Non Reentrant) ([SWS_LinIf_00355]). Nebenläufige oder verschachtelte Aufrufe aus verschiedenen Kontexten sind nicht zulässig.
Spezifische Fehlercodes, Rückmeldungen an das Development Error Tracer (DET) oder Sonderbehandlungen bei Fehlern sind für diese Funktion in den Quellen nicht beschrieben ([SWS_LinIf_00355]). Ebenso fehlen Angaben zu verwandten Requirements oder dem exakten Aufrufer; vermutlich erfolgt der Aufruf im Rahmen der sequenziellen Deinitialisierung des Kommunikationsstapels durch ein übergeordnetes BSW-Zustandsmanagement. Frage Q-e25a3c9531527c4f (offen)
Dieser Nutzungshinweis wurde automatisiert erstellt. Er basiert ausschließlich auf den Spezifikationsangaben des AUTOSAR-Elements im Release R20-11.
Implementer's Guide folgt (Komplexität I1)
function 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).
Verwendung und Semantik
Die synchrone Funktion LinTp_ChangeParameter dient dazu, einen spezifischen Parameter des Transportprotokolls für eine bestimmte PDU zur Laufzeit anzupassen [SWS_LinIf_00501]. Als Parameter werden die PDU-Kennung (id), der Bezeichner des zu ändernden Transportprotokoll-Parameters (parameter, beispielsweise die Blockgröße) sowie der neue Zielwert (value) übergeben [SWS_LinIf_00501]. Die Deklaration wird über den Header LinIf.h bereitgestellt [SWS_LinIf_00501].
Rückgabewerte und Verhalten im Fehlerfall
Die Funktion signalisiert das Ergebnis der Anfrage unmittelbar über ihren Rückgabewert vom Typ Std_ReturnType [SWS_LinIf_00501]:
E_OK: Der angeforderte Parameter wurde erfolgreich auf den neuen Wert umgestellt [SWS_LinIf_00501].E_NOT_OK: Die Änderung wurde vom LIN-Transportprotokoll abgewiesen [SWS_LinIf_00501]. Dies dürfte typischerweise eintreten, wenn der Parameter ungültig ist oder eine laufende Übertragung die Modifikation verhindert. Frage Q-84aaf28c12dee2e9 (offen)
Nebenläufigkeit und Einschränkungen
Gemäß Spezifikation ist LinTp_ChangeParameter als nicht reentrant (Non Reentrant) eingestuft [SWS_LinIf_00501]. Ein nebenläufiger oder verschachtelter Aufruf für denselben oder parallele Kontexte ist daher unzulässig und muss durch den Aufrufer verhindert werden. Der synchrone Ablauf blockiert den Aufrufer bis zur Entscheidung über die Übernahme des Parameterwerts [SWS_LinIf_00501].
Dieser Text wurde von einer KI erstellt und basiert ausschließlich auf den Spezifikationsdaten von AUTOSAR R20-11.
function 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.
Verwendung und Aufrufkontext
Die synchrone Funktion LinIf_CheckWakeup wird aufgerufen, sobald das Modul EcuM über ein Wakeup-Ereignis auf einem bestimmten LIN-Kanal benachrichtigt wurde [SWS_LinIf_00378]. Der Aufruf erfolgt mit dem Eingangsparameter WakeupSource vom Typ EcuM_WakeupSourceType [SWS_LinIf_00378]. Dieser Parameter spezifiziert das Quellgerät, welches das Weckereignis initiiert hat, wobei es sich um einen LIN-Controller oder einen LIN-Transceiver handeln kann [SWS_LinIf_00378].
Fehlerbehandlung und Rückgabewerte
Als Rückgabewert liefert die Funktion einen Status vom Typ Std_ReturnType [SWS_LinIf_00378]:
E_OK: Während der Ausführung der Schnittstelle ist kein Fehler aufgetreten [SWS_LinIf_00378].E_NOT_OK: Bei der Ausführung der Schnittstelle ist ein Fehler aufgetreten oder es wurde ein ungültiger Wert fürWakeupSourceübergeben [SWS_LinIf_00378].
Nebenläufigkeit und Integration
Die Schnittstelle ist als reentrant spezifiziert, besitzt die Service-ID 0x60 und wird über die Header-Datei LinIf.h bereitgestellt [SWS_LinIf_00378]. Sie verbindet die Aufweck-Verarbeitung des EcuM direkt mit den Kanälen der LIN-Schnittstelle [SWS_LinIf_00378].
Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR CP R20-11 generiert.
function LinIf_EnableBusMirroring [SWS_LinIf_00876] 📄 PDF
Std_ReturnType LinIf_EnableBusMirroring (NetworkHandleType Channel, boolean MirroringActive);
Enables or disables mirroring for a LIN channel.
Die synchrone und reentrante Funktion LinIf_EnableBusMirroring aktiviert oder deaktiviert das Bus-Mirroring für einen einzelnen LIN-Kanal [SWS_LinIf_00876]. Sie steht über den Header LinIf.h zur Verfügung und kann entfallen, wenn das Bus-Mirroring über den Konfigurationsparameter LinIfBusMirroringSupport nicht aktiviert ist [SWS_LinIf_00875]. Als Aufrufer dürfte typischerweise das Mirror-Modul fungieren. Frage Q-1703af5207cb7ade (offen)
Über den Parameter Channel wird der betroffene LIN-Kanal übergeben, während MirroringActive den Modus steuert [SWS_LinIf_00876]: Bei Übergabe von TRUE wird das Mirroring aktiviert, bei FALSE deaktiviert [SWS_LinIf_00876]. Als Rückgabewert liefert die Funktion E_OK, wenn der Mirroring-Modus erfolgreich geändert wurde, oder E_NOT_OK, falls ein ungültiger Kanal angegeben wurde oder das Mirroring global deaktiviert ist [SWS_LinIf_00876]. Spezifische DET- oder DEM-Fehlermeldungen sind in der Funktionsdefinition nicht ausgewiesen [SWS_LinIf_00876].
Ist das Bus-Mirroring global über LinIfBusMirroringSupported sowie für den jeweiligen Kanal aktiviert, leitet das LIN-Interface relevante Ereignisse an Mirror_ReportLinFrame weiter:
- Empfangene Frames bei
LinIf_RxIndicationmit StatusLIN_RX_OKund Zeiger auf die Nutzdaten [SWS_LinIf_00838] sowie beim Auslesen des LIN-Treiberstatus für Rx-Slots [SWS_LinIf_00873]. - Gesendete Frames bei
LinIf_TxConfirmationmit StatusLIN_TX_OKund Zeiger auf die übertragenen Daten [SWS_LinIf_00839] sowie beim Auslesen des LIN-Treiberstatus für Tx-Slots [SWS_LinIf_00874]. - Fehlerbenachrichtigungen bei
LinIf_LinErrorIndicationfür alle Fehlercodes außerLIN_ERR_HEADERmit Fehlerstatus und NULL-Zeiger als Dateninhalt [SWS_LinIf_00869].
Dieser Nutzungshinweis wurde von einer KI auf Basis der Spezifikation AUTOSAR Classic R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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.
Die Funktion LinIf_WakeupConfirmation dient dazu, das erfolgreiche Erkennen eines Weckereignisses an das LIN-Interface zu melden [SWS_LinIf_00715].
Aufruf und Parameter
Der Aufruf erfolgt durch den LIN-Treiber (LIN Driver) oder den LIN-Transceiver-Treiber (LIN Transceiver Driver), nachdem eine erfolgreiche Weckerkennung während Check Wakeup oder nach einem Einschalten über den Bus (power on by bus) stattgefunden hat [SWS_LinIf_00715]. Als Übergabeparameter wird WakeupSource vom Typ EcuM_WakeupSourceType übergeben, welcher das Quellgerät angibt, das das Weckereignis initiiert hat (LIN-Controller oder LIN-Transceiver) [SWS_LinIf_00715].
Ausführungseigenschaften und Schnittstelle
- Semantik: Der Aufruf wird synchron abgewickelt [SWS_LinIf_00715].
- Reentranz: Die Funktion ist als reentrant spezifiziert [SWS_LinIf_00715].
- Rückgabewert: Es gibt keinen Rückgabewert (
void) [SWS_LinIf_00715]. - Header: Die Deklaration wird über
LinIf.hbereitgestellt (Service-ID:0x61) [SWS_LinIf_00715].
Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation generiert.
function 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).
Die Callback-Funktion LinIf_HeaderIndication wird synchron vom LIN-Treiber aufgerufen, um den Empfang eines LIN-Headers auf einem Slave-Kanal zu melden [SWS_LinIf_91004]. Sie steht ausschließlich zur Verfügung, wenn das Steuergerät über mindestens einen konfigurierten LIN-Slave-Kanal verfügt [SWS_LinIf_91004]. Die Funktion ist reentrant für unterschiedliche Kanäle, darf jedoch für denselben Kanal nicht nebenläufig aufgerufen werden [SWS_LinIf_91004].
Über den Inout-Parameter PduPtr übergibt der Treiber den empfangenen Identifier (PID) sowie den Zeiger auf den SDU-Datenpuffer [SWS_LinIf_91004]. Das LinIf wertet die PID aus und steuert die Reaktion des Slave-Knotens:
- Empfangsrahmen: Gehört die PID zu einem konfigurierten Empfangsrahmen, setzt das LinIf vor der Rückkehr die Prüfsummenart
PduPtr->Cs, die DatenlängePduPtr->Dlund weistPduPtr->Drcden WertLIN_FRAMERESPONSE_RXzu [SWS_LinIf_00733]. - Sederahmen: Handelt es sich um einen Sederahmen, fordert das LinIf die Nutzdaten via
<User_TriggerTransmit>an [SWS_LinIf_00738]. Bei erfolgreicher Bereitstellung (RückgabewertE_OKoder SRF-Daten durch Node Configuration Handler / Transportprotokoll) werden Prüfsumme und Länge konfiguriert sowiePduPtr->DrcaufLIN_FRAMERESPONSE_TXgesetzt [SWS_LinIf_00739]. Schlägt die Abfrage mitE_NOT_OKfehl, wirdPduPtr->DrcaufLIN_FRAMERESPONSE_IGNOREgesetzt [SWS_LinIf_00740]. - Irrelevante Rahmen: Ist der Rahmen für den Slave nicht relevant, setzt das LinIf
PduPtr->Drcebenfalls aufLIN_FRAMERESPONSE_IGNORE[SWS_LinIf_00748].
Zusätzlich lädt jeder Aufruf den laufenden Bus-Idle-Timer neu [SWS_LinIf_00754]. Erfolgt der Aufruf erstmals nach einem erfolgreichen LinIf_Wakeup, wird <User>_WakeupConfirmation(TRUE) ausgelöst [SWS_LinIf_00761]. Beim Empfang eines SRF-Headers startet das LinIf zudem den N_As-Timer für Consecutive Frames (CF) [SWS_LinIf_00800]. Als Rückgabewert signalisiert E_OK die Annahme der Anfrage, während E_NOT_OK Entwicklungs- oder Produktionsfehler anzeigt [SWS_LinIf_91004].
Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I2)
function 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).
Die Callback-Funktion LinIf_RxIndication wird synchron vom LIN-Treiber aufgerufen, um dem LIN-Interface den erfolgreichen Empfang einer Response inklusive der Empfangsdaten mitzuteilen [SWS_LinIf_91005]. Die Funktion steht ausschließlich auf Steuergeräten mit mindestens einem konfigurierten LIN-Slave-Kanal zur Verfügung [SWS_LinIf_91005].
Hinsichtlich Parametrierung und Nebenläufigkeit gelten folgende Bedingungen:
- Parameter: Übergeben werden die Kanalidentifikation
Channelsowie der ZeigerLin_SduPtrauf einen Shadow-Buffer oder den speicherabgebildeten Empfangspuffer der LIN-Hardware [SWS_LinIf_91005]. Dieser Zeiger ist nur bei tatsächlich empfangener Response gültig [SWS_LinIf_91005]. - Rückgabewert: Die Funktion besitzt keinen Rückgabewert (
void) [SWS_LinIf_91005]. - Reentranz: Die Schnittstelle ist reentrant für unterschiedliche LIN-Kanäle, jedoch nicht reentrant für denselben Kanal [SWS_LinIf_91005].
Im Zusammenspiel mit dem Modulverhalten stößt der Aufruf mehrere koordinierende Aktionen an:
- Weiterleitung der empfangenen Nutzdaten und der Nutzdatenlänge an die übergeordnete Schicht über
<User_RxIndication>[SWS_LinIf_00734]. - Prüfung auf Sleep-Kommandos: Handelt es sich um einen Master Request Frame (MRF) mit dem NAD 0, erkennt das LIN-Interface ein Go-to-Sleep-Kommando und leitet den Übergang in den Sleep-Modus ein [SWS_LinIf_00750].
- Timer-Steuerung: Bei jedem Aufruf wird der Bus-Idle-Timer neu geladen [SWS_LinIf_00754]. Zudem steuert der Aufruf bei MRF-Frames (FF, CF) den N_Cr-Timer (Start/Neustart bei FF und CF vor dem letzten Frame, Stopp beim letzten CF) [SWS_LinIf_00805].
- Bus-Mirroring: Ist das Mirroring global und für den Kanal aktiviert, meldet das LIN-Interface den Frame mit dem Status
LIN_RX_OKviaMirror_ReportLinFrame()weiter [SWS_LinIf_00838].
Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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).
Die synchrone Callback-Funktion LinIf_TxConfirmation (Service-ID 0x7a, deklariert in LinIf.h) wird vom LIN-Treiber aufgerufen, um die erfolgreiche Übertragung einer Antwort (Response) auf dem angegebenen Kanal zu bestätigen [SWS_LinIf_91006]. Die Funktion besitzt keinen Rückgabewert und ist ausschließlich für Steuergeräte mit mindestens einem konfigurierten LIN-Slave-Kanal vorgesehen [SWS_LinIf_91006].
Beim Eintreffen der Bestätigung führt das LIN-Interface mehrere Folgeverarbeitungen aus:
- Oberschicht-Benachrichtigung: Das Modul leitet das Sendeereignis über die Callback-Funktion
<User_TxConfirmation>mit dem RückgabewertE_OKan die übergeordnete Schicht weiter [SWS_LinIf_00741]. - Fehlerstatus: Falls der erfolgreich gesendete Frame das Fehlersignal
response_errorbeinhaltet, setzt das LIN-Interface dieses Signal zurück [SWS_LinIf_00747]. - Busruheüberwachung: Jeder Aufruf von
LinIf_TxConfirmationlädt den laufenden Bus-Idle-Timer des Kanals neu [SWS_LinIf_00754]. - Transportprotokoll (LinTp): Bestätigt der Treiber die Antwort auf einen SRF-Header (Slave Response Frame), stoppt das Interface den Überwachungstimer
N_As[SWS_LinIf_00800]. - Bus Mirroring: Ist das Spiegeln global über
LinIfBusMirroringSupportedkonfiguriert und perLinIf_EnableBusMirroring()aktiviert, meldet das Interface den Rahmen mit dem StatusLIN_TX_OKund Zeiger auf die Sendedaten anMirror_ReportLinFrame()[SWS_LinIf_00839].
Bezüglich der Nebenläufigkeit ist LinIf_TxConfirmation für unterschiedliche LIN-Kanäle reentrant ausgelegt, darf jedoch für denselben Kanal nicht reentrant aufgerufen werden [SWS_LinIf_91006].
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR R20-11 generiert.
Implementer's Guide folgt (Komplexität I1)
function 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).
Verwendung und Aufrufkontext
Die synchrone Funktion LinIf_LinErrorIndication wird vom LIN-Treiber aufgerufen, um aufgetretene Fehler während der Verarbeitung von Header oder Response zu melden [SWS_LinIf_91007]. Sie ist ausschließlich für LIN-Slave-Knoten vorgesehen und setzt voraus, dass das Steuergerät über mindestens einen konfigurierten LIN-Slave-Kanal verfügt [SWS_LinIf_91007]. Als Parameter werden die Kanalidentifikation Channel sowie der aufgetretene Fehlerstatus ErrorStatus vom Typ Lin_SlaveErrorType übergeben [SWS_LinIf_91007].
Fehlerbehandlung und Nebenläufigkeit
Die Funktion ist reentrant für unterschiedliche Kanäle, darf jedoch für denselben Kanal nicht nebenläufig aufgerufen werden [SWS_LinIf_91007]. Beim Aufruf betrachtet das LIN-Interface die Antwort bzw. den übertragenen Frame als verloren und meldet den Laufzeitfehler LINIF_E_RESPONSE an den Default Error Tracer (DET), es sei denn, der gemeldete Fehlerstatus lautet LIN_ERR_HEADER [SWS_LinIf_00735], [SWS_LinIf_00743].
Zusammenspiel und Bus-Überwachung
Unabhängig vom übergebenen Fehlercode lädt das LIN-Interface bei jedem Aufruf von LinIf_LinErrorIndication den laufenden Bus-Idle-Timer neu [SWS_LinIf_00754]. Tritt ein Fehler bei einer SRF-Response nach Empfang eines SRF-Headers auf, bricht das LIN-Interface die Übertragung ab und meldet dies der oberen Schicht über PduR_LinTpTxConfirmation mit dem Ergebnis E_NOT_OK [SWS_LinIf_00796].
Ist Bus-Mirroring über LinIfBusMirroringSupported global aktiv und für den Kanal eingeschaltet, leitet das LIN-Interface Fehler ungleich LIN_ERR_HEADER über Mirror_ReportLinFrame() mit einem NULL-Zeiger für den Dateninhalt weiter [SWS_LinIf_00869]. Hierbei werden die Treiberfehlercodes zuvor in entsprechende Statuswerte des Typs Lin_StatusType übersetzt [SWS_LinIf_00870].
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR Classic R20-11 generiert.
Implementer's Guide folgt (Komplexität I2)
function <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.
Die konfigurierbare Schnittstelle <User_TriggerTransmit> dient dem synchronen Abruf von SDU-Daten aus einem überlagerten Modul für eine anstehende Übertragung [SWS_LinIf_00528].
Über den Parameter TxPduId wird die angeforderte SDU identifiziert, während PduInfoPtr als Zeiger auf eine Struktur mit dem Zielpuffer (SduDataPtr) und der verfügbaren Puffergröße (SduLength) übergeben wird [SWS_LinIf_00528]. Das aufgerufene überlagerte Modul prüft innerhalb dieser API, ob die bereitstehenden Daten in die gemeldete Puffergröße passen [SWS_LinIf_00528]. Ist ausreichend Platz vorhanden, kopiert das Modul seine Daten nach SduDataPtr, aktualisiert SduLength mit der Anzahl der tatsächlich kopierten Bytes und signalisiert den Erfolg mit dem Rückgabewert E_OK [SWS_LinIf_00528].
Reicht die Puffergröße hingegen nicht aus, werden keine SDU-Daten kopiert und das Modul gibt E_NOT_OK zurück, ohne PduInfoPtr zu verändern [SWS_LinIf_00528]. Bei einem Rückgabewert von E_NOT_OK darf der Aufrufer PduInfoPtr keinesfalls verwenden, da dieser auf ungültige Daten verweisen oder ein NULL-Zeiger sein kann [SWS_LinIf_00528].
Hinsichtlich der Nebenläufigkeit ist die Funktion reentrant für unterschiedliche PDU-IDs, jedoch nicht reentrant für dieselbe PDU-ID [SWS_LinIf_00528].
Dieser Nutzungshinweis basiert auf der AUTOSAR-Spezifikation SWS_LinIf_00528.
function <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.
Die konfigurierbare Callback-Funktion <User_TxConfirmation> wird vom unterlagerten Kommunikationsschnittstellenmodul aufgerufen, um einer oberen Schicht die Übertragung einer PDU oder das Fehlschlagen der Übertragung zu bestätigen [SWS_LinIf_00529]. Der Aufruf erfolgt synchron und liefert keinen Rückgabewert zurück [SWS_LinIf_00529].
Parameter und Semantik
TxPduId(In): Bezeichnet die Kennung der übertragenen PDU vom TypPduIdType[SWS_LinIf_00529].result(In): Meldet den Erfolgsstatus der Übertragung alsStd_ReturnTypemit den WertenE_OKbei erfolgreicher PDU-Übertragung oderE_NOT_OKbei fehlgeschlagener Übertragung [SWS_LinIf_00529].
Nebenläufigkeit und Fehlerbehandlung
Hinsichtlich der Reentranz ist die Funktion für unterschiedliche PDU-IDs reentrant ausgelegt, darf jedoch für dieselbe PDU-ID nicht reentrant aufgerufen werden [SWS_LinIf_00529]. Das Modul spezifiziert für diese Schnittstelle keine gesonderten Fehlercodes oder DET- bzw. DEM-Meldungen; das Fehlschlagen einer Übertragung wird stattdessen über den Parameterwert E_NOT_OK angezeigt [SWS_LinIf_00529]. Der tatsächliche Funktionsbezeichner dürfte integrationsspezifisch je nach konfigurierter Benutzerschicht festgelegt werden, da der Dienst als konfigurierbar angegeben ist [SWS_LinIf_00529]. Frage Q-35de931161f26cb8 (offen)
Dieser Text wurde von einer KI auf Basis der Spezifikation generiert.
function <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.
Die Callback-Funktion <User_RxIndication> dient der Signalisierung einer empfangenen PDU von einem unterlagerten Kommunikationsschnittstellenmodul an die übergeordnete Schicht [SWS_LinIf_00530]. Der Aufruf erfolgt mit synchroner Semantik und besitzt keinen Rückgabewert [SWS_LinIf_00530].
Parameter und Schnittstellenspezifikation
Die Funktion übergibt zwei Eingangsparameter an den oberen Layer [SWS_LinIf_00530]:
RxPduId: Bezeichner der empfangenen PDU vom TypPduIdType[SWS_LinIf_00530].PduInfoPtr: Zeiger auf eine Struktur vom TypPduInfoType, welche die Länge der Nutzdaten (SduLength), einen Zeiger auf den Puffer mit den Nutzdaten (SduDataPtr) sowie zugehörige Metadaten zur PDU bereitstellt [SWS_LinIf_00530].
Weder Ein-/Ausgangsparameter noch reine Ausgangsparameter sind für diese Schnittstelle vorgesehen [SWS_LinIf_00530].
Nebenläufigkeit und Konfiguration
Bezüglich der Reentranz ist die Funktion für unterschiedliche PDU-IDs reentrant ausgelegt, für identische PDU-IDs hingegen explizit als nicht reentrant spezifiziert [SWS_LinIf_00530]. Aufrufer müssen daher sicherstellen, dass für dieselbe RxPduId keine überlappenden Aufrufe stattfinden. Die Funktion ist als konfigurierbare Schnittstelle deklariert [SWS_LinIf_00530]; der konkrete Funktionsname der oberen Schicht dürfte somit über die Modulkonfiguration festgelegt werden. Frage Q-94175e8cd86775b6 (offen)
Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation SWS_LinIf_00530 generiert.
function <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
Die Schnittstelle <User_ResponseErrorSignalChanged> dient im Modul LinIf als Benachrichtigungsfunktion, um eine Wertänderung des Response-Error-Signals mit dem neuen Signalwert zu melden [SWS_LinIf_00856]. Der Aufruf erfolgt synchron und besitzt die Service-ID 0x74 [SWS_LinIf_00856]. Weder Ein-/Ausgangsparameter noch ein Rückgabewert sind vorgesehen; die Signatur ist mit dem Rückgabetyp void definiert [SWS_LinIf_00856].
Als Übergabeparameter erwartet die Funktion zwei reine Eingangswerte [SWS_LinIf_00856]:
Channel(TypNetworkHandleType): Eindeutige Identifikation des betroffenen LIN-Kanals [SWS_LinIf_00856].RespErrSigValue(Typboolean): Aktueller Wert des Response-Error-Signals. Der Parameter isttrue, wenn das Signal auf 1 gesetzt ist, andernfallsfalse[SWS_LinIf_00856].
Hinsichtlich der Nebenläufigkeit und des Aufrufkontextes ist festgelegt, dass die Funktion reentrant für unterschiedliche Kanäle ist, jedoch nicht reentrant für denselben Kanal aufgerufen werden darf [SWS_LinIf_00856]. Eine funktionale Randbedingung besteht darin, dass dieser Benachrichtigungsdienst ausschließlich für LIN-Slave-Knoten anwendbar ist [SWS_LinIf_00856]. Bereitgestellt wird die Deklaration über die Header-Datei LinIf_Externals.h [SWS_LinIf_00856].
Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR R20-11 generiert.
function <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.
Die Callback-Funktion <User_SaveConfigurationRequest> (Service-ID 0x75) benachrichtigt eine übergeordnete Schicht über den Empfang eines „Save Configuration“-Requests und ist in LinIf_Externals.h deklariert [SWS_LinIf_00857]. Diese Schnittstelle ist ausschließlich für LIN-Slave-Knoten anwendbar [SWS_LinIf_00857].
Der Aufruf erfolgt synchron und ist als reentrant spezifiziert [SWS_LinIf_00857]:
- Parameter: Über den Eingangsparameter
Channelvom TypNetworkHandleTypewird der betroffene LIN-Kanal übergeben [SWS_LinIf_00857]. Zusätzliche Ein- oder Ausgangsparameter existieren nicht [SWS_LinIf_00857]. - Rückgabewert: Die Funktion liefert einen Wert vom Typ
booleanzurück [SWS_LinIf_00857]. Der RückgabewertTRUEsignalisiert, dass eine positive Antwort auf den LIN-Bus gesendet werden soll, währendFALSEdie Übertragung jeglicher Antwort unterbindet [SWS_LinIf_00857].
Hinsichtlich der Fehlerbehandlung definiert die Spezifikation weder spezifische Fehlercodes noch DET- oder DEM-Meldungen [SWS_LinIf_00857]. Das Verhalten im Fehler- oder Ablehnungsfall wird direkt über den booleschen Rückgabewert gesteuert, indem durch FALSE das Senden einer Antwort verhindert wird [SWS_LinIf_00857]. Da der Aufruf als reentrant klassifiziert ist, dürfte die Funktion für den nebenläufigen Aufruf auf unterschiedlichen Kanälen ausgelegt sein [SWS_LinIf_00857]. Frage Q-84432030c1aff644 (offen)
Dieser Text wurde durch eine KI auf Basis der Spezifikation von AUTOSAR R20-11 generiert.
type 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
type 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.
type 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
type LinTp_Mode [SWS_LinIf_00629] 📄 PDF
This type denotes which Schedule table can be requested by LIN TP during diagnostic session
Der Aufzählungstyp LinTp_Mode ist in der Header-Datei LinIf.h definiert und legt fest, welcher Schedule-Tabellen-Modus während einer Diagnosesitzung durch das LIN-Transport-Protokoll (LIN TP) angefordert werden kann [SWS_LinIf_00629].
Der Wertebereich umfasst drei Enumerations-Literale zur Steuerung des Schedule-Wechsels auf dem LIN-Bus [SWS_LinIf_00629]:
LINTP_APPLICATIVE_SCHEDULE: Wählt die applikative Schedule-Tabelle für den regulären Botschaftsverkehr aus [SWS_LinIf_00629].LINTP_DIAG_REQUEST: Wählt die Master-Request-Schedule-Tabelle zur Übertragung von Diagnoseanforderungen aus [SWS_LinIf_00629].LINTP_DIAG_RESPONSE: Wählt die Slave-Response-Schedule-Tabelle zum Empfang von Diagnoseantworten aus [SWS_LinIf_00629].
Hinsichtlich des Zusammenspiels dient der Typ der Umschaltung zwischen Diagnoseübertragungen und regulärer Applikationskommunikation innerhalb des LIN-Interface [SWS_LinIf_00629]. Spezifische Aufrufkontexte, Reentranz-Eigenschaften oder Fehlerbehandlungen (wie DET- oder DEM-Meldungen) sind für diesen reinen Datentyp in den Quellen nicht angegeben; vermutlich wird der Typ als Funktionsparameter bei Steuerungsaufrufen durch das LIN-Transport-Protokoll an das LIN-Interface übergeben. Frage Q-1bf7553401882471 (offen)
Dieser Text wurde von einer KI erstellt und basiert ausschließlich auf den Spezifikationen des AUTOSAR-Releases R20-11.
Implementer's Guide folgt (Komplexität 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#f55de959- Content hash
f55de959- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_LINInterface.pdf#nameddest=SWS_LinIf_00198
claude-opus-5-5· 2026-10-13