DEENESPTFRRUARHIKOZHNL

LIN State Manager (LinSM)

ModulLinSM (LIN State Manager)
BSW-Modul-ID141
Standard-Header#include "LinSM.h"
SWS-SpezifikationAUTOSAR_SWS_LINStateManager.pdf
ClusterLIN

ModulegidsAI-GEGENEREERD

Stuurt per LIN-netwerk communicatiemodus, ontwaken, inslapen en wisseling van de schedule-tabellen aan.
DOOR AI GEGENEREERD ongecontroleerd Model: claude-opus-5-5 · Inspanning: high · Temperatuur: niet regelbaar · Prompt: 4c8293bd0eb8 Herkomst Open vragen (2)
Causaal anker: R20-11 Geldig vanaf R20-11 Nieuw gesynthetiseerd voor deze specificatiestand.
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Stuurt per LIN-netwerk communicatiemodus, ontwaken, inslapen en wisseling van de schedule-tabellen aan.

De LIN State Manager vertaalt de communicatiewensen van de ComM per LIN-netwerk naar aanroepen van de LIN Interface. De resulterende toestanden LINSM_FULL_COM en LINSM_NO_COM meldt hij aan ComM en BswM [SWS_LinSM_00126]. Ontwaken, inslapen en, alleen bij de master, de wisseling van de schedule-tabel start hij direct en bewaakt de bevestigingen met timers in LinSM_MainFunction. Bij de slave bepaalt de master het inslapen: pas LinSM_GotoSleepIndication triggert LinIf_GotoSleep [SWS_LinSM_00231]. Mislukt een overgang, dan meldt de LinSM de eerdere toestand opnieuw, zodat de hogere lagen consistent blijven.

De LIN State Manager is de bus-state-manager voor LIN. Hierdoor vraagt de ComM de communicatiemogelijkheid van een netwerk aan (SWS ComM p. 19). Moduswensen neemt hij via LinSM_RequestComMode in ontvangst [SWS_LinSM_00126]. Hij bestuurt het LinIf en meldt toestanden aan ComM en BswM [SWS_LinSM_00229]. Welke LIN-driver een netwerk bedient, blijft verborgen achter het LinIf (SWS LinSM p. 28).

kontext ComM ComM LinSM LinSM ComM->LinSM LinSM_RequestComMode LinSM_GetCurrentComMode BswM BswM BswM->LinSM LinSM_Init (Beispielregel) LinSM_ScheduleRequest SchM BSW-Scheduler (SchM) SchM->LinSM LinSM_MainFunction (periodisch) LinSM->ComM ComM_BusSM_ModeIndication ComM_BusSM_BusSleepMode LinSM->BswM BswM_LinSM_CurrentState BswM_LinSM_CurrentSchedule LinIf LinIf LinSM->LinIf LinIf_Wakeup / LinIf_GotoSleep LinIf_ScheduleRequest / LinIf_SetTrcvMode Det Det LinSM->Det Fehlermeldungen LinIf->LinSM LinSM_WakeupConfirmation LinSM_GotoSleepConfirmation LinSM_GotoSleepIndication LinSM_ScheduleRequestConfirmation Lin LIN-driver (één of meerdere) LinIf->Lin Zuordnung Netzwerk zu Treiber

Contextdiagram: ComM en BswM besturen de LinSM, de LinSM bestuurt het LinIf, en het LinIf koppelt terug via callbacks. Bronnen: [SWS_LinSM_00229], [SWS_LinSM_00138], SWS LinSM p. 28

Na LinSM_Init bevindt elk netwerk zich in LINSM_NO_COM [SWS_LinSM_00155]. ComM en BswM worden daarbij niet genotificeerd (SWS LinSM p. 23). Er mag alleen worden gecommuniceerd in LINSM_FULL_COM. Bij het binnengaan ontvangen ComM en BswM een melding, en de subtoestand LINSM_RUN_COMMUNICATION wordt betreden [SWS_LinSM_00301]. Voor de BswM zijn alleen LINSM_FULL_COM en LINSM_NO_COM zichtbaar [SWS_LinSM_00220].

