AVR AT32UC3L0256 Digital Frequency Locked Loop (DFLL) konfigurieren

Gast #3584066
Lesenswert?
• ▲
▼
Hallo Leute,

für private LED-Projekte würde ich gerne den AT32UC3L0256 uC von Atmel 
einsetzen. Interessant ist dieser dafür, dass er insgesamt 35 
unabhängige PWM -Kanäle besitzt. Damit komplexere Berechnungen möglichst 
schnell durchgeführt werden können, soll der uC mit der max. Frequenz 
von 50 MHz getaktet werden 
(http://www.atmel.com/devices/at32uc3l0256.aspx?tab=parameters).

Der AT32UC3L0256 enthält intern mehrere Oszillatoren sowie 
Phasenregelschleifen(PLL) und Frquenzregelschleifen(DFLL), die es 
erlauben den uC mit unterschiedlichen Systemtakten zu versorgen. Die 
einzige Möglichkeit, die ich gesehen habe, die CPU des uCs mit 50 MHz zu 
takten, ist die interne DFLL zu verwenden. Diese kann von abhängig von 
internen Oszillatoren Frequenzen zwischen 20 MHz bis 150 MHz erzeugen - 
laut dem Datasheet 
(http://www.atmel.com/Images/Atmel-32145-32-bit-Flash-MCU-UCL0_datasheet.pdf, 
Seite 190, Abschnitt 13.5.4).

Da liegt jetzt auch mein Problem, ich bekomme die DFLL nicht richtig in 
gang bzw. nicht eingestellt.
- Hat jemand mit der DFLL bereits etwas Erfahrung sammeln können?
- Kennt jemand Beispielcode, der funktionsfähig ist?


Im Atmel Software Framework gibt es eine knappt Dokumentation zu einigen 
Funktionen die zur Konfiguration der DFLL eingesetzt werden können 
(http://asf.atmel.com/docs/latest/avr32.applications.uc3l-ek-touch-demo.example/html/group__dfll__group.html). 
Ein Code-Beispiel sieht z.B. so aus:
1
struct dfll_config dfllcfg;
2
dfll_enable_source(CONFIG_DFLL0_SOURCE);
3
dfll_config_defaults(&dfllcfg, 0);
4
dfll_config_enable_dithering(&dfllcfg);
5
dfll_enable(&dfllcfg, 0);
6
dfll_wait_for_accurate_lock(0);

Leider gibt es die Funktion "dfll_enable(...)" nicht, womit dieses 
Beispiel im AVR-Studio nicht kompiliert. Ich habe an dieser Stelle das 
Enable-Bit für die DFLL dann manuel gesetzt, was leider nicht geholfen 
hat.

Wenn da also jemand eine Idee oder Tipp hat, dann wäre ich dafür sehr 
dankbar. :)


Beste Grüße,

-Chris

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.