DEENESPTFRRUARHIKOZHNL
AUTOSAR_SWS_ADCDriver FIG-39c466ae17955b8a 896 × 912 px 1 Release(s)

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

SHA-256 Inhalts-Fingerabdruck: 39c466ae17955b8a66d1af343981f0fa8eac1403629f69ec9821fa5013f46e62
✦ 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:

  • Adc User: Oberhalb des ADC-Treibers angesiedelte Softwarekomponente/Nutzer.
  • «module» Adc: ADC-Treibermodul (MCAL).
  • «Peripheral» ADC Conversion Unit: Hardware-Wandlereinheit des Mikrocontrollers.
  • «Peripheral» 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.

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

R19-11 → R20-11 keine inhaltliche Änderung Vorgänger: FIG-98bd3b455cf91c0f

Keine inhaltlichen Änderungen erkennbar.

R20-11 → R21-11 redaktionell Nachfolger: FIG-ae0c4829190cbc20
  • Beschriftungslayout: Bereinigung von mehrzeilig umgebrochenen Methodenaufrufen und überlappenden Textfragmenten (Adc_EnableGroupNotification(Adc_GroupType), Adc_EnableHardwareTrigger(Adc_GroupType), Adc_GetGroupStatus(Adc_GroupType), Adc_DisableGroupNotification(Adc_GroupType)) wieder auf einzeilige Darstellung.
  • Beschriftungskorrektur: conversion completed () nach der ersten Konvertierungsrunde wurde typografisch zu conversion completed() vereinheitlicht.

Zugeordnete Anforderungen

Diese Angaben zeigt der Versions-Explorer.

Aus dem Dokument extrahierter Text & Kontext

Beschriftungen im Schaubild:

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

Vorkommen in AUTOSAR-Releases (1)

Release Dokument Seite Nr. Bildunterschrift im Dokument
R20-11 AUTOSAR_SWS_ADCDriver S. 98 17 Figure 17: Hardware triggered one-shot conversion – linear streaming