zustaende cluster_init LINSM_INIT (je LIN-Netzwerk) cluster_full LINSM_FULL_COM Start Systemstart UNINIT LINSM_UNINIT Start->UNINIT NO_COM LINSM_NO_COM (Bus still) UNINIT->NO_COM LinSM_Init (geen melding aan ComM/BswM) RUN LINSM_RUN_COMMUNICATION NO_COM->RUN LinSM_WakeupConfirmation(TRUE) melding FULL_COM aan ComM en BswM GOTO LINSM_GOTO_SLEEP RUN->GOTO LinIf_GotoSleep levert E_OK op Master: ComM vraagt NO_COM aan Slave: LinSM_GotoSleepIndication GOTO->NO_COM LinSM_GotoSleepConfirmation (onafhankelijk van success) melding NO_COM aan ComM en BswM

Toestandsdiagram: per netwerk wisselt de LinSM door wakeup- en slaapbevestiging tussen LINSM_NO_COM en LINSM_FULL_COM. Bronnen: [SWS_LinSM_00155], [SWS_LinSM_00301], SWS LinSM p. 20

Ontwaken en inslapen start de LinSM direct tijdens de aanroep. De bevestigingen van het LinIf bewaakt hij met timers in LinSM_MainFunction [SWS_LinSM_00156] (SWS LinSM p. 28). Bij de master leidt een verzoek om COMM_NO_COMMUNICATION direct tot LinIf_GotoSleep [SWS_LinSM_00036]. Bij de slave wordt dit slechts opgeslagen [SWS_LinSM_00230]; pas LinSM_GotoSleepIndication triggert het inslapen [SWS_LinSM_00231]. Een silence-after-wakeup-timer vertraagt nieuwe wekpogingen [SWS_LinSM_00237].

Schedule-wisselingen bestaan alleen bij de master [SWS_LinSM_00241]. De LinSM geeft LinSM_ScheduleRequest direct door aan het LinIf en meldt het resultaat via BswM_LinSM_CurrentSchedule (SWS LinSM p. 26). Voor fouten geldt:

  • Ontwikkelfouten meldt de LinSM aan de DET, met de codes uit [SWS_LinSM_00053].
  • Een uitblijvende callback van het LinIf geldt als LINSM_E_CONFIRMATION_TIMEOUT [SWS_LinSM_00224].
  • Na een mislukte overgang stelt de LinSM de eerdere toestand opnieuw in, zodat ComM en BswM consistent geïnformeerd zijn [SWS_LinSM_00177].

Rol tussen ComM, BswM en LIN Interface

De LIN State Manager (LinSM) is de bus-state-manager voor LIN. Zoals bij de andere bus-state-managers vraagt de ComM via hem de communicatiemogelijkheid van een netwerk aan (SWS ComM p. 19). De centrale ingangsinterface daarvoor is LinSM_RequestComMode [SWS_LinSM_00126]. De actuele modus levert LinSM_GetCurrentComMode [SWS_LinSM_00122]. De LinSM werkt uitsluitend op netwerken. Welke LIN-driver een netwerk bedient, schermt het LinIf af. Daarom hebben regeleenheden met meerdere verschillende LIN-drivers geen invloed op de LinSM (SWS LinSM p. 28).

Tot de verplichte interfaces behoren LinIf_GotoSleep en LinIf_ScheduleRequest naar onderen evenals de meldingen ComM_BusSM_ModeIndication, ComM_BusSM_BusSleepMode, BswM_LinSM_CurrentState en BswM_LinSM_CurrentSchedule naar boven [SWS_LinSM_00229] (SWS LinSM p. 41). LinIf_Wakeup roept de LinSM aan in het ontwaakproces (SWS LinSM p. 27). Optioneel gebruikt hij Det_ReportError en LinIf_SetTrcvMode [SWS_LinSM_00138]. Het LinIf koppelt terug via de volgende callbacks:

De geïmporteerde types zoals ComM_ModeType, NetworkHandleType en LinIf_SchHandleType legt [SWS_LinSM_00219] vast.

