Forum: Mikrocontroller und Digitale Elektronik Umstieg auf AVR32


von Maxim (maxim) Benutzerseite


Lesenswert?

Überlege mir, für mein übernächstes Projekt "Lichtorgel" einen AVR32 zu 
nehmen. Ich habe vor, etwa 10 RGB-LEDs durch einen dedizierten 
PWM-Controller mit einem uC anzusteuern. Damit ließen sich hübschen 
Effekte erzielen. Allerdings weiß ich nicht, ob die Megas dafür noch was 
taugen. Um die Audiosignale auszuwerten, braucht man doch schon 
ordentlich Leistung, zumindest die Grundrechenoperationen in Hardware 
und am besten 16-bittig. Das denke ich zumindest. Hab noch Null 
Erfahrung auf diesem Gebiet.

von Dan B. (danyo)


Lesenswert?

Hallo maxim!

Also meiner Meinung nach brauchst du für ne Lichtorgel gar keinen 
Mikrocontroller. Du baust dir einfach für die auszuwertenden Frequenzen 
verschiedene Bandpässe auf, die mit einem Schwellwertschalter und 
Transistor für die jeweilige LED verbunden sind. Das is alles reine 
Analogtechnik..

Grüße,
Danyo

von Maxim (maxim) Benutzerseite


Lesenswert?

Dan Boone wrote:
> Hallo maxim!
>
> Also meiner Meinung nach brauchst du für ne Lichtorgel gar keinen
> Mikrocontroller. Du baust dir einfach für die auszuwertenden Frequenzen
> verschiedene Bandpässe auf, die mit einem Schwellwertschalter und
> Transistor für die jeweilige LED verbunden sind. Das is alles reine
> Analogtechnik..
>
> Grüße,
> Danyo

Schon klar, aber warum einfach, wenn's auch kompliziert geht? Mich reizt 
auch die mathematische Umsetzung und dafür brauche ich nunmal 
Rechenpower.

Ich habe mal einen Link gesehen, vielleicht war er in diesem Forum. Da 
hat einer einen Frequenzanalyzer für Audiosiganle gebastelt. Er ist 
allerdings mit einem Mega ausgekommen und hat dort sogar die 
Fourier-Transformation hinbekommen. Weiß jemand zufällig, was ich meine?

von Sigint 112 (sigint)


Lesenswert?

@Maxim:
   natürlich weiß jemand was du meinst: 
http://elm-chan.org/works/akilcd/report_e.html
Für eine einfache Lichtorgel sollte ein Mega mehr als ausreichend sein. 
Ein AVR32 dürfte etwas Overkill sein. Andererseits kann es nie schaden 
sich für neue Architekturen zu interessieren. Wobei ich dann mit einem 
ARM7 anfangen würde, da diese Architektur weiter verbreitet sein dürfte 
als der AVR32. Darüber hinaus bist du dann nicht wieder abhängig von 
einem Hersteller.

Gruß,
  SIGINT

von Maxim (maxim) Benutzerseite


Lesenswert?

Danke für den Link. Ich habe mich etwas mit der Fourier-Transformation 
auseinandergesetzt. Für die FFT mit der Auflösung für meinen Zweck ist 
sogar ein Mega fast schon overkill. ;) Aber ich finde schon eine 
Aufgabe, um de AVR32 auszulasten ...

Gibt es eine Seite, die den AVR32 etwas näher bringt? Ich frage mich 
z.B., ob der AVR32 nur 3,3V an den IO-Pins liefert und wie man den Takt 
erzeugt. Das ist bei den Standard-Bastler-uCs ala Mega oder 51er anders. 
Hier gibt es bislang keinen ausführlichen Artikel über den AVR32. 
Außerdem würde ich auf einen Kit (Grashopper oder das Board von Atmel) 
verzichten und mir selber eine minimale programmierbare Platine 
erstellen.

PS: Ich habe ein paar AVR32er schon bestellt, andere uCs kommen also 
nicht mehr in Frage. ;)

von sepp (Gast)


Lesenswert?

>Gibt es eine Seite, die den AVR32 etwas näher bringt?

www.atmel.com
www.avrfreaks.net

