LIN State Manager (LinSM)
Manages state transitions of LIN networks.
Funktionen — Übersicht
void LinSM_Init (const LinSM_ConfigType* ConfigPtr);This function initializes the Lin SM.Std_ReturnType LinSM_ScheduleRequest (NetworkHandleType network, LinIf_SchHandleType schedule);The upper layer requests a schedule table to be changed on one LIN network.void LinSM_GetVersionInfo (Std_VersionInfoType* versioninfo);-Std_ReturnType LinSM_GetCurrentComMode (NetworkHandleType network, ComM_ModeType* mode);Function to query the current communication mode.Std_ReturnType LinSM_RequestComMode (NetworkHandleType network, ComM_ModeType mode);Requesting of a communication mode.void LinSM_MainFunction (void);Periodic function that runs the timers of different request timeoutsvoid LinSM_ScheduleRequestConfirmation (NetworkHandleType network, LinIf_SchHandleType schedule);The Lin If module will call this callback when the new requested schedule table is active.void LinSM_GotoSleepIndication (NetworkHandleType Channel);The Lin If will call this callback when the go to sleep command is received on the network or a bus idle timeout occurs.void LinSM_GotoSleepConfirmation (NetworkHandleType network, boolean success);The Lin If will call this callback when the go to sleep command is sent successfully or not sent successfully on the network.void LinSM_WakeupConfirmation (NetworkHandleType network, boolean success);The Lin If will call this callback when the wake up signal command is sent not successfully/ successfully on the network.
Typen — Übersicht
enum LinSM_ModeTypeType used to report the current mode to the Bsw Mstruct LinSM_ConfigTypeData structure type for the post - build configuration parameters.
Funktionen & Typen — Detailansicht
functie LinSM_Init [SWS_LinSM_00155] 📄 PDF
void LinSM_Init (const LinSM_ConfigType* ConfigPtr);
This function initializes the Lin SM.
De functie LinSM_Init dient voor de initialisatie van de softwaremodule LIN State Manager (LinSM) in het AUTOSAR Classic-platform [SWS_LinSM_00155].
Gebruik en interfaceparameters:
- Aanroepsynchronisatie: De uitvoering van de initialisatiefunctie is gespecificeerd als synchroon (
Synchronous) [SWS_LinSM_00155]. - Ingangsparameters: Als enige parameter wordt
ConfigPtrvan het typeconst LinSM_ConfigType*meegegeven [SWS_LinSM_00155]. Deze fungeert als pointer naar de post-build-configuratiegegevens van de LinSM [SWS_LinSM_00155]. - Verdere parameters en retourwaarde: De interface levert geen retourwaarde (
void) op [SWS_LinSM_00155]. Aanvullende in-/uitgangsparameters of zuivere uitgangsparameters bestaan niet [SWS_LinSM_00155]. - Headerbestand en service-identificatie: De declaratie wordt via het headerbestand
LinSM.hter beschikking gesteld en voert de service-ID0x01[SWS_LinSM_00155].
Gelijktijdigheid en beperkingen:
Voor de uitvoering van LinSM_Init is vastgelegd dat de functie niet re-entrant (Non reentrant) is [SWS_LinSM_00155]. Bijgevolg mag de aanroep noch parallel via meerdere threads noch onderbrekend door contexten met een hogere prioriteit plaatsvinden [SWS_LinSM_00155].
Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR CP R20-11.
Implementer's Guide volgt (complexiteit I2)
functie LinSM_ScheduleRequest [SWS_LinSM_00113] 📄 PDF
Std_ReturnType LinSM_ScheduleRequest (NetworkHandleType network, LinIf_SchHandleType schedule);
The upper layer requests a schedule table to be changed on one LIN network.
Gebruik
De functie LinSM_ScheduleRequest wordt door de hogere laag aangeroepen om de wissel van een schedule-tabel op een opgegeven LIN-kanaal aan te vragen [SWS_LinSM_00113]. De interface is gedefinieerd in het headerbestand LinSM.h, heeft de service-ID 0x10 en werkt asynchroon alsook re-entrant [SWS_LinSM_00113]. Bij de aanroep worden het betreffende kanaal via de parameter network (NetworkHandleType) en de gewenste nieuwe tabel via schedule (LinIf_SchHandleType) doorgegeven [SWS_LinSM_00113].
Foutafhandeling en retourwaarden
Werd het verzoek tot tabelomschakeling door de module geaccepteerd, dan retourneert de functie E_OK [SWS_LinSM_00113]. Kan de aanroep daarentegen niet worden uitgevoerd – bijvoorbeeld omdat de module nog niet is geïnitialiseerd –, dan levert de functie de retourwaarde E_NOT_OK op [SWS_LinSM_00113]. Specifieke foutcodes voor DET of DEM zijn voor deze service niet vermeld.
Randvoorwaarden en wisselwerking
De beschikbaarheid van de functie hangt in belangrijke mate af van de configuratieparameter LinSMNodeType: LinSM_ScheduleRequest is uitsluitend beschikbaar wanneer de module op ten minste één kanaal als LIN-master-node is geconfigureerd, en vervalt in zuivere LIN-slave-configuraties [SWS_LinSM_00241]. Op identieke wijze vereist ook de bijbehorende bevestigingsfunctie LinSM_ScheduleRequestConfirmation een master-node-configuratie [SWS_LinSM_00242]. De terugkoppeling aan de hogere laag over de succesvol voltooide asynchrone tabelwissel vindt vermoedelijk plaats via deze bevestigingsfunctie. Vraag Q-34c3ec02381c72ca (open)
Deze tekst is opgesteld door een AI; doorslaggevend is de AUTOSAR-specificatie.
Implementer's Guide volgt (complexiteit I1)
functie LinSM_GetVersionInfo [SWS_LinSM_00117] 📄 PDF
void LinSM_GetVersionInfo (Std_VersionInfoType* versioninfo);
-
functie LinSM_GetCurrentComMode [SWS_LinSM_00122] 📄 PDF
Std_ReturnType LinSM_GetCurrentComMode (NetworkHandleType network, ComM_ModeType* mode);
Function to query the current communication mode.
functie LinSM_RequestComMode [SWS_LinSM_00126] 📄 PDF
Std_ReturnType LinSM_RequestComMode (NetworkHandleType network, ComM_ModeType mode);
Requesting of a communication mode. The mode switch will not be made instant. The Lin SM will notify the caller when mode transition is made.
Gebruik en aanroepcontext
De in het headerbestand LinSM.h gedeclareerde functie LinSM_RequestComMode (service-ID 0x12) dient voor het asynchroon aanvragen van een communicatiemodus voor een meegegeven LIN-netwerk [SWS_LinSM_00126]. Via parameter network van het type NetworkHandleType wordt het desbetreffende LIN-kanaal geïdentificeerd, terwijl mode van het type ComM_ModeType de gewenste communicatiemodus specificeert [SWS_LinSM_00126]. De eigenlijke moduswissel vindt niet instantaan plaats; de LinSM stelt de aanroeper pas op de hoogte zodra de modulair-transitiefase succesvol is afgerond [SWS_LinSM_00126]. Interpretatie: ComM treedt vermoedelijk op als primaire aanroeper, aangezien de modusomschakeling op kanaalniveau wordt aangevraagd en bevestigd. Vraag Q-0fcce16df8a29149 (open)
Retourwaarden en concurrency
De interface is gespecificeerd als re-entrant en levert een statuswaarde van het type Std_ReturnType terug [SWS_LinSM_00126]:
E_OK: Het verzoek is succesvol geaccepteerd door de LinSM [SWS_LinSM_00126].E_NOT_OK: De uitvoering van het verzoek is niet mogelijk, bijvoorbeeld wanneer de LinSM-module nog niet geïnitialiseerd is [SWS_LinSM_00126].
Foutafhandeling en wisselwerking
In het kader van de foutafhandeling is een samenspel met de LIN-interface gedefinieerd: indien de onderliggende aanroep van LinIf_GotoSleep de retourwaarde E_NOT_OK oplevert, moet LinSM_RequestComMode verplicht eveneens E_NOT_OK teruggeven [SWS_LinSM_00177]. Wanneer de functie terugkeert met E_NOT_OK, moet in de LinSM dezelfde toestand gehandhaafd resp. ingesteld blijven, zodat de overeenkomstige terugmeldingen naar ComM_BusSM_ModeIndication en BswM_LinSM_CurrentState plaatsvinden [SWS_LinSM_00177].
Deze tekst is automatisch gegenereerd. Alle inhoudelijke uitspraken zijn uitsluitend gebaseerd op de specificatiegegevens van AUTOSAR R20-11.
Implementer's Guide volgt (complexiteit I2)
functie LinSM_MainFunction [SWS_LinSM_00156] 📄 PDF
void LinSM_MainFunction (void);
Periodic function that runs the timers of different request timeouts
Gebruik
De functie LinSM_MainFunction fungeert als centrale periodieke hoofdfunctie van de module LIN State Manager (LinSM) binnen de AUTOSAR Classic-architectuur [SWS_LinSM_00156]. Conform de specificatie heeft deze de syntaxis void LinSM_MainFunction (void) en de hexadecimale service-ID 0x30 [SWS_LinSM_00156]. Aangezien deze noch parameters accepteert noch een retourwaarde levert, werkt deze puur toestandgebaseerd in de module [SWS_LinSM_00156]. De primaire functionele taak ervan is het continu laten lopen en bijwerken van de interne timers, die verantwoordelijk zijn voor de bewaking van diverse time-outs van verzoeken (Request Timeouts) [SWS_LinSM_00156].
Aanroepcontext en scheduling
De declaratie van de interface geschiedt via het headerbestand SchM_LinSm.h [SWS_LinSM_00156]. Interpretatie: Op grond van deze integratie in de Schedule Manager zal de functie vermoedelijk cyclisch door de BSW-scheduler in de context van een besturingssysteemtaak worden aangeroepen. Vraag Q-d83f7b3f0b251f4f (open) Deze regelmatige cyclus is essentieel om actuele time-outvoorwaarden bij LIN-kanaal- en toestandsverzoeken deterministisch te kunnen herkennen en verwerken. Specifieke foutafhandelingen zoals DET-foutcodes of DEM-events alsmede formele re-entrantiecriteria zijn voor deze service in de onderhavige specificatieomvang niet gespecificeerd en vervallen daarom.
Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie van AUTOSAR R20-11.
Implementer's Guide volgt (complexiteit I1)
functie LinSM_ScheduleRequestConfirmation [SWS_LinSM_00129] 📄 PDF
void LinSM_ScheduleRequestConfirmation (NetworkHandleType network, LinIf_SchHandleType schedule);
The Lin If module will call this callback when the new requested schedule table is active.
Gebruik
De functie LinSM_ScheduleRequestConfirmation dient als callback-interface van de module LinSM en heeft de service-ID 0x20 [SWS_LinSM_00129]. Deze is beschikbaar via het headerbestand LinSM.h en wordt door de LIN-interface (LinIf) aangeroepen zodra een eerder aangevraagde nieuwe schedule-tabel actief is geworden op de LIN-bus [SWS_LinSM_00129].
De interface heeft geen retourwaarde (void) en geeft twee ingangsparameters door aan de LinSM [SWS_LinSM_00129]:
network(NetworkHandleType): Dient voor de eenduidige identificatie van het betreffende LIN-communicatiekanaal [SWS_LinSM_00129].schedule(LinIf_SchHandleType): Geeft de identifier resp. pointer naar de nieuw geactiveerde schedule-tabel door [SWS_LinSM_00129].
Gelijktijdigheid en wisselwerking
De uitvoering van LinSM_ScheduleRequestConfirmation is gespecificeerd als synchroon en re-entrant [SWS_LinSM_00129]. In- en uitgangsparameters (inout of out) zijn niet aanwezig [SWS_LinSM_00129]. De wisselwerking vindt nauw gekoppeld plaats met de module LinIf, die deze callback-functie aanroept om de statusovergang van de schedule-tabel aan de LinSM te bevestigen [SWS_LinSM_00129]. Interpretatie: Aangezien LinIf als aanroeper optreedt, zal de aanroepcontext vermoedelijk gekoppeld zijn aan de afhandeling van de LinIf-driver resp. -interface. Vraag Q-500d6a653bfbaac0 (open)
Deze gebruiksinstructie is automatisch opgesteld op basis van de AUTOSAR-specificatie.
Implementer's Guide volgt (complexiteit I1)
functie LinSM_GotoSleepIndication [SWS_LinSM_91000] 📄 PDF
void LinSM_GotoSleepIndication (NetworkHandleType Channel);
The Lin If will call this callback when the go to sleep command is received on the network or a bus idle timeout occurs. Only applicable for LIN slave nodes.
De callback-functie LinSM_GotoSleepIndication ([SWS_LinSM_91000]) dient om de LIN State Manager op de hoogte te stellen van het overschakelen van een kanaal naar de rusttoestand. De aanroep wordt uitgevoerd door de LIN Interface (LinIf) zodra op het netwerk een Go-to-Sleep-commando wordt ontvangen of een bus-idle-timeout optreedt.
Gebruik en aanroepcontext
De functie wordt synchroon uitgevoerd en heeft geen retourwaarde ([SWS_LinSM_91000]). Deze wordt beschikbaar gesteld via de header LinSM.h en voert service-ID 0x03. De enige parameter dient voor de kanaalidentificatie:
Channel(In): Identificeert het desbetreffende LIN-kanaal via het typeNetworkHandleType([SWS_LinSM_91000]).
Er zijn noch in-/uitgangsparameters (inout) noch uitgangsparameters (out) gespecificeerd ([SWS_LinSM_91000]).
Gelijktijdigheid en beperkingen
Wat betreft de concurrency is de interface gedefinieerd als re-entrant ([SWS_LinSM_91000]). Een wezenlijke functionele beperking betreft de node-eigenschap: de callback is uitsluitend bedoeld en toepasbaar voor LIN-slave-nodes ([SWS_LinSM_91000]).
Deze gebruiksinstructie is uitsluitend gebaseerd op de specificatiegegevens uit AUTOSAR Release R20-11.
Implementer's Guide volgt (complexiteit I1)
functie LinSM_GotoSleepConfirmation [SWS_LinSM_00135] 📄 PDF
void LinSM_GotoSleepConfirmation (NetworkHandleType network, boolean success);
The Lin If will call this callback when the go to sleep command is sent successfully or not sent successfully on the network.
De callback-functie LinSM_GotoSleepConfirmation wordt conform [SWS_LinSM_00135] door de LIN Interface (LinIf) aangeroepen zodra een Go-to-Sleep-commando op het LIN-netwerk is overgedragen of de overdracht is mislukt.
Gebruik en parameters
De callback heeft de service-ID 0x22, wordt gedeclareerd via de header LinSM.h en heeft geen retourwaarde [SWS_LinSM_00135]. Voor identificatie en statusoverdracht worden twee doorgifteparameters gebruikt:
network: Identificeert het betreffende LIN-kanaal via het typeNetworkHandleType[SWS_LinSM_00135].success: Geeft als booleaanse waarde aan of het Go-to-Sleep-commando succesvol op de bus kon worden verzonden (true) of niet (false) [SWS_LinSM_00135].
Uitvoeringscontext en gelijktijdigheid
De specificatie definieert de aanroep als synchroon en re-entrant [SWS_LinSM_00135]. Interpretatie: De module LinSM zal vermoedelijk aan de hand van de parameter success zijn interne status voor het betreffende netwerk bijwerken en vaststellen of de overgang naar de rusttoestand op de bus is bevestigd. Vraag Q-b5dfd51188b9ff0b (open) Foutafhandelingen, retourwaarden of specifieke DET- resp. DEM-meldingen zijn voor deze interface niet in de payload gespecificeerd [SWS_LinSM_00135].
Deze tekst is gegenereerd door een AI; uitsluitend de AUTOSAR-specificatie is bindend.
Implementer's Guide volgt (complexiteit I1)
functie LinSM_WakeupConfirmation [SWS_LinSM_00132] 📄 PDF
void LinSM_WakeupConfirmation (NetworkHandleType network, boolean success);
The Lin If will call this callback when the wake up signal command is sent not successfully/ successfully on the network.
De callback-functie LinSM_WakeupConfirmation dient in de LIN State Manager ter bevestiging voor het verzenden van een wake-upsignaal op een LIN-netwerk [SWS_LinSM_00132]. Deze wordt aangeroepen door de LIN-interface (LinIf) zodra de opdracht voor het uitzenden van het wakeup-signaal op het netwerk succesvol dan wel niet succesvol is overgedragen [SWS_LinSM_00132].
Voor de aanroepcontext, de concurrency en de parameteroverdracht gelden de volgende specificatiekenmerken [SWS_LinSM_00132]:
- Synchronisatiegedrag en re-entrantie: De uitvoering van de functie vindt synchroon (Synchronous) plaats en is geclassificeerd als re-entrant (Reentrant) [SWS_LinSM_00132].
- Kanaalidentificatie (
network): De meegegeven ingangsparameter van het typeNetworkHandleTypeduidt het respectieve LIN-kanaal aan waarop de verzendactie plaatsvond [SWS_LinSM_00132]. - Successtatus (
success): De booleaanse parameter geeft aan of het wakeup-signaal succesvol kon worden verzonden (true) dan wel de overdracht is mislukt (false) [SWS_LinSM_00132]. - Retourwaarde en in-/uitgangsparameters: De functie heeft geen retourwaarde (
void) en definieert uitgangs- noch in-/uitgangsparameters [SWS_LinSM_00132].
De interface heeft service-ID 0x21 en wordt beschikbaar gesteld via het headerbestand LinSM.h [SWS_LinSM_00132]. Specifieke foutcodes en vereisten voor foutafhandeling via de Default Error Tracer (DET) of de Diagnostic Event Manager (DEM) module zijn niet voorgeschreven in het specificatie-element [SWS_LinSM_00132].
Deze gebruiksinstructie is gebaseerd op de specificatie AUTOSAR Classic Release R20-11.
type LinSM_ModeType [SWS_LinSM_00220] 📄 PDF
Type used to report the current mode to the Bsw M
Het datatype LinSM_ModeType is een standaardtype van de LIN State Manager, dat voortbouwt op het basistype uint8 en via de header LinSM.h ter beschikking wordt gesteld [SWS_LinSM_00220]. De primaire taak van dit type bestaat erin de actuele communicatiemodus van een LIN-netwerk aan het BSW Mode Management (BswM) te melden [SWS_LinSM_00220].
Voor LinSM_ModeType zijn twee toestanden in het waardebereik gespecificeerd [SWS_LinSM_00220]:
LINSM_FULL_COM(numerieke waarde0x01): Signaleert de toestand van onbeperkte volledige communicatie (Full communication) [SWS_LinSM_00220].LINSM_NO_COM(numerieke waarde0x02): Duidt de toestand aan zonder lopende communicatie (No communication) [SWS_LinSM_00220].
Wat betreft foutafhandeling en gelijktijdigheid bevat de typedefinitie geen eigen foutcodes, DET-meldingen of DEM-events, aangezien het om een elementaire typedeclaratie gaat [SWS_LinSM_00220]. Interpretatie: De overdracht van waarden van dit type aan de BswM zal vermoedelijk plaatsvinden in het kader van overkoepelende toestandswisselingen van de LinSM, waarbij aanroepers ervoor moeten zorgen dat er geen ontoelaatbare waarden buiten de gedefinieerde toestanden worden doorgegeven. Vraag Q-fe193732b8be2388 (open)
Deze gebruiksinstructie is opgesteld door een AI.
Implementer's Guide volgt (complexiteit I1)
type LinSM_ConfigType [SWS_LinSM_00221] 📄 PDF
Data structure type for the post - build configuration parameters.
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/CP_MOD_LinSM- Status
- unspecified
- Version
AUTOSAR/AP/record/CP_MOD_LinSM@rel:R20-11#a2a4d496- Content hash
a2a4d496- Source
- https://www.autosar.org/fileadmin/standards/R20-11/CP/AUTOSAR_SWS_LINStateManager.pdf#nameddest=SWS_LinSM_00155
gemini-3.8-flash-low· 2026-10-13 · Duits origineel