kontext ComM ComM LinSM LinSM ComM->LinSM LinSM_RequestComMode LinSM_GetCurrentComMode BswM BswM BswM->LinSM LinSM_Init (Beispielregel) LinSM_ScheduleRequest SchM BSW-Scheduler (SchM) SchM->LinSM LinSM_MainFunction (periodisch) LinSM->ComM ComM_BusSM_ModeIndication ComM_BusSM_BusSleepMode LinSM->BswM BswM_LinSM_CurrentState BswM_LinSM_CurrentSchedule LinIf LinIf LinSM->LinIf LinIf_Wakeup / LinIf_GotoSleep LinIf_ScheduleRequest / LinIf_SetTrcvMode Det Det LinSM->Det Fehlermeldungen LinIf->LinSM LinSM_WakeupConfirmation LinSM_GotoSleepConfirmation LinSM_GotoSleepIndication LinSM_ScheduleRequestConfirmation Lin LIN-driver (één of meerdere) LinIf->Lin Zuordnung Netzwerk zu Treiber

Contextdiagram: de LinSM bemiddelt tussen ComM en BswM boven en het LinIf beneden; de LIN-drivers blijven verborgen achter het LinIf. Bronnen: [SWS_LinSM_00126], [SWS_LinSM_00229], [SWS_LinSM_00138], [SWS_LinSM_00156], SWS LinSM p. 28, Mode-Management-Guide p. 54

Toestandsmodel per LIN-netwerk, initialisatie en cyclisch deel

Bij de start is vóór elke API-aanroep de modulebrede toestand LINSM_UNINIT actief (SWS LinSM p. 22). LinSM_Init is synchroon en niet-re-entrant [SWS_LinSM_00155]. De functie ontvangt een pointer naar de post-build-configuratie van het implementatiespecifieke type LinSM_ConfigType [SWS_LinSM_00221]. Daarna bevindt elk netwerk zich in de subtoestand LINSM_NO_COM van de supertoestand LINSM_INIT. Deze eerste overgang meldt LinSM_Init noch aan ComM noch aan BswM, omdat de ComM op dat moment nog niet geïnitialiseerd hoeft te zijn (SWS LinSM p. 23). In het voorbeeld van de mode-management-guide roept een BswM-regel LinSM_Init(null) na Lin_Init en LinIf_Init aan (Mode-Management-Guide p. 54).

In LINSM_NO_COM blijft de bus stil (SWS LinSM p. 23). Alleen in LINSM_FULL_COM mag op de bus worden gecommuniceerd, en elk netwerk bereikt deze toestand onafhankelijk van de andere. Bij het binnengaan gebeurt het volgende (SWS LinSM p. 23):

  • ComM ontvangt een melding met COMM_FULL_COMMUNICATION, BswM een melding met LINSM_FULL_COM.
  • Als LinSMTransceiverPassiveMode is geconfigureerd, schakelt de LinSM de transceiver via LinIf_SetTrcvMode actief.
  • De subtoestand LINSM_RUN_COMMUNICATION wordt betreden [SWS_LinSM_00301].

De tijdelijke subtoestand LINSM_GOTO_SLEEP overbrugt het wachten op de slaapbevestiging (SWS LinSM p. 20, SWS LinSM p. 21). Voor de BswM zijn slechts twee waarden van LinSM_ModeType zichtbaar: LINSM_FULL_COM (0x01) en LINSM_NO_COM (0x02) [SWS_LinSM_00220].

De tijdbewaking loopt in LinSM_MainFunction. Deze periodieke functie beheert de timers van de time-outs van verzoeken [SWS_LinSM_00156]. Daar lopen ook de wakeup-bevestigingstimers af, met een eigen timer per netwerk (SWS LinSM p. 28). De feitelijke busacties start de LinSM daarentegen direct tijdens de aanroep en wacht niet op de volgende main-function-cyclus [SWS_LinSM_00036] [SWS_LinSM_00231].

zustaende cluster_init LINSM_INIT (je LIN-Netzwerk) cluster_full LINSM_FULL_COM Start Systemstart UNINIT LINSM_UNINIT Start->UNINIT NO_COM LINSM_NO_COM (Bus still) UNINIT->NO_COM LinSM_Init (geen melding aan ComM/BswM) RUN LINSM_RUN_COMMUNICATION NO_COM->RUN LinSM_WakeupConfirmation(TRUE) melding FULL_COM aan ComM en BswM GOTO LINSM_GOTO_SLEEP RUN->GOTO LinIf_GotoSleep levert E_OK op Master: ComM vraagt NO_COM aan Slave: LinSM_GotoSleepIndication GOTO->NO_COM LinSM_GotoSleepConfirmation (onafhankelijk van success) melding NO_COM aan ComM en BswM

