Mikrocontroller

32-Bit-MCUs - Vorteile durch konsequente Anwendungsoptimierung

Seite: 2/3

Anbieter zum Thema

Clock-Steuerung mit Onchip-Oszillator-Watchdog

Die XMC-Mikrocontroller verfügen über eine leistungsfähige Funktion zur Clock-Überwachung. Diese Clock-Steuerung mit ihrem Onchip-Oszillator-Watchdog und PLL (verfügbar bei den XMC4000-MCUs) kann Clock-Fehler wie Verlust, doppelte Clock oder Halbfrequenz erkennen. Tritt ein derartiger Fehler auf, dann wird das System automatisch in einen sicheren Betriebszustand gebracht und ein entsprechendes Signal an die Event-Applikation ausgegeben.

Die XMC-Mikrocontroller unterstützen die Implementierung der Sicherheitsfunktionalität gemäß der Class B-Zertifizierung sehr effizient, wenn man diese Hardware-Funktionen mit der frei verfügbaren Selbsttest-Software-Bibliothek für detaillierte Tests und Diagnosen kombiniert. Neben den Start-up-Tests, die Reset-Mechanismus, Speichertests (RAM, Flash, ECC und Parität) und Clock-Systemtests (Source, PLL und Oszillatoren) umfassen, und den Core-Tests gibt es auch einen umfangreichen Satz an Runtime-Tests. Die Test-Routinen der CPU und der Peripheriefunktionen, die von einem Safety-Monitoring-Mechanismus evaluiert werden, entsprechen den Class B-Anforderungen mit einer extrem hohen Diagnose-Abdeckung. Durch die Modularität des Bibliotheks-Designs lassen sich die Startup- und Runtime-Tests einfach in die Anwendungs- bzw. Kunden-Software einfügen.

Zielgerichtete Peripherie für Industrieanwendungen

In der XMC1000-Familie sind zahlreiche Peripheriefunktionen für unterschiedlichste Industrieanwendungen integriert. Ein wesentliches Funktionsmerkmal sind die Timer-Einheiten CCU4 und CCU8. Die Capture/Compare-Unit 4 (CCU4) ist für Systeme wichtig, die leistungsfähige Timer für das Signal-Monitoring bzw. die Verarbeitung sowie die PWM-Signalgenerierung benötigen. Damit können z.B. Schaltnetzteile oder USVs einfach implementiert werden. Die 16-Bit-Timer-Module bestehen aus vier identischen, einfach kaskadierbaren „Timer-Slices”. Diese interne Modularität der Timer-Einheit ermöglicht Software-freundliche Systeme für eine schnelle Code-Entwicklung und einfache Portierung.

Darüber hinaus unterstützt die CCU8 Applikationen mit komplexerer PWM-Signalerzeugung mit komplementären Schaltern in Halbbrücken-Konfiguration, mehrphasiger Regelung und Parity-Check. Diese Funktionen in Kombination mit einem sehr flexiblen und programmierbaren Schema für die Signal-Konditionierung prädestinieren die CCU8 für leistungsfähige Motorsteuerungen, Mehrpasen- und Multi-Level-Systeme.

Um Kurzschlüsse in den Schaltern zu vermeiden, können bis zu vier PWM-Signale per Timer-Slice – bis zu 16 je CCU8-Einheit – mit Totzeit generiert werden. Die MCUs XMC1300 enthalten auch Positionierungs-Interfacemodule (POSIF) für die Unterstützung von Drehgebern, Hall-Sensoren oder die mehrkanalige Positionserfassung. Das Modul sorgt für die Eingangs-Filterung, Flanken-Erfassung und die Steuersignale für die PWM-Einheit. Es kann für unterschiedlichste Motorregelungen konfiguriert werden.

Das A/D-Umsetzer-Modul besteht aus einem Kernel, der nach dem Prinzip der sukzessiven Approximation (SAR) arbeitet. Die Auflösung kann mit 6, 8, 10 oder 12 bit programmiert werden. Außerdem lässt sich die Verstärkung individuell für jeden Kanal einstellen. Bei den Serien XMC1200/1300 sind zudem zwei Sample&Hold-Stufen und schnelle Analog-Komparatoren integriert. Messungen mit den A/D-Umsetzern können von den Timern CCU4/CCU8 getriggert werden.

Anwendungsbeispiel LED-Ansteuerung

