Der Blätterkatalog benötigt Javascript.
Bitte aktivieren Sie Javascript in Ihren Browser-Einstellungen.
The Blätterkatalog requires Javascript.
Please activate Javascript in your browser settings.
www designelektronik de DESIGN ELEKTRONIK 08-09 2021 6 Al le Bild er i Sy st em embedded-SySteme Hardware-Tracing Eine unterschätzte Debugging-Technik Für das Debuggen von Software gibt es bewährte Techniken wie interaktives Debugging und printf-Debugging Eine bislang unterschätzte Technik ist Tracing – dabei verbindet es das Beste aus beiden Welten Es gewährt Einblicke in den Ablauf der Software ohne das Laufzeitverhalten zu beeinträchtigen Felix Martin Systems Engineer bei iSystem Geht es um das Auffinden und Beheben von Fehlern oder unerwünschtem Verhalten im Code von Embedded-Geräten denken die meisten Entwickler vermutlich zuallererst ans interaktive Debugging Dabei erhält der Entwickler mithilfe von Haltepunkten Breakpoints Stepping und Speicherüberwachung ein Bild vom Ablauf seiner Anwendung Zwar zählt die Art des Debuggens zum Tagesgeschäft eines jeden Softwareentwicklers jedoch hat sie einige inhärente Einschränkungen insbesondere bei Embedded-Systemen Herausfordernd hierbei Interaktives Debugging gibt keine klare Aussage über das Echtzeitverhalten Eine Alternative zum interaktiven Debugging ist das »printf«-Debugging Hier können Entwickler ihre Anwendung mit printf-Anweisungen ergänzen damit diese an interessanten Stellen aussagekräftige Rückmeldungen des Codes erzeugt Anschließend werden die Meldungen in einer Übersicht am PC angezeigt sodass der Entwickler das Verhalten des Geräts verstehen kann Ist keine Schnittstelle zum Übertragen der Meldungen vorhanden sind alternativ zur printf-Anweisung E A-Pins ansteuerbar Vorteil des printf-Debuggings ist dass es das Echtzeitverhalten einer Embedded-Anwendung nicht stört Trotzdem ist es ein invasiver Prozess und je mehr Messinstrumente ein Entwickler hinzufügt desto stärker beeinflusst die Methode das Laufzeitverhalten Das Nonplusultra wäre deshalb eine Debugging-Technik die einen vollen Einblick in das Ausführen der Anwendung gewährt – wie das interaktive Debugging – und gleichzeitig die Echtzeiteigenschaften bewahrt – wie beim printf-Debugging aber idealerweise ohne Instrumentierung Genau das ist Tracing Das Erstellen einer Liste von Ereignissen mit Zeitstempeln die das zeitliche Verhalten und den Ablauf der Anwendung darstellt Schreibund Lesevorgänge an globalen Variablen erzeugen eine Daten-Trace-Meldung Das ist ein Trace-Ereignis mit der Adresse der Variablen dem Wert der gelesen oder Bild 1 Hardware-Tracing