Toestandsdiagram: per netwerk wisselt de LinSM door wakeup- en slaapbevestiging tussen LINSM_NO_COM en LINSM_FULL_COM; LINSM_GOTO_SLEEP is slechts een wachttoestand. Bronnen: [SWS_LinSM_00155], [SWS_LinSM_00301], SWS LinSM p. 20, SWS LinSM p. 21, SWS LinSM p. 24

Ontwaken: van LINSM_NO_COM naar LINSM_FULL_COM

Een LIN-netwerk wordt gewekt wanneer ComM via LinSM_RequestComMode volledige communicatie aanvraagt. Wekt een andere node de bus, dan handelt niet de LinSM dit af, maar de EcuM; ook dit geval leidt tot een aanvraag door ComM (SWS LinSM p. 27). De LinSM roept dan direct LinIf_Wakeup aan en reset de teller voor het maximale aantal herhalingen. Als het LinIf al wakker is, negeert het de aanroep. Voorafgaand aan de aanroep start de LinSM voor het kanaal de wakeup-bevestigingstimer met LinSMConfirmationTimeout. Deze waarde moet 0 of een geheel veelvoud van de main-function-periode zijn (SWS LinSM p. 28).

Meldt LinSM_WakeupConfirmation success = TRUE, dan wisselt het netwerk naar LINSM_FULL_COM [SWS_LinSM_00132]. In alle andere gevallen stelt de LinSM de toestand van vóór de aanvraag opnieuw in, zodat ComM en BswM desondanks een modusindicatie ontvangen (SWS LinSM p. 27). Bij de slave bevestigt de LinIf pas wanneer deze de eerste LIN-header van de master ontvangt. Begint de master niet met de scheduling, dan blijft de bevestiging uit en treedt de time-out van de LinSM in werking (SWS LinIf p. 52).

Wekken van een LIN-netwerk (interne wake-up)ComMLinSMLinIfBswMLinSM_RequestComMode(network,COMM_FULL_COMMUNICATION)Wake-up-bevestigingstimer starten(LinSMConfirmationTimeout)LinIf_Wakeup(Channel)direct, niet in LinSM_MainFunctionE_OKE_OKMaster: bevestiging na verzenden van het wake-up-signaalSlave: bevestiging met eerste ontvangen LIN-headeraltsuccess = TRUELinSM_WakeupConfirmation(network, TRUE)Timer stoppenLINSM_FULL_COM / LINSM_RUN_COMMUNICATIONComM_BusSM_ModeIndication(network,COMM_FULL_COMMUNICATION)BswM_LinSM_CurrentState(network, LINSM_FULL_COM)success = FALSELinSM_WakeupConfirmation(network, FALSE)Toestand van vóór het verzoek opnieuw instellenComM_BusSM_ModeIndication(network, bisheriger Modus)BswM_LinSM_CurrentState(network, bisheriger Zustand)geen bevestigingLinSM_MainFunction: Timer abgelaufenLINSM_E_CONFIRMATION_TIMEOUT

Sequentiediagram: De LinSM wekt het netwerk direct in de aanroep, maar de toestandsverandering volgt pas met de asynchrone bevestiging van de LinIf. Bronnen: [SWS_LinSM_00126], [SWS_LinSM_00132], [SWS_LinSM_00224], SWS LinSM p. 42, SWS LinSM p. 27

Een tweede tijdgrens is de silence-after-wakeup-timer met LinSMSilenceAfterWakeupTimeout [SWS_LinSM_00235]. Zolang deze loopt, vertraagt de LinSM een nieuwe aanroep van LinIf_Wakeup, ook wanneer ComM volledige communicatie aanvraagt [SWS_LinSM_00237]. Na afloop ervan start de LinSM het wakeup-proces opnieuw, mits ComM nog steeds COMM_FULL_COMMUNICATION aanvraagt [SWS_LinSM_00236]. De voorwaarde die de timer start, staat in een requirement die hier niet beschikbaar is. Deze wordt daarom niet beschreven.