>Ich frage mich z.B., ob der AVR32 nur 3,3V an den IO-Pins liefert und wie man 
>den Takterzeugt. Das ist bei den Standard-Bastler-uCs ala Mega oder 51er >anders.
>Hier gibt es bislang keinen ausführlichen Artikel über den AVR32.
Das steht alles in der Dokumentation für den AVR32.

Vielleicht solltest du dir mal das EVK1100 und das Softwareframework für 
den AVR32 mal anschauen.

von Simon K. (simon) Benutzerseite


Lesenswert?

Maxim S. wrote:
> Gibt es eine Seite, die den AVR32 etwas näher bringt?
http://atmel.com/products/AVR32/
http://atmel.com/dyn/products/product_card.asp?family_id=682&family_name=AVR32+32%2Dbit+MCU&part_id=3903
http://atmel.com/dyn/products/product_card.asp?family_id=682&family_name=AVR32+32%2Dbit+MCU&part_id=4117

> Ich frage mich
> z.B., ob der AVR32 nur 3,3V an den IO-Pins liefert und wie man den Takt
> erzeugt.
AP7k Datasheet: 
http://atmel.com/dyn/resources/prod_documents/doc32003.pdf
UC3A Datasheet: 
http://atmel.com/dyn/resources/prod_documents/doc32058.pdf

> Hier gibt es bislang keinen ausführlichen Artikel über den AVR32.
Stimmt, wär mal was für den Artikel-Contest ;)

> Außerdem würde ich auf einen Kit (Grashopper oder das Board von Atmel)
> verzichten und mir selber eine minimale programmierbare Platine
> erstellen.
Wieso? Der Grasshopper ist doch super für so etwas. Vergiss nicht, dass 
die Beschaltung eines Prozessors in der Klasse schon etwas heftiger ist, 
als die eines einfachen kleinen 8-Bit AVRs.
Also nichts für Anfänger hier (nur für den Falle, dass du einer bist ;))
Ich habe hier das EVK1100 und da geht schon ne ganze Menge mit.

> PS: Ich habe ein paar AVR32er schon bestellt, andere uCs kommen also
> nicht mehr in Frage. ;)
Die Dinger sind in der Tat nicht schlecht, ne Menge Ausstattung, richtig 
gute Leistung und richtig viele Nebenbei-Features (wie 5V tolerante 
Eingänge usw.)
Welche hast du denn bestellt? UC3x Serie, oder AP7k Serie?

von Maxim (maxim) Benutzerseite


Lesenswert?

Hab den AT32UC3A0128 bestellt. Die AP7xxx haben doch keinen internen 
Flash.

von Maxim (maxim) Benutzerseite


Lesenswert?

Der Preis ist halt etwas zu hoch. Ok, für die Ausstattung ist der 
Grashopper sogar noch ziemlich günstig. Aber ich brauche das alles 
nicht.
Ich habe mir den Schaltplan des Grashopper angeschaut. Die Beschaltung 
ist natürlich aufwendiger, aber ist machbar. Vielmehr erwatrte ich 
Probleme bei der Konfiguration des Prozessors. Bei der Fülle an Features 
...
Endlich kann ich dann auch auf C umsteigen.

von Sigint 112 (sigint)


Lesenswert?

@Maxim:  C kannst du aber auch mit den AVRs nutzen... dafür gibts doch 
AVR-GCC. Schade ist bei den AVRs nur, daß man keine Programme aus dem 
RAM ausführen kann. Zum Thema Preis: Da hat die ARM-Reihe die Nase 
vorne, da es große ARMs mit viel Rechenleistung gibt und kleine (z.B. 
LPC-Reihe) für den Hobbybastler.

Gruß,
  SIGINT

von Maxim (maxim) Benutzerseite


Lesenswert?

Die Spannungsversorgung und Takterzeugung möchte ich vom Grasshopper 
übernehmen. Aber wie sieht es mit der Schnittstelle zum PC aus? Der 
Grasshopper hat ja den AP7000. Somit ist der Flash-Speicher extern. Wird 
die Programmierung trotzdem über den AVR32 abgewickelt oder kann der 
Flash-Baustein ohne Zutun vom Mikrocontroller programmiert werden? Mir 
geht es darum, ob ich die Programmierschnittstelle für den AT32UC3A0128 
auch vom Grasshopper übernehmen kann.

