Die Batterielaufzeit ist eine Anforderung wie jede andere und wird entsprechend geprüft: DUT auf den Hardware-in-the-Loop-Prüfstand (HiL), Deep-Sleep-Modus kommandieren, Strom ablesen. Das Ergebnis lautet 2,1 µA, die Spezifikation fordert 5 µA, der Test wird grün.
Ein halbes Jahr später sind die Feldgeräte in der halben prognostizierten Zeit leer.
Die Ursache liegt selten in der Firmware. Sie liegt darin, dass ein HiL-Aufbau konstruktionsbedingt ein Gerät mit einem Dutzend angeschlossener Leitungen ist (Debug-Probe, serielle Konsole, Busschnittstellen, Stimulusleitungen, Tastköpfe), und jede dieser Leitungen ist ein Leiter, der Strom in den DUT hinein oder aus ihm heraus führen kann. Ihr Amperemeter misst nicht den DUT. Es misst einen Zweig. Alles, was über einen anderen Zweig fließt, ist für die Messung unsichtbar.
Unangenehm wird diese Fehlerklasse durch ihr Vorzeichen. Strom, der über einen Signalpin in den DUT eingespeist wird, verringert das, was die Versorgung liefern muss. Die Messung fällt zu niedrig aus und der Test besteht. Ein zu hoher Messwert wird untersucht, ein zu niedriger wird ausgeliefert.
Das Modell: Das Amperemeter misst einen Zweig, kein Gerät
Betrachten Sie den DUT als Knoten und wenden Sie die Kirchhoffsche Knotenregel an. Der Versorgungsstrom, den Ihr Shunt sieht, entspricht nur dann der tatsächlichen Stromaufnahme, wenn Versorgungsleitung und Masserückleitung die einzigen leitenden Pfade nach außen sind.
┌──── Shunt ────┐
Versorgung ────┤ ├────── VDD ──┐
└───────────────┘ │
│ ← hier eingespeister Strom
Debug-Probe ──── SWDIO / SWCLK ──────────────┤ wird vom Shunt nie erfasst
USB-UART ──── TX / RX / RTS# ─────────────┤
Prüfadapter ──── I2C-Pull-ups, CS#, CAN ─────┤
Oszilloskop ──── Masseklemme des Tastkopfs ──┤
│
Versorgung GND ──────────────────────────────┘
↑
ein zweiter Massepfad umgeht einen
low-side platzierten Shunt vollständig
Daraus folgen zwei Fehlerrichtungen:
- Einspeisung (Rückspeisung, Back-Powering). Ein externer Treiber hält einen Pin über dem VDD des DUT. Strom fließt über die ESD-Schutzdiode des Pins in das VDD-Netz. Bei high-side platziertem Shunt ersetzt dieser Strom einen Teil des Versorgungsstroms, der Messwert sinkt. Bei einem Labornetzteil, das keinen Strom aufnehmen kann, wird er sogar negativ. Schlimmer noch: Der DUT ist unter Umständen gar nicht ausgeschaltet. Seine Versorgung liegt bei 2,4 V statt bei 0 V, das RAM behält seinen Inhalt, der Brown-out-Reset löst nie aus, und Ihr Test „Kaltstart nach Power-Cycle" prüft seit einem Jahr einen Warmstart.
- Entnahme. Der DUT liefert oder senkt Strom über einen Pin in den Prüfadapter: eine Leitung wird gegen einen Pull-down auf High getrieben, eine Open-Drain-Leitung gegen einen Pull-up auf Low gehalten, Kabelkapazität bei jeder Flanke umgeladen. Dieser Strom fließt tatsächlich über den Shunt, der Messwert ist also zu hoch. Ärgerlich, aber wenigstens fällt der Test auf.
Beide Fehler liegen im Bereich von zehn bis mehreren hundert Mikroampere. Moderne Deep-Sleep-Ströme liegen bei 1 bis 10 µA. Der Prüfaufbau ist damit routinemäßig zwei Größenordnungen größer als das, was gemessen werden soll.
Die Position des Shunts entscheidet, welche Fehler möglich sind
Low-Side-Messung (Shunt in der Masserückleitung des DUT) ist bequem, weil der Verstärker nahe Masse arbeitet. Für einen HiL-Aufbau ist sie trotzdem die falsche Wahl. Jede zusätzliche Masseverbindung ist ein paralleler Rückleitungspfad um den Shunt herum: die Masse der Debug-Probe, die Masse des USB-UART-Adapters, die Schutzerde eines Oszilloskops. Der Rückstrom teilt sich zwischen Shunt und einem 50-mΩ-Massegeflecht auf, und Sie messen den Anteil, der zufällig Ihren Weg genommen hat.
High-Side-Messung beseitigt das Masseschleifenproblem, nicht aber das Einspeiseproblem: Strom, der über einen Signalpin in VDD gelangt, umgeht den Shunt weiterhin.
Es gibt keine Topologie, die Sie rettet. Die Lösung liegt in beiden Fällen auf Ebene des Prüfadapters: Kontrollieren Sie, was die übrigen Leitungen tun.
UART: der am meisten unterschätzte Störer
Die serielle Konsole wird meist als Erstes angeschlossen und als Letztes verdächtigt. Zwei Leitungen ohne eigenen Zustand, das wirkt harmlos. Ist es nicht. Eine UART-Leitung ist elektrisch nie im Leerlauf. Sie liegt dauerhaft auf einer Spannung, über die gesamte Dauer Ihrer Messung.
Welcher Pegel „Ruhe" bedeutet, hängt von der Ebene ab, und das ist relevant
- TTL/CMOS-UART (das, was tatsächlich zwischen MCU-Pin und USB-Seriell-Adapter liegt) ruht High, auf der I/O-Versorgungsspannung. Logisch 1 ist der Mark-Zustand. Das Startbit zieht die Leitung Low, Datenverkehr ist also eine Abweichung nach unten von einer dauerhaft hohen Leitung.
- RS-232 invertiert das: Mark (logisch 1, Ruhe) ist eine negative Spannung, Space (logisch 0) ist positiv. Das ist die „active low"-Konvention, an die man sich erinnert, und der Grund, warum zwischen beiden Welten ein Transceiver sitzt.
- Die Steuerleitungen sind tatsächlich Low-aktiv: RTS#, CTS#, DTR#, DSR#, DCD#. Ein Adapter aktiviert sie, indem er sie nach unten zieht, und viele Treiber setzen DTR#/RTS# automatisch, sobald eine Hostanwendung den Port öffnet.
- Eine Break-Bedingung ist die Leitung im Space-Zustand (bei TTL also Low) länger als ein Frame. Ein abgezogener oder unversorgter Sender sieht exakt wie ein dauerhaftes Break aus.
Für eine Low-Power-Messung lautet die Frage also nie „wie viel Verkehr liegt auf der Konsole". Sie lautet: Auf welcher Spannung liegt jede dieser fünf Leitungen, während der DUT schläft, und woher kommt diese Spannung?
Der Klassiker: 5-V-Adapter an einem 3,3-V-DUT
Ein FT232R- oder CH340-Kabel mit 5-V-I/O legt seinen TX-Ausgang auf 5 V. Der RX-Pin des DUT hat eine ESD-Schutzdiode gegen sein eigenes VDD. Sobald die Pinspannung VDD um eine Flussspannung übersteigt, leitet diese Diode:
- DUT läuft mit 3,3 V: Über der Ausgangsimpedanz des Treibers liegen etwa 5 − 3,3 − 0,7 ≈ 1 V. Ohne Serienwiderstand sind das leicht 10 bis 20 mA in die 3,3-V-Versorgung hinein. Das liegt über der zulässigen Pin-Einspeisung der meisten MCUs (STM32 spezifiziert ±5 mA pro Pin, ±25 mA gesamt), und bei vielen Bausteinen verfälscht eingespeister Strom an einem Pin zusätzlich die ADC-Wandlung an benachbarten Pins. Das zeigt sich dann als sporadisch fehlschlagender, scheinbar unbeteiligter Analogtest.
- DUT abgeschaltet: Derselbe Pfad versorgt jetzt das gesamte VDD-Netz über einen einzigen Pin. Die Stützkondensatoren laden sich, die Versorgung steigt auf 3 bis 4 V, der DUT läuft halb an. Die Stromaufnahme ist unbrauchbar, und ebenso jeder Test, der einen echten Power-Cycle voraussetzt.
Auch ein korrekt gewählter 3,3-V-Adapter ist nicht automatisch sicher. Wenn die I/O-Versorgung des DUT separat geschaltet wird (eine MCU, die ihre I/O-Domäne im Low-Power-Modus auf 1,8 V absenkt, oder ein Board, das eine Peripherieversorgung abschaltet), liegt eine im Ruhezustand hohe 3,3-V-Leitung erneut über VDD.
Die Gegenrichtung: Der DUT bezahlt die Konsole
Nun der TX-Pin des DUT. Er ruht auf 3,3 V und treibt in das, was der Prüfadapter an diesen Knoten gelegt hat:
- Ein 10-kΩ-Pull-down auf Adapterseite, die übliche Maßnahme „damit nichts floatet", kostet 3,3 V / 10 kΩ = 330 µA, dauerhaft. Gegenüber einem STM32-Standby-Strom von rund 2 µA ist das ein Faktor 150, und zwar über das gesamte Messfenster, unabhängig davon, ob ein einziges Byte gesendet wird.
- Ein unversorgter Adapter am anderen Ende ist schlimmer: Der High-Ausgang des DUT speist über die Eingangsschutzdiode des Adapters in dessen tote Versorgung. Der DUT versorgt jetzt den USB-Seriell-Chip.
- Kabel- und Eingangskapazität machen aus Datenverkehr Strom. I = C · U · f. Ein Meter Flachbandkabel plus Empfängereingang ergibt leicht 150 pF; bei 1 MBaud mit etwa einer Flanke je zwei Bit sind das 150 pF × 3,3 V × 500 kHz ≈ 250 µA dynamischer Strom, zusätzlich zum Umschaltstrom des Treibers. Wer während der Messung protokolliert, misst das Protokoll.
Die Steuerleitungen, die Ihren DUT zurücksetzen
DTR# und RTS# verdienen eine eigene Warnung, denn sie ziehen nicht nur Strom. Die Standard-Auto-Reset-Schaltung des ESP32 steuert EN und IO0 über DTR#/RTS#; unzählige Eigenentwicklungen übernehmen das Prinzip. Diese Leitungen sind Low-aktiv, und aktiviert werden sie von jedem Host, der den seriellen Port öffnet: ein Monitoring-Skript, eine screen-Sitzung, eine udev-Regel, ein Python-Testrahmen, der nach einem Timeout neu verbindet.
Sichtbar wird das als DUT, der mitten in einer Messung zurückgesetzt wird oder in den Bootloader springt, aus Gründen, die im Testprotokoll nirgends auftauchen. Gleichzeitig ist die Aktivierung ein niederohmiger Pfad, der ein hochgezogenes Reset-Netz nach unten zieht und den Pull-up-Strom aus der Versorgung des DUT abführt, solange er gehalten wird.
Was gegen die Konsole hilft
- I/O-Spannung sauber anpassen, und zwar an die niedrigste Versorgung, die der DUT im Test erreicht, nicht an die nominelle.
- Serienwiderstände (1 bis 10 kΩ) in jede Leitung. Sie verhindern die Einspeisung nicht. Sie begrenzen sie auf einen berechenbaren Wert und halten sie unter dem Datenblattgrenzwert. Aus Schaden und Unvorhersehbarkeit wird ein bekannter Fehlerterm.
- Trennen, nicht nur stilllegen. Für eine belastbare Ruhestrommessung werden die Konsolenleitungen über ein Reedrelais oder einen aus der DUT-Versorgung gespeisten Bus-Schalter aufgetrennt. Eine physisch offene Leitung kann nichts einspeisen.
- Firmware mitspielen lassen. Vor dem Übergang in den Low-Power-Zustand sollte der DUT TX auf einen definierten Pegel treiben oder als Eingang mit definiertem Pull konfigurieren, und der RX-Pin darf nicht floaten: Ein CMOS-Eingang nahe VDD/2 schaltet beide Transistoren der Eingangsstufe durch und verheizt allein dafür zweistellige Mikroampere als Querstrom.
- Logging im Messfenster einstellen. Diagnosedaten puffern und nach dem Fenster ausgeben.
JTAG und SWD: die Schnittstelle, die das Ergebnis verändert
Wenn UART unterschätzt wird, ist der Debug-Port aktiv irreführend. Er verfälscht die Messung über drei unabhängige Mechanismen.
1. Die normativ geforderten Pull-ups sind eine dauerhafte Last
IEEE 1149.1 verlangt, dass der TAP TMS und TDI (sowie TRST#, sofern vorhanden) im ungetriebenen Zustand auf High hält; die Bausteine implementieren dafür On-Die-Pull-ups von typisch 20 bis 100 kΩ. Das SWD-Äquivalent von ARM setzt einen Pull-up auf SWDIO und einen Pull-down auf SWCLK.
Das ist ein Widerstand von VDD zum Pin, gespeist aus der Versorgung des DUT. Wenn die angeschlossene Probe diese Leitungen im Ruhezustand Low hält, senkt jeder Pin Strom aus der DUT-Versorgung über den Shunt ab. Viele Probes tun genau das, weil „idle low" eine völlig vernünftige Vorgabe ist, solange niemand an Mikroampere denkt:
3,3 V / 40 kΩ ≈ 82 µA pro Pin. Zwei auf Low gehaltene Pins ergeben rund 165 µA reines Artefakt des Prüfaufbaus, und zwar in der Richtung, die den Messwert erhöht.
Spiegelbildlich gilt das für die Reset-Leitung. nRESET ist Open-Drain mit einem externen 10-kΩ-Pull-up; eine Probe, die den Pin auf Low zieht, verursacht 330 µA und hält den DUT in einem Zustand, der nicht der zu messende ist.
2. Die Debug-Logik hält den Chip wach
Dieser Mechanismus erzeugt Fehler über Größenordnungen, und er hat nichts mit Leitungen zu tun. Es ist Silizium, das versorgt wird, weil eine Probe angeschlossen ist.
- Bei STM32 halten die DBGMCU-Register (
DBG_SLEEP,DBG_STOP,DBG_STANDBY) HCLK und die Core-Domäne in den Low-Power-Modi aktiv, damit der Debugger verbunden bleiben kann. Ein Baustein, der mit rund 2 µA im Standby spezifiziert ist, liegt mit gesetzten Bits bei etwa 1 mA. Debug-Toolchains setzen diese Bits routinemäßig, und sie überleben einen Soft-Reset. - Bei nRF52/nRF53 verhindert eine angeschlossene und versorgte Debug-Schnittstelle den echten System-OFF-Zustand. Der Baustein geht stattdessen in ein emuliertes Äquivalent, und der Unterschied beträgt rund 0,3 µA gegenüber über 1 mA, also ein Faktor im Bereich mehrerer Tausend.
- Herstellerspezifische Low-Power-Debug-Funktionen, ETM-/ITM-Trace-Einheiten und DWT-Zykluszähler ziehen Strom, solange sie aktiviert sind.
- SWO- oder TPIU-Trace-Ausgabe ist ein Pin, der über die gesamte Sitzung im Megahertzbereich gegen Kabelkapazität schaltet. Das ist dynamischer Strom, der ausschließlich der Beobachtung geschuldet ist.
Darunter liegt ein methodischer Punkt: Ein angehaltener Kern hat ein völlig anderes Stromprofil als ein laufender. Breakpoints, Einzelschrittbetrieb und Speicherzugriffe über den DAP stören genau das, was geprüft werden soll.
Die einzige verlässliche Antwort ist, den Debugger für Strommessungen abzutrennen: Probe abschalten, Leitungen hochohmig schalten oder über Relais physisch auftrennen. Stellen Sie außerdem sicher, dass die DBGMCU-Äquivalente vor dem Messfenster durch einen vollständigen Power-Cycle zurückgesetzt wurden. Wenn Ihre HiL-Sequenz Firmware flasht und anschließend ohne Power-Cycle misst, misst sie die Debug-Sitzung.
3. VTREF, Zielversorgung und Boundary Scan
- Die meisten Probes erfassen die I/O-Spannung des Ziels an VTREF, um ihre Pegelwandler einzustellen. Prüfen Sie, ob dieser Pin bei Ihrer Probe tatsächlich hochohmig ist; manche günstigen Nachbauten speisen ihre Translatoren aus der eigenen Versorgung und führen darüber Strom in die Zielversorgung zurück.
- Mehrere Probe-Steckerbelegungen führen einen optionalen Zielversorgungsausgang (ein schaltbarer 3,3-V- oder 5-V-Pin). Versehentlich aktiviert, versorgt er den DUT parallel zu Ihrem gemessenen Netzteil, und die Messung ist wertlos.
- Boundary-Scan-EXTEST treibt die Pins des DUT buchstäblich von der Probe aus. Nützlich für Verbindungstests, katastrophal, wenn es bei einer Strommessung noch aktiv ist.
- Adaptive Clocking (RTCK) fügt der Bilanz eine weitere dauerhaft getriebene Leitung hinzu.
Die übrigen üblichen Verdächtigen
Dieselben zwei Mechanismen treten an jeder anderen Schnittstelle erneut auf: eine anliegende Spannung, die Strom treibt, und ein leitender Pfad, der den Shunt umgeht.
I²C. Open-Drain plus Pull-ups, also entscheidet die Position dieser Pull-ups alles. Sitzen sie im Prüfadapter an einer Adapterversorgung, wird ein abgeschalteter DUT über beide Pins rückgespeist. Sitzen sie auf dem DUT, entzieht ein Adapter-Master, der SDA oder SCL auf Low hält (blockierter Bus, abgebrochene Übertragung oder Clock-Stretching), 3,3 V / 4,7 kΩ ≈ 700 µA pro Leitung aus der Versorgung des DUT. Ein ruhender Bus liegt High und kostet nichts, weshalb dieser Fehler erst auftritt, wenn woanders etwas schiefgeht.
SPI. CS# ist Low-aktiv und ruht High; SCLK und MOSI liegen auf dem Pegel, den der Master hinterlassen hat. Jede dieser Leitungen treibt in den DUT. Ist der Adapter-Master abgeschaltet, der DUT aber nicht, speist dessen MISO-Ausgang in die Schutzdioden des Masters.
CAN. Ein dominantes Bit treibt rund 2 V über einen mit 60 Ω terminierten Bus, also etwa 33 mA aus der Versorgung des DUT zuzüglich Ruhestrom des Transceivers. Ein HiL-Aufbau, der während einer Ruhestrommessung Hintergrundverkehr auf dem Bus hält, misst keinen Ruhezustand. Eine aus einer Adapterversorgung vorgespannte Split-Terminierung speist den Transceiver zurück, wenn der DUT aus ist, und der Standby-Pin des Transceivers (meist ein Low-aktives STB#) muss in dem Zustand sein, in dem das Produkt tatsächlich ausgeliefert wird. Bei LIN gilt dasselbe mit einem 1-kΩ-Master-Pull-up gegen 12 V, ein dominanter Pegel kostet dort rund 12 mA.
USB. VBUS ist schlicht eine zweite Energiequelle. Auch ein eigenversorgtes Design muss nachweisen, dass es daraus nichts zieht. Selbst ohne Datenverkehr zieht der 1,5-kΩ-Pull-up an D+ gegen den 15-kΩ-Pull-down des Hosts dauerhaft rund 200 µA, allein um die Anwesenheit eines Geräts zu signalisieren, und der laufende 48-MHz-Takt des PHY kostet Milliampere.
Prüfadapter-I/O allgemein. Aus dem Adapter hochgezogene Presence-Detect- und ID-Leitungen; Optokopplereingänge, deren LED-Strom konstruktionsbedingt aus dem DUT kommt (Milliampere); LEDs im Adapter, die von DUT-Ausgängen getrieben werden; Stimulusquellen, die an einem Analogeingang angeschlossen bleiben und über dessen Schutzdiode Strom einspeisen; vom Adapter gehaltene Boot-Strap-Pins.
Messgeräte. Ein 10:1-Tastkopf hat 10 MΩ und zieht nichts Nennenswertes, aber seine Masseklemme verbindet den DUT mit der Schutzerde und schafft damit einen parallelen Rückleitungspfad, der einen Low-Side-Shunt unbemerkt umgeht und eine Masseschleife hinzufügt. An einem Low-Power-Aufbau sind Differenztastköpfe oder ein isoliertes Oszilloskop vorzuziehen.
Die Leckströme des Prüfadapters selbst. Im Mikroamperebereich hört Hardware, die Sie für passiv halten, auf, passiv zu sein. Halbleiterrelais leiten im ausgeschalteten Zustand Mikroampere; Analogmultiplexer haben bei 25 °C Nanoampere und bei 85 °C mehrere hundert Nanoampere Leckstrom; nicht entfernte Flussmittelreste und Luftfeuchtigkeit machen eine Leiterplattenoberfläche messbar leitfähig. Deshalb muss die Grundlinie des Prüfadapters über die Zeit erneut verifiziert und darf nicht angenommen werden.
Einen Prüfadapter bauen, der nicht lügt
Grob nach tatsächlichem Nutzen sortiert:
- Im Messfenster physisch trennen. Reedrelais in jeder Peripherieleitung: Konsole, Debug, Busse, Stimulus. Nichts schlägt eine offene Leitung, und es ist der einzige Ansatz, der bis in den einstelligen Mikroamperebereich skaliert.
- Die adapterseitige Schnittstelle aus der DUT-Versorgung speisen. Pegelwandler und Bus-Schalter (Bauteile der Klasse TS3A/NX3L/FSA), deren Versorgung die DUT-Versorgung ist, hören auf zu treiben, sobald diese zusammenbricht. Rückspeisung entfällt damit konstruktionsbedingt. Prüfen Sie am konkreten Bauteil, dass es nicht über seinen eigenen Versorgungspin zurückspeist.
- OE explizit ansteuern. Translatoren mit Output-Enable sind Bausteinen mit automatischer Richtungserkennung vorzuziehen, und die Testsequenz sollte dieses Signal steuern, statt es fest aktiv zu verdrahten.
- Überall Serienwiderstände. 1 bis 10 kΩ in jeder Signalleitung vom Adapter zum DUT. Das begrenzt die Einspeisung auf einen berechenbaren Wert und schützt den Pin.
- Isolieren, wo es die Topologie erlaubt. Digitale Isolatoren oder ein isolierter USB-UART beseitigen die Masseschleife. Der Zielkonflikt gehört benannt: Die DUT-seitige Versorgung eines Isolators ist selbst eine Last im Milliamperebereich und gehört daher an eine Versorgung außerhalb der Messung, nicht an die gemessene.
- Das Messfenster zum erstklassigen Konzept im Testrahmen machen. Ein definierter Zustand, der Logging stoppt, Busse stilllegt, Treiber hochohmig schaltet, Relais öffnet, einschwingt, misst und anschließend wiederherstellt. Kein
sleep()mit Hoffnung. - Das passende Messgerät wählen. Ein Tisch-Multimeter im Strommodus hat auf seinen Mikroamperebereichen mehrere hundert Millivolt Bürdenspannung, genug, um den DUT bei einer Aufwachspitze in den Brown-out zu treiben, und die automatische Bereichsumschaltung macht es für zehner-Millisekunden blind, genau während des interessanten Transienten. Verwenden Sie eine Source-Measure-Unit oder einen Power-Analyzer mit schneller, nahtloser Bereichsumschaltung.
Vier Prüfungen, die all das aufdecken
1. Der Dunkeltest. Prüfadapter in seinen normalen Ruhezustand hochfahren, dann die DUT-Versorgung am Shunt abtrennen. Messen Sie den Strom an den Versorgungspins des DUT und die Spannung am VDD-Knoten des DUT. Beides muss null sein. Jeder Strom oberhalb Ihres Rauschbodens und jede Versorgung, die bei abgeschaltetem Netzteil auf 2,7 V steht, ist Einspeisung. Sie wissen davon, bevor sie ein einziges Testergebnis verfälscht hat. Führen Sie diese Prüfung zu Beginn jeder Testkampagne durch.
2. Fehlerbudget Leitung für Leitung. Messen Sie das nackte Board an einer sauberen Versorgung ohne weitere Verbindungen. Schließen Sie dann einen Kabelbaum nach dem anderen an und notieren Sie die Differenz. Das Ergebnis ist eine Tabelle wie diese, und sie ist das Fehlerbudget Ihres Prüfaufbaus:
| Verbindung | Δ Ruhestrom | Ursache |
|---|---|---|
| Nackter DUT | 2,1 µA | Referenz |
| + USB-UART (3,3 V, 10-kΩ-Pull-down) | +330 µA | TX ruht High gegen Pull-down |
| + SWD-Probe angeschlossen, idle low | +165 µA | On-Die-Pull-ups an TMS/TDI |
| + SWD-Probe, Debug-Sitzung aktiv | +1,1 mA | DBGMCU hält Core getaktet |
| + I²C-Pull-ups im Adapter | +0 µA (Ruhe) / +700 µA (Low blockiert) | zustandsabhängig |
3. Gegen eine Goldreferenz vergleichen. Batterie, nacktes Board, kein Prüfadapter, ein bekannter Firmware-Stand. Jeder HiL-Messwert, der sich mit der Referenz nicht in Einklang bringen lässt, ist ein Wert des Prüfaufbaus, kein Wert des Produkts.
4. Die Unsicherheit im Bericht ausweisen. Lautet die Anforderung 5 µA, muss der Eigenbeitrag des Prüfadapters eine Größenordnung darunter liegen, und der Testbericht sollte nennen, wie hoch er war. „Gemessen: 2,1 µA" ist kein Ergebnis; „gemessen: 2,1 µA bei verifiziertem Adapterbeitrag unter 0,2 µA" schon.
Fazit
Ein HiL-Aufbau ist dazu da, ein Gerät zu beobachten, und Beobachtung kostet Strom. Dieser Preis ist nicht klein. Die typischen Fehler liegen zwischen 100 µA und 1 mA, bei Ruheströmen von wenigen Mikroampere: eine im Ruhezustand hohe TX-Leitung gegen einen Pull-down, eine Debug-Probe mit Leitungen auf Low, eine Debug-Sitzung, die den Kern getaktet hält, ein zweiter Massepfad um einen Low-Side-Shunt.
Die gefährliche Hälfte dieser Fehler zeigt nach unten und lässt den DUT effizienter erscheinen, als er ist. Sie bestehen den Test und tauchen später als Garantiefälle wieder auf. Behandeln Sie den Prüfadapter als Teil der Messkette: seinen Beitrag charakterisieren, im Messfenster trennen, was sich trennen lässt, und den Dunkeltest regelmäßig wiederholen. Ein Stromwert aus einem HiL-Aufbau ist erst dann belastbar, wenn Sie sagen können, wie viel der Aufbau selbst gezogen hat.