wakeup_entscheidung A ComM: LinSM_RequestComMode (COMM_FULL_COMMUNICATION) B Silence-after-wake-up-timer loopt? A->B C LinIf_Wakeup vertragen tot afloop van de timer B->C ja D Herhaalteller resetten wake-up-bevestigingstimer starten B->D nein C->D Timer abgelaufen E LinIf_Wakeup(Channel) direkt aufrufen D->E F Terugkoppeling van het LinIf? E->F G LINSM_FULL_COM melding aan ComM en BswM F->G WakeupConfirmation TRUE H Toestand van vóór het verzoek opnieuw instellen en melden F->H WakeupConfirmation FALSE I LinSM_MainFunction: Timer abgelaufen LINSM_E_CONFIRMATION_TIMEOUT F->I geen bevestiging J Silence-after-wake-up-time-out en COMM_FULL_COMMUNICATION verder aangevraagd J->D Wake-up-proces opnieuw starten

Activiteitendiagram: Een aanvraag voor volledige communicatie eindigt afhankelijk van de timerstatus en terugmelding in LINSM_FULL_COM, in de oude toestand of in een bevestigingstime-out. Bronnen: [SWS_LinSM_00237], [SWS_LinSM_00236], [SWS_LinSM_00224], SWS LinSM p. 27, SWS LinSM p. 28

In slaap vallen: de master vraagt aan, de slave volgt de bus

Het goto-sleep-verloop verschilt tussen master en slave. In beide gevallen meldt de LinSM het binnengaan van de no-communication-modus aan BswM en ComM, ook wanneer er een probleem optrad (SWS LinSM p. 24).

Bij de master geldt:

  • Vraagt ComM in LINSM_FULL_COM COMM_NO_COMMUNICATION aan, dan roept de LinSM LinIf_GotoSleep aan, die het goto-sleep-commando verzendt [SWS_LinSM_10208].
  • De aanroep vindt direct plaats [SWS_LinSM_00036]. In alle andere gevallen blijft deze achterwege [SWS_LinSM_10209].
  • De aanroep is alleen toegestaan in de subtoestand LINSM_RUN_COMMUNICATION (SWS LinSM p. 24).
  • Levert LinIf_GotoSleep E_NOT_OK op, dan retourneert ook LinSM_RequestComMode E_NOT_OK. De voorgaande toestand wordt opnieuw ingesteld, zodat ComM en BswM een indicatie ontvangen [SWS_LinSM_00177].

Daarna roept de LinIf LinSM_GotoSleepConfirmation aan [SWS_LinSM_00135]. Bevindt de LinSM zich dan in LINSM_FULL_COM/LINSM_GOTO_SLEEP, dan wisselt deze naar LINSM_NO_COM, ongeacht de parameter success. In elke andere toestand negeert deze de bevestiging (SWS LinSM p. 24). Het diagram van de specificatie start een timer vóór LinIf_GotoSleep en stopt deze na de bevestiging (SWS LinSM p. 47).

In slaap gaan van een LIN-netwerk (master)ComMLinSMLinIfBswMLinSM_RequestComMode(network,COMM_NO_COMMUNICATION)alleen in LINSM_FULL_COM / LINSM_RUN_COMMUNICATIONdirecte aanroep, niet in LinSM_MainFunctionstart_timer()LinIf_GotoSleep(Channel)altLinIf_GotoSleep = E_OKE_OKUnterzustand LINSM_GOTO_SLEEPE_OKLinSM_GotoSleepConfirmation(network, success)stop_timer()LINSM_NO_COM (onafhankelijk van success)ComM_BusSM_ModeIndication(network,COMM_NO_COMMUNICATION)BswM_LinSM_CurrentState(network, LINSM_NO_COM)LinIf_GotoSleep = E_NOT_OKE_NOT_OKbisherigen Zustand erneut setzenE_NOT_OKComM_BusSM_ModeIndication(network,COMM_FULL_COMMUNICATION)BswM_LinSM_CurrentState(network, LINSM_FULL_COM)