@Sigint 112: Danke für den Hinweis. Habe mich aber schon für den AVR32 
entschieden.

von Simon K. (simon) Benutzerseite


Lesenswert?

Maxim S. wrote:
> Die Spannungsversorgung und Takterzeugung möchte ich vom Grasshopper
> übernehmen. Aber wie sieht es mit der Schnittstelle zum PC aus? Der
> Grasshopper hat ja den AP7000. Somit ist der Flash-Speicher extern. Wird
> die Programmierung trotzdem über den AVR32 abgewickelt oder kann der
> Flash-Baustein ohne Zutun vom Mikrocontroller programmiert werden? Mir
> geht es darum, ob ich die Programmierschnittstelle für den AT32UC3A0128
> auch vom Grasshopper übernehmen kann.

Der UC3A wird über JTAG programmiert. Das geht zZt nur mit einem JTAG 
ICE mkII.

von Maxim (maxim) Benutzerseite


Lesenswert?

> Der UC3A wird über JTAG programmiert. Das geht zZt nur mit einem JTAG
> ICE mkII.

Jap, soviel hab ich heute auch rausgefunden. Geht das auch mit dem 
usbprog v3.0?

Es gibt ein Kommandozeilenprogramm namens avr32program. Konnte es bisher 
aber nicht finden und weiß auch nicht, ob es unter Windows läuft und ob 
es einen Bootloader braucht oder wie die Hardware beschaffen sein muss.

von Maxim (maxim) Benutzerseite


Lesenswert?

Kann man den AVR32 mit Usbprog und AVR32-Studio programmieren? Der 
Programmer soll sich ja wie das Original mkII verhalten. Auf die 
Unterstützung von AVR32 wird aber nicht hingewiesen.

von Maxim (maxim) Benutzerseite


Lesenswert?

Hat wirklich noch nie jemand versucht, einen AVR32 mit dem Usbprog zu 
programmieren?! Den mkII zu kaufen kommt für mich als Student nicht in 
Frage.

von PapaNappa (Gast)


Lesenswert?

Geht's jetzt noch um den AP7000 oder UC3?
Die UC3 können doch auch mit dem vorbespielten Bootloader über USB 
programmiert werden.

von Maxim (maxim) Benutzerseite


Lesenswert?

Ich meine den UC3. Möchte den uC ohne Bootloader betreiben.

von SiO2 (Gast)


Lesenswert?

Ich hab versucht mit usbprog das Teil zu flashen, danach war es 
"zerflasht", hat noch nicht mal die FlashID mehr erkannt. So schnell 
mach ich das nicht nochmal.
Neuflashen mit mkII und alles war wieder ok. Aber es steht ja auch beta 
bei der entsprechenden Firmware ;).

von Maxim (maxim) Benutzerseite


Lesenswert?

Welche Firmware hast du benutzt?

von Maxim (maxim) Benutzerseite


Lesenswert?

Ok, wenn zur Zeit keine Möglichkeit besteht, den AVR32 ohne Bootloader 
zu flashen, wie flashe ich ihn mit einem Bootloader? Ich bekomme ja 
nackte AVR32 geliefert. Zuerst muss also der Bootloader drauf, oder?

Gibt es nicht irgendwie eine Möglichkeit, den Bootloader auf einen 
externen Flash-Baustein zu schreiben und dem uC zu sagen, dass er den 
Code aus dem externen Flash-Speicher ausführen soll?

von SiO2 (Gast)


Lesenswert?

@maxim: wenn Du mich meinst, die die auf der HP zum Download stand.

von Maxim (maxim) Benutzerseite


Lesenswert?

SiO2 wrote:
> @maxim: wenn Du mich meinst, die die auf der HP zum Download stand.

Also die "AVR 32 Programmer"? Oder doch "AVRISP mk2 Klon"?
http://www.embedded-projects.net/index.php?page_id=155

von Karsten D. (karstendonat)


Lesenswert?

Der UC3 wird bereits mit dem Atmel Booloader ausgeliefert.

