Software-Entwicklung

Schneller für XMC4000 mit DAVE 3 entwickeln

9. November 2012, 16:20 Uhr | Von Georg Huba
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Wie funktioniert das nun in der Praxis?

Gesteuert von einer externen Puls-Quelle soll nach genau zehn Pulsen ein PWM-Signal mit einem Tastverhältnis von 1 % gestartet werden. Das Tastverhältnis soll kontinuierlich bis 90 % erhöht werden und dann soll das PWM-Signal nach 500 Pulsen automati
Bild 2. Gesteuert von einer externen Puls-Quelle soll nach genau zehn Pulsen ein PWM-Signal mit einem Tastverhältnis von 1 % gestartet werden. Das Tastverhältnis soll kontinuierlich bis 90 % erhöht werden.
© Infineon

In dem folgenden Beispiel soll ein PWM-Signal in Abhängigkeit von einem Pulsgeber erzeugt werden (Bild 2). DAVE 3 kann kostenlos von der Infineon-Webpräsenz heruntergeladen und danach installiert werden [1].

Die applikationsorientierten Software-Komponenten werden DAVE-Apps genannt, da sie die Funktionalität von kleinen Applikations-Elementen bis zu einer vollständigen Applikation abdecken und einfach wie Smartphone-Apps aus dem Internet heruntergeladen werden können. Die auf diese Weise lokal auf dem PC verfügbaren DAVE-Apps können dann mit dem App-Selektor ausgewählt und dem Projekt hinzugefügt werden.

Bild 3 zeigt einen entsprechenden Screenshot der DAVE-3-Entwicklungs-Plattform. Im Folgenden sollen nun die jeweiligen Entwicklungsschritte erläutert werden, um die Software entsprechend den Anforderungen zu entwickeln.

Zunächst werden die DAVE-Apps ausgewählt. Um die Signale des Pulsgebers zu zählen, wird eine Zähler-App plus eine I/O-App, zur Erzeugung der PWM-Signale eine PWM-App und, um das PWM-Signal nach 500 Pulsen mit 90 % Tastverhältnis abzuschalten, wird eine weitere Zähler-App instanziiert.

passend zum Thema

Abbildung der DAVE-3-Entwicklungsplattform mit den verschiedenen Ansichten zu DAVE-Apps.
Bild 3. Abbildung der DAVE-3-Entwicklungsplattform mit den verschiedenen Ansichten zu DAVE-Apps.
© Infineon

Zusätzlich werden noch zwei Interrupts (NVIC-Apps) für das Update des Tastverhältnisses und die Re-Initialisierung benötigt. Bild 4 zeigt die grafische DAVE-App-Ansicht, nachdem diese DAVE-Apps für das Projekt instanziiert wurden. Dabei zeigt sich bereits die erste Besonderheit; es sind mehr DAVE-Apps zu sehen, als ausgewählt wurden.

Ein DAVE-App kann die Ressourcen einer anderen DAVE-App anfordern. Dies ist der Fall bei der Taktgeber-App, da die Zähler- und PWM-Instanzen auch einen konfigurierten Clock-Tree benötigen, der von der Taktgeber-App bereitgestellt wird.

Als nächstes folgt die Verbindung der Hardware-Signale. DAVE-Apps sind nicht nur simple Software-Komponenten, die ausschließlich eine Programmierschnittstelle (API) zur Verfügung stellen, sondern auch Hardware-Signale beinhalten, die direkt mit den Signalen anderer DAVE-Apps verbunden werden können. Um die hier geforderte Funktionalität zu erreichen, müssen folgende Signale verbunden werden:

Abbildung der ausgewählten DAVE-Apps (IO002, CNT001, PWMSP001, NVIC001) plus automatisch angeforderte DAVE-Apps, um Ressourcen für die gewählten DAVE-Apps bereitzustellen.
Bild 4. Abbildung der ausgewählten DAVE-Apps (IO002, CNT001, PWMSP001, NVIC001) plus automatisch angeforderte DAVE-Apps, um Ressourcen für die gewählten DAVE-Apps bereitzustellen.
© Infineon
  • Der Status-Ausgang der Zähler-App (Instanz 0) mit dem Start-Eingang der PWM-App.
  • Der Status-Ausgang der PWM-App mit dem Zähler-Eingang der Zähler-App (Instanz 1).
  • Event-Signale mit dem jeweiligen Interrupt-Eingang der beide NVIC-App-Instanzen.

Es folgt die Konfiguration der DAVE-Apps über die grafische Benutzerschnittstelle. Durch Doppelklicken auf eine DAVE-App öffnet sich die grafische Benutzerschnittstelle. Entsprechend den Konfigurationsmöglichkeiten der jeweiligen DAVE-App können die gewünschte Funktionalität und der Initialisierungsstatus eingestellt werden.

Für die Zähler-App-Instanz 0 wird ein Count-Match-Event nach 10 Pulsen definiert, während für die Instanz 1 ein Count-Match-Event nach 500 Pulsen definiert wird. Bei den NVIC-Apps wird die Interrupt-Priorität und der Name der Handler-Funktion festgelegt.


  1. Schneller für XMC4000 mit DAVE 3 entwickeln
  2. Wie funktioniert das nun in der Praxis?
  3. Manuelle Pin-Festlegung
  4. Literatur

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu Infineon Technologies AG