Sequentiediagram: Bij de master triggert ComM het in slaap vallen; LINSM_NO_COM wordt pas bereikt met de slaapbevestiging, een E_NOT_OK van LinIf_GotoSleep leidt tot het opnieuw melden van de oude toestand. Bronnen: [SWS_LinSM_00036], [SWS_LinSM_00177], [SWS_LinSM_00135], SWS LinSM p. 47, SWS LinSM p. 24

Bij de slave beslist de master over het in slaap vallen. Vraagt ComM in LINSM_FULL_COM COMM_NO_COMMUNICATION aan, dan slaat de LinSM de wens slechts op en retourneert E_OK [SWS_LinSM_00230]. De LinIf meldt LinSM_GotoSleepIndication wanneer een goto-sleep-commando is ontvangen of een bus-idle-time-out optrad [SWS_LinSM_91000]. Pas dan roept de LinSM direct LinIf_GotoSleep aan [SWS_LinSM_00231]. Hoe het verdergaat, hangt af van de opgeslagen wens:

  • Is COMM_NO_COMMUNICATION aangevraagd en levert LinIf_GotoSleep E_OK op, dan verneemt ComM de bus-sleep-gebeurtenis via ComM_BusSM_BusSleepMode [SWS_LinSM_00233].
  • Is volledige communicatie aangevraagd, dan start de LinSM na de slaapbevestiging het wakeup-proces opnieuw [SWS_LinSM_00234].

In de LinIf brengt het slave-verloop de controller en, indien ondersteund, de transceiver naar de slaapmodus (SWS LinIf p. 137).

In slaap gaan van een LIN-netwerk (slave)ComMLinSMLinIfBswMUse Case: Slaapwens van de ComMLinSM_RequestComMode(network,COMM_NO_COMMUNICATION)angeforderten Modus speichern,geen verdere actieE_OKUse Case: BusereignisLinSM_GotoSleepIndication(Channel)Goto-Sleep-Kommando empfangenof bus-idle-time-outstart_timer()LinIf_GotoSleep(Channel)direct, niet in LinSM_MainFunctionE_OKaltangefordert: COMM_NO_COMMUNICATIONComM_BusSM_BusSleepMode(Channel)LinSM_GotoSleepConfirmation(network, success)stop_timer()LINSM_NO_COMComM_BusSM_ModeIndication(network,COMM_NO_COMMUNICATION)BswM_LinSM_CurrentState(network, LINSM_NO_COM)angefordert: COMM_FULL_COMMUNICATIONLinSM_GotoSleepConfirmation(network, success)LINSM_NO_COM, melding aan ComM en BswMkein Bus-Sleep-Ereignis an ComMWake-up-proces opnieuw starten (LinIf_Wakeup)

Sequentiediagram: Bij de slave wordt de slaapwens van de ComM slechts opgeslagen; het in slaap vallen wordt getriggerd door de indicatie van de LinIf. Bronnen: [SWS_LinSM_00230], [SWS_LinSM_00231], [SWS_LinSM_00233], [SWS_LinSM_00234], SWS LinSM p. 48, SWS LinSM p. 24

Schedule-tabellen wisselen (alleen master)

LinSM_ScheduleRequest [SWS_LinSM_00113] bestaat alleen wanneer ten minste één kanaal als master is geconfigureerd [SWS_LinSM_00241]. Hetzelfde geldt voor de callback LinSM_ScheduleRequestConfirmation [SWS_LinSM_00242]. De asynchrone functie geeft de aanvraag direct door aan LinIf_ScheduleRequest, zonder omweg via de main function. De retourwaarde daarvan geeft deze terug aan de aanroeper (SWS LinSM p. 26). De aanroeper is de BswM. Deze gebruikt LinSMScheduleIndex als symbolische referentie, waarvan de waarde moet overeenkomen met de waarde in de LinIf (SWS LinSM p. 52). Ook de diagnose-schedule-wisselingen van het LIN-transportprotocol verlopen via de BswM en LinSM_ScheduleRequest (SWS LinIf p. 142).