Getestet hab ichs noch nicht. Komm demnächst...

Ciao
Karsten

von Hans W. (hans_wurst)


Lesenswert?

Wenn du nur deinen Code übertragen möchtest, kannst du doch auch das 
Programm Flip zum flashen verwenden:
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3886

Der Bootloader muss natürlich vorher schon auf dem Controller sein.

von Maxim (maxim) Benutzerseite


Lesenswert?

Karsten Donat wrote:
> Der UC3 wird bereits mit dem Atmel Booloader ausgeliefert.
>
> Getestet hab ichs noch nicht. Komm demnächst...
>
> Ciao
> Karsten

Das habe ich zwar vermutet, konnte die Bestätigung aber nicht im 
Datenblatt finden und habe daher angenommen, dass der uC ohne Bootloader 
ausgeliefert wird.

> Wenn du nur deinen Code übertragen möchtest, kannst du doch auch das
> Programm Flip zum flashen verwenden:
> http://www.atmel.com/dyn/products/tools_card.asp?t...
> Der Bootloader muss natürlich vorher schon auf dem Controller sein.

Laut Karsten ist der Bootloader schon im Auslieferungszustand im 
Flash-Speicher. Ist das genau der Bootloader, der mit FLIP funktioniert?

edit: Habe gerade bei Atmel ein Paper zum Bootloader gefunden. Hab's 
doch die ganze Zeit glatt übersehen. Sind wohl zu viele Informationen 
auf einmal. ;)

von Simon K. (simon) Benutzerseite


Lesenswert?

Auf meinem EVK1100 Board war bei Auslieferung kein Bootloader drauf. Nur 
die Demo-Software alleine.

von Karsten D. (karstendonat)


Lesenswert?

Zum EVK1100 gibts in der FAQ den Hinweis, dass einiger ältere Chargen 
ohne Bootloader ausgeliefert wurden.

Da hilft dann im Moment wohl nur der JTAG mkII.

Karsten

von Maxim (maxim) Benutzerseite


Lesenswert?

Was ist denn die neuste Revision des UC3A? Hab bei Atmel nur einen 
indirekten Hinweis gefunden, dass es die E (engineering sample, also die 
verbuggte Revision) und H gibt.  Irgendwo habe ich aber noch von Rev. I 
gelesen. Gibt es eine Übersicht zu allen Revisionen?

von PapaNappa (Gast)


Lesenswert?

Im Datenblatt steht in den Erratas auch schon was von der Rev. I - 
allerdings sind zumindest die Erratas bei beiden Revsionen (I und H) 
identisch.
Wenn jemand ne Info bekommt, wo der Unterschied ist, würde mich das auch 
mal interessieren.

Irgendwo habe ich auch gelesen, dass H und I als "Industrial Samples" 
bezeichnet werden.

von Zippi (Gast)


Lesenswert?

Also ich denke mal das i einfach nur die gleichen sacher nochmal 
überwarbeitet(verbessert) wurde.

Allso UC3 controller werden seit August 2007 mit bootloadern 
ausgestattet. Also da brauchst du dir keiner sorgen zu machen. Was du im 
schaltplan beachten musst ist das du das USB rauslegst und den Main 
clock anschließt.
Von der USB spannung an kannst du dann auf 3,3V runter gehen mit nem 
vestpannungsregler und dann die versorgung vom AVR32 hängen. Dann 
brauchst du nur den Prozessor über USB zum PC verbinden und der PC 
erkennt das dann. Dann machst du die treiber auf den PC und fertig.

Ich frag mit nur wieso du ein at32uc3a0128 gekauft hast. Da du für deine 
lichorgel kein sram brauchst hättest du auch den at32uc3a1128 kaufen 
können. Der ist kleiner und günstiger.

Zur programmierung, du musst für den bootloader entweder die linker 
scrippts verändern oder eine datei includen.

von Philipp K. (philippk) Benutzerseite


Lesenswert?

Den AVR32 kann man mit dem USBProg programmieren:

http://www.embedded-projects.net/index.php?page_id=235

ob das auch mit dem nachgebauten JTAG ICE mkII geht weiss ich nicht.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.