DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_ADCDriver FIG-a1464aed6e09ebf4 841 × 893 px 1 Release(s)

Figure 18: Hardware triggered one-shot conversion – linear streaming

SHA-256 Inhalts-Fingerabdruck: a1464aed6e09ebf4a9bd02a31259983d7bdb98b49ccff2be61060a9cfe8ddd4a
✦ KI-generierte Bildanalyse & technische Beschreibung Modell: gemini-3.8-flash (via agy) · Rezept figure-series@1 · erstellt am 2026-10-08

1. Diagrammtyp & Architektur-Kontext

UML-Sequenzdiagramm zur Darstellung des hardwaregetriggerten One-Shot-Konvertierungsmodus mit linearem Streaming (Linear Streaming Buffer) im AUTOSAR ADC-Treiber (Microcontroller Abstraction Layer, MCAL). Es illustriert das zeitliche Zusammenspiel zwischen Anwendungs-/Treiber-Nutzer, ADC-Softwaremodul und den Hardware-Peripherieelementen (ADC Conversion Unit, HW Trigger Source).

2. Komponenten, Entitäten & Schnittstellen

Beteiligte Lebenslinien und Entitäten:

  • Generic Elements::Adc User: Oberhalb des ADC-Treibers angesiedelte Softwarekomponente/Nutzer.
  • «module» Adc::Adc: ADC-Treibermodul (MCAL).
  • «Peripheral» Hardware::ADC Conversion Unit: Hardware-Wandlereinheit des Mikrocontrollers.
  • «Peripheral» Hardware::HW Trigger Source: Hardware-Triggerquelle für Konvertierungsanforderungen.

Schnittstellen und Nachrichten:

  • Adc_EnableGroupNotification(Adc_GroupType) / Return: Aktivierung der Gruppenbenachrichtigung.
  • Adc_EnableHardwareTrigger(Adc_GroupType) / Return: Softwaremäßige Schärfung des Hardware-Triggers für eine Gruppe.
  • enable hardware trigger(Group1): Hardware-Steuerung zur Aktivierung des Triggerpfads.
  • trigger(Group1): Hardware-Triggersignal an die Wandlungseinheit.
  • conversion completed () / conversion completed(): Hardware-Rückmeldung der beendeten Wandlung an den Treiber (z. B. via Interrupt).
  • Adc_Notification_Group_1(): Callback/Notification an den ADC-Nutzer.
  • Adc_GetGroupStatus(Group1) bzw. Adc_GetGroupStatus(Adc_GroupType): Statusabfrage der Gruppe.
  • Rückgabewerte: Adc_GetGroupStatus = ADC_COMPLETED(), Adc_GetGroupStatus=ADC_STREAM_COMPLETED().
  • disable hardware trigger(Group1): Hardwareseitige Deaktivierung des Triggerpfads nach Pufferfüllung.
  • Adc_DisableGroupNotification(Adc_GroupType) / Return: Deaktivierung der Gruppenbenachrichtigung.

3. Dynamisches Verhalten & Sequenzablauf