Het resultaat meldt de LinSM via BswM_LinSM_CurrentSchedule (SWS BswM p. 80). Welke schedule wordt gemeld, hangt af van het verloop (SWS LinSM p. 26):

  • Bevestigt LinSM_ScheduleRequestConfirmation [SWS_LinSM_00129] vóór afloop van de timer, dan meldt de LinSM de nieuwe schedule.
  • Is de timer afgelopen, dan meldt deze de ongewijzigde schedule.
  • Levert LinIf_ScheduleRequest E_NOT_OK op, dan meldt deze in de volgende main-function-aanroep de oude schedule.
  • Ook een wissel zonder voorafgaande aanvraag meldt deze, zoals de wissel naar de NULL-schedule die de LinIf bij het in slaap vallen uitvoert.
Wissel van de schedule-tabel (alleen master)BswMLinSMLinIfLinSM_ScheduleRequest(network, schedule)start_timer()LinIf_ScheduleRequest(Channel, schedule)direct, niet in LinSM_MainFunctionaltE_OK, bevestiging vóór afloop van de timerE_OKE_OK (weitergereicht)LinSM_ScheduleRequestConfirmation(network, schedule)stop_timer()BswM_LinSM_CurrentSchedule(network, neuer Schedule)E_OK, Timer abgelaufenE_OKE_OK (weitergereicht)LinSM_MainFunction: Timer abgelaufenBswM_LinSM_CurrentSchedule(network, ongewijzigde schedule)LinIf_ScheduleRequest = E_NOT_OKE_NOT_OKE_NOT_OK (weitergereicht)volgende aanroep van LinSM_MainFunctionBswM_LinSM_CurrentSchedule(network, alter Schedule)

Sequentiediagram: De schedule-wissel wordt direct doorgegeven en qua tijd bewaakt; de BswM verneemt bij elke uitkomst de daadwerkelijk geldige schedule. Bronnen: [SWS_LinSM_00113], [SWS_LinSM_00129], [SWS_LinSM_00156], SWS LinSM p. 26, SWS LinSM p. 48

Knooppunttype, configuratie en verschillen met latere releases

De parameter LinSMNodeType bepaalt of voor een kanaal master- of slave-gedrag geldt. Daarvan hangt af of LinSM_ScheduleRequest, LinSM_ScheduleRequestConfirmation en LinSM_GotoSleepIndication beschikbaar zijn [SWS_LinSM_00241] [SWS_LinSM_00242] [SWS_LinSM_00243]. De belangrijkste tijdparameters zijn LinSMConfirmationTimeout (SWS LinSM p. 28) en LinSMSilenceAfterWakeupTimeout [SWS_LinSM_00235]. De LinSMSchedule-containers refereren aan schedules uit de LinIf-configuratie (SWS LinSM p. 52). De DET-controles zijn gekoppeld aan LinSMDevErrorDetect [SWS_LinSM_00239].

Veel passages in het document zijn afkomstig uit latere releases. Voor R20-11 zijn de requirements doorslaggevend, en op enkele punten wijken deze af:

Gedrag in het foutgeval

De ontwikkelingsfouten worden vastgelegd door [SWS_LinSM_00053]:

  • LINSM_E_UNINIT (0x00)
  • LINSM_E_NONEXISTENT_NETWORK (0x20)
  • LINSM_E_PARAMETER (0x30)
  • LINSM_E_PARAM_POINTER (0x40)
  • LINSM_E_INIT_FAILED (0x50)

Bij een actieve LinSMDevErrorDetect controleren de callbacks netwerk en initialisatie, zoals bijvoorbeeld LinSM_GotoSleepIndication [SWS_LinSM_00239] [SWS_LinSM_00240]. Callbacks hebben geen retourwaarde, daarom blijft het daar bij de DET-melding (SWS LinSM p. 40, SWS LinSM p. 39). API's met Std_ReturnType leveren daarnaast E_NOT_OK op, bijvoorbeeld bij een ongeldig netwerk, een ongeldige modus of schedule of in de toestand LINSM_UNINIT (SWS LinSM p. 36, SWS LinSM p. 34). Interpretatie: Deze controles zijn afkomstig uit versies vanaf R24-11 en gelden inhoudelijk vermoedelijk op dezelfde wijze voor R20-11. Opvallend is dat de latere versie ook voor de void-API LinSM_GetVersionInfo [SWS_LinSM_00117] bij een NULL-pointer E_NOT_OK vereist (SWS LinSM p. 34). Vraag Q-6b2d75dd286bdcb4 (open)

