Verwendung von Reset-Controllern mit modernen Mikrocontrollern

Sind Reset-Controller für moderne Mikrocontroller wie den LPC2138 oder 9S12XD256 notwendig? Die meisten ARM-Prozessoren, die ich gesehen habe, haben ihre eigenen Brownout-Detektoren und werden ordnungsgemäß zurückgesetzt, und ich sehe keine Reset-Controller, die mit ihnen verwendet werden. Allerdings musste ich sie in der Vergangenheit auf einem Teil der 9S12-Serie verwenden, also überlege ich, ob ich sie auf einem 9S12X-basierten Nachkommen verwenden soll oder nicht.

Antworten (3)

Externe Reset-Controller sind eine absolute Voraussetzung für High-Integrity-Anwendungen, z. B. Bahn und Luft- und Raumfahrt. Ein "unabhängiger Monitor" ist vom Code getrennt und erfordert keine Taktung, was bedeutet, dass sich die MTBF der Platine dadurch erhöht - genau das, was in dieser Art von Umgebungen benötigt wird. Sie werden auch in Multi-CPU-Designs verwendet oder wo es Kombinationen von CPUs, FPGAs, CPLDs usw. gibt, um allen Geräten einen "globalen Reset" zu geben. Möglicherweise möchten Sie die Situation vermeiden, dass 2 Geräte leicht unterschiedliche Brownout-Level haben und daher in verschiedene Betriebszustände

Sie erwähnen Brown-Out nur als Reset-Bedingung. Bei manchen Systemen kann es jedoch mehrere Gründe dafür geben, den Prozessor zurücksetzen zu wollen. In diesem Fall könnte es von Vorteil sein, einen separaten Chip zu haben, um all diese Gründe zu überwachen und entweder den Prozessor zurückzusetzen oder ihn mit einer Art Benachrichtigung zu versehen.

Für einen Extremfall werfen Sie einen Blick auf das Lattice ispPAC-POWER607 . Es ist in der Lage, sechs Netzteile, digitale E/A für manuelles Zurücksetzen und externe Watchdog-Schaltungen zu überwachen. Es hat auch seine eigenen internen Timer, die Stromversorgungsmonitore sind vollständig programmierbar, es hat ein eingebettetes PLD für Logikcode und es hat FET-Treiber zur Steuerung der Stromversorgungen.

Blockdiagramm

Wie gesagt, das ist ein extremes Beispiel. Vor allem, wenn Sie nur eine Brown-out-Erkennung benötigen. Wenn Ihr System jedoch ein komplizierteres Reset-Schema hat, kann es sehr nützlich sein, eine externe programmierbare Steuerung zu haben.

Und natürlich gibt es zwischen dem dreipoligen Einzelspannungsmonitor und dem voll programmierbaren 32-poligen Systemverwaltungschip Chips für jeden Bedarf.

Viele Mikrocontroller benötigen keine Rest-Controller mehr, da sie, wie Sie sagen, über eine interne Reset- und Brwon-Out-Erkennung verfügen. Es gibt jedoch immer noch Ausnahmen, wie einige MSP430-Controller, mit denen ich gearbeitet habe.

Ein Grund, mit externen Reset-Controllern zu arbeiten, kann der Stromverbrauch sein. Ein Brownout-Detektor kann mehrere zehn µA verbrauchen, was nicht das Ende der Welt zu sein scheint, es sei denn, Sie möchten den Mikrocontroller mit durchschnittlich 5 µA betreiben. Die BODs des IIRC AVR benötigen etwa 35 µA. Sie schlagen vor, es auszuschalten, um Strom zu sparen, aber das ist eine schlechte Idee™, es sei denn, Sie haben eine Alternative.

Ich habe MAX809-Reset-Controller mit MSP430-Mikrocontrollern verwendet, die zusammen mit einem Spannungsregler weniger als 7 µA benötigten.

Die Maxim-Geräte will man nicht, die verbrauchen bis zu 35 µA. Entscheiden Sie sich für OnSemi, deren MAX809 verbraucht weniger als 1,2 µA.

Eine andere zu berücksichtigende Sache ist, dass zwar jede Art von Einschalt-/Brown-Out-Detektorschaltung die Möglichkeit hat, metastabil zu werden, wenn die Stromversorgung genau "richtig" (oder "falsch", je nach Ihrem) auf und ab geht Sichtweise) können programmierbare Optionen zum Aktivieren oder Deaktivieren der Brown-Out-Schaltung weitere Fehlermodi hinzufügen (z. B. soll die Brown-Out-Schaltung aktiviert werden, aber die Schaltung wird fälschlicherweise in der Annahme verriegelt, dass sie deaktiviert werden soll). Ein Detektor, der als "aktiviert" fest verdrahtet ist, kann solche Gefahren vermeiden.
@downvoter - Sie stimmen einfach ab, ohne ein Wort zu sagen. Wie kann ich meine Antwort verbessern/korrigieren, wenn Sie nicht sagen, was daran falsch ist?