Ablaufsequenz:

  1. Vorbereitung: Der Nutzer aktiviert via Adc_EnableGroupNotification(Adc_GroupType) die Gruppen-Benachrichtigung und schärft über Adc_EnableHardwareTrigger(Adc_GroupType) den Hardware-Trigger. Der ADC-Treiber aktiviert daraufhin hardwareseitig die Triggerquelle (enable hardware trigger(Group1)).
  2. Erste Wandlungsrunde: Ein externes Triggersignal trigger(Group1) startet in der ADC Conversion Unit die Wandlung. Nach deren Abschluss signalisiert die Hardware conversion completed (). Der Puffer enthält nun die Ergebnisse der ersten Wandlungsrunde. Das ADC-Modul ruft den Nutzer-Callback Adc_Notification_Group_1() auf. Innerhalb oder nach dem Callback fragt der Nutzer via Adc_GetGroupStatus(Group1) den Status ab und erhält ADC_COMPLETED().
  3. Zweite Wandlungsrunde: Ein erneuter Hardware-Trigger trigger(Group1) führt zur zweiten Wandlung, quittiert via conversion completed().
  4. Puffer voll & automatisches Stoppen: Da die Puffergröße auf m=2 Gruppenergebnisse konfiguriert ist, ist der lineare Streaming-Puffer vollständig gefüllt. Der Hardware-Trigger wird automatisch deaktiviert (disable hardware trigger(Group1)), während Gruppenbenachrichtigungen aktiv bleiben.
  5. Abschluss & Bereinigung: Das Modul setzt die Benachrichtigung Adc_Notification_Group_1() ab. Die Statusabfrage Adc_GetGroupStatus(Adc_GroupType) liefert ADC_STREAM_COMPLETED(). Anschließend deaktiviert der Nutzer mit Adc_DisableGroupNotification(Adc_GroupType) die Benachrichtigung.

4. Normative Relevanz & Entwickler-Hinweise

Konfigurationsparameter und Betriebsbedingungen:

  • Konfiguration: HW-Trigger, One-Shot-Konvertierungsmodus, linearer Streaming-Puffer.
  • Pufferkapazität: m=2 (Speicherplatz für 2 Gruppen-Konvertierungsergebnisse).
  • Semantik des linearen Streamings im One-Shot-Modus: Bei jedem Hardware-Trigger wird genau eine Wandlungsrunde der konfigurierten Kanäle durchgeführt. Nach Erreichen der Puffergrenze (m Abtastungen) wird die Hardware-Triggerung automatisch durch den Treiber bzw. die Hardware beendet, um ein Überschreiben zu verhindern.
  • Der Status wechselt nach Erreichen der Pufferkapazität von ADC_COMPLETED auf ADC_STREAM_COMPLETED.
  • Benachrichtigungen (Adc_Notification_Group_1) bleiben auch nach Erreichen der vollen Pufferkapazität scharf, bis sie explizit per Adc_DisableGroupNotification abbestellt werden.
  • Dokumentationsvermerk im Diagramm: Status: proposed by S.Barnikol for SWS ADC 3.0.0.

Versionsvergleich KI-generiert · gemini-3.8-flash (via agy)

R4.0.3 → R4.1.3 keine inhaltliche Änderung Nachfolger: FIG-5ccb366b0f572672

Keine inhaltlichen Änderungen erkennbar.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

Generic Elements::Adc | User | «module» | Adc::Adc | «Peripheral» | Hardware::ADC Conversion Unit | «Peripheral» | Hardware::HW Trigger Source | streaming buffer filled with results of first conversion round | streaming buffer filled completely; HW trigger disabled automatically; notifications are still enabled | Status: proposed by S.Barnikol for SWS ADC 3.0.0 | Configuration: HW trigger, one-shot, linear streaming | Linear streaming buffer : m=2 (2 group results stored in buffer) | Adc_EnableGroupNotification(Adc_GroupType) | Adc_EnableGroupNotification() | Adc_EnableHardwareTrigger(Adc_GroupType) | enable hardware trigger(Group1) Adc_EnableHardwareTrigger() | trigger(Group1) | conversion completed () | Adc_Notification_Group_1() | Adc_GetGroupStatus(Group1) | Adc_GetGroupStatus = ADC_COMPLETED() | Adc_Notification_Group_1() | trigger(Group1) | conversion completed() | disable hardware trigger(Group1) | Adc_Notification_Group_1() | Adc_GetGroupStatus(Adc_GroupType) | Adc_GetGroupStatus=ADC_STREAM_COMPLETED() | Adc_DisableGroupNotification(Adc_GroupType) | Adc_DisableGroupNotification() | Adc_Notification_Group_1()

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R4.0.3 AUTOSAR_SWS_ADCDriver S. 84 18 Figure 18: Hardware triggered one-shot conversion – linear streaming