Als runtimefout is LINSM_E_CONFIRMATION_TIMEOUT (0x00) voorzien voor uitblijvende callbacks van de LinIf [SWS_LinSM_00224]. Vermoedelijk wordt deze gemeld via Det_ReportRuntimeError, dat door latere versies als verplichte interface wordt aangemerkt (SWS LinSM p. 41). Vraag Q-06b13a07d0d60152 (open) Functioneel zorgt de LinSM ervoor dat ComM en BswM altijd een consistente toestand zien:

  • Na een mislukte wakeup stelt en meldt deze de oude toestand opnieuw (SWS LinSM p. 27).
  • Bij E_NOT_OK van LinIf_GotoSleep geldt hetzelfde [SWS_LinSM_00177].
  • Een slaapbevestiging leidt ook bij success = FALSE naar LINSM_NO_COM (SWS LinSM p. 24).
  • Bij een mislukte schedule-wissel ontvangt de BswM de oude of de ongewijzigde schedule (SWS LinSM p. 26).

Verdere gedetailleerde bewijzen

AI-gegenereerde modulehandleiding op basis van de normatieve requirements voor R20-11 en de toegewezen documentpassages en diagrammen, die deels uit andere releases stammen. Als interpretatie aangeduide uitspraken zijn niet normatief onderbouwd. Alleen de AUTOSAR-specificatie is bindend.

LIN State Manager (LinSM)

Manages state transitions of LIN networks.

Funktionen — Übersicht

Typen — Übersicht

Funktionen & Typen — Detailansicht

functie LinSM_Init [SWS_LinSM_00155] 📄 PDF

void LinSM_Init (const LinSM_ConfigType* ConfigPtr);

This function initializes the Lin SM.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 18f94187e199 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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 ConfigPtr van het type const 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.h ter beschikking gesteld en voert de service-ID 0x01 [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.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: f2deb9e24090 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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_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.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 64785219821f Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: ca2058e9ab04 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 966015905644 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: f0a8b1578ff8 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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 type NetworkHandleType ([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.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: cf9e1845fe84 Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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 type NetworkHandleType [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.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 3915bb7b7db1 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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 type NetworkHandleType duidt 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

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 939c0e58134f Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

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 waarde 0x01): Signaleert de toestand van onbeperkte volledige communicatie (Full communication) [SWS_LinSM_00220].
  • LINSM_NO_COM (numerieke waarde 0x02): 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)

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

Initialisatie en status

-

void LinSM_GetVersionInfo (Std_VersionInfoType* versioninfo);
LinSM_Init functie

This function initializes the Lin SM.

void LinSM_Init (const LinSM_ConfigType* ConfigPtr);

Diensten

Function to query the current communication mode.

Std_ReturnType LinSM_GetCurrentComMode (NetworkHandleType network, ComM_ModeType* mode);

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_GotoSleepConfirmation (NetworkHandleType network, boolean success);

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.

void LinSM_GotoSleepIndication (NetworkHandleType Channel);

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.

Std_ReturnType LinSM_RequestComMode (NetworkHandleType network, ComM_ModeType mode);

The upper layer requests a schedule table to be changed on one LIN network.

Std_ReturnType LinSM_ScheduleRequest (NetworkHandleType network, LinIf_SchHandleType schedule);

The Lin If module will call this callback when the new requested schedule table is active.

void LinSM_ScheduleRequestConfirmation (NetworkHandleType network, LinIf_SchHandleType schedule);

The Lin If will call this callback when the wake up signal command is sent not successfully/ successfully on the network.

void LinSM_WakeupConfirmation (NetworkHandleType network, boolean success);

Cyclisch

Periodic function that runs the timers of different request timeouts

void LinSM_MainFunction (void);

Typen

Data structure type for the post - build configuration parameters.

Type used to report the current mode to the Bsw M