Bild 1: Ansteuerung einer LED-Beleuchtung mit der BCCU-Einheit in den XMC1200 Mikrocontrollern.
Bild 1: Ansteuerung einer LED-Beleuchtung mit der BCCU-Einheit in den XMC1200 Mikrocontrollern.
(Infineon)
Für LED-Beleuchtungen eignet sich die Serie XMC1200. Wie auch die XMC1300-Serie verfügt sie über die BCCU-Einheit. Die grundsätzliche Funktion der BCCU besteht darin, automatisch Dimmsignale an den Port-Anschlüssen für externe LED-Treiber zur Verfügung zu stellen (Bild 1). Die BCCU ist – bei minimalem Code-Aufwand – für die automatische Steuerung der Dimmung und der Farben von mehrkanaligen LED-Lampen ausgelegt.

Ein wesentliches Merkmal ist die automatische hochfrequente Helligkeits-Modulation (PDM mit 12 bit Auflösung). Damit wird für jeden der insgesamt neun Kanäle ein individueller Bitstrom erzeugt. Durch die hohe Frequenz erhält man eine hohe Auflösung für den Helligkeitswert bzw. den Farbwert bei RGB-Anwendungen. Damit wird eine flimmerfreie Darstellung ermöglicht, während ein weites Spektrum an unterschiedlichsten LED-Treibern bzw. Hochleistungs-LEDs unterstützt wird.

Die BCCU hat drei Dimming Engines integriert. Diese sorgen für die exponentielle Veränderung der Helligkeit. Die exponentielle Dimmung und lineare Veränderung der Intensität lassen die Dimmungsschritte und Farbänderungen für das menschliche Auge ganz natürlich erscheinen. Darüber hinaus stellt die BCCU auch Trigger-Signale für den A/D-Umsetzer bereit. Damit kann dieser beispielsweise Ströme in mehreren LED-Strängen synchronisiert messen.

Bild 2: Ansteuerung von LEDs und Touch-Panels in HMI-Anwendungen.
Bild 2: Ansteuerung von LEDs und Touch-Panels in HMI-Anwendungen.
(Infineon)
Mit den beiden LEDTS-Modulen der Serie XMC1200 können LEDs und Touch-Panels in HMI-Anwendungen angesteuert werden (Bild 2). Dabei können die Module die Kapazität von bis zu je acht Touch-Pads mit Hilfe einer RO-Topologie (Relaxation Oszillator) messen. Bis zu 64 (8 × 8) LEDs lassen sich in einer LED-Matrix gleichzeitig ansteuern. Touch-Pads und LEDs können sich An-schlüsse teilen, was die benötigte Pin-Anzahl minimiert.

Bild 3: Sensorlose, feldorientierte Regelung mit den XMC1300-Mikrocontrollern.
Bild 3: Sensorlose, feldorientierte Regelung mit den XMC1300-Mikrocontrollern.
(Infineon)
Die XMC1300-Serie ist speziell für Motorsteuerungen optimiert. Mit den Timer-Einheiten CCU4/CCU8 und der Positions-Schnittstelle POSIF lassen sich Position und Geschwindigkeit eines Motors auf einfache Weise ermitteln. Der Math-Co-Prozessor kann darüber hinaus Vektor-Rotation (PARK-Transformation) mit 24-Bit-Auflösung ausführen. Damit ist die Implementierung leistungsfähiger Algorithmen für die feldorientierte Motorreglung möglich (Bild 3).

Die Capture/Compare-Einheit CCU4 kann man etwa zur Puls-Generierung oder mit Hilfe der Dither-Funktion zur Stabilisierung von langsamen Regelschleifen verwenden. In Kombination mit dem programmierbaren POSIF-Block lässt sich auch ein Inkrementalgeber auswerten. Für verschiedene Anwendungsfälle kann mit dem POSIF die Genauigkeit verbessert und die Software vereinfacht werden, da die entsprechenden Daten gleichzeitig erfasst werden können. Ein Tiefpass-Filter unterdrückt das Rauschen und Störimpulse vom Hall-Sensor bzw. Drehgeber, die zu falschen Positions- und/oder Geschwindigkeitsangaben führen könnten. Mit der CCU8 und dem zusätzlichen Compare-Kanal besteht zudem die Möglichkeit, für steigende und fallende Flanken unterschiedliche Totzeiten zu definieren und asymmetrische PWM-Signale zu erzeugen.

Typische Anwendungen, die davon profitieren, sind 3-Phasen-Umrichter für Antriebe, 3-Level-Wechselrichter für Solarmodule oder Halbbrücken-Wandler.

Der 64-MHz-Math-Co-Prozessor besteht aus einem 32-Bit-Teiler und einem 24-Bit-Cordic für trigonometrische Berechnungen. Sowohl die Teiler-Einheit als auch die Cordic-Einheit können parallel zur Cortex-M0-CPU arbeiten. Die Math-Einheit erhöht die Rechenleistung für Echtzeit-Aufgaben signifikant.

(ID:42463730)