Ich möchte mein Regal mit ein paar dekorativen Basteleien verzieren.
Konkret dachte ich an eine alte Oszi-Röhre (oder 3 kleine davon), die
z.B. den Lorenz-Attraktor oder den Chuo-Oszillator anzeigt (oder ganz
banal eine Uhr). Da Gleitkomma-Power dazu nicht schaden kann und ich
zwecks Gelderwerb Cortex M3 programmiere, hatte ich an einen Cortex M4
gedacht. Sonstige IO (ADCs, PWM, digital) brauche ich natürlich auch,
aber die hat jeder Prozessor. DACs wären fürs Oszi praktisch, kann man
aber auch per SPI anhängen).
Die Frage ist jetzt, welchen Prozessor bzw. welches Entwicklungsboard
und vor allem welche Entwicklungssoftware dazu? Kommandozeilen-Bastelei
mit gcc habe ich schon viele Jahre hinter mir gelassen und vermisse ich
nicht. Es dürfte also schon eine gut funktionierende IDE sein, ich würde
lieber Fehler in meiner Software suchen als im Compiler oder Debugger.
Das Board für "Künstler" wäre ja der Arduino, es gäbe mit dem Due einen
Cortex M3, aber die jämmerlichen Debug-Möglichkeiten schrecken mich ab.
STM32 gäbs ja auch mit M4, aber keine hobbytaugliche Softare dazu (ich
arbeite beruflich mit IAR EWARM, völlig jenseits preislich).
Von TI gäbe es den Tiva C und eine aktive Lizenz des Code-Composters
hätte ich auch.
Atmel wäre noch ein Kandidat, da gäbe es die ATSAM4 mit diversen
Eval-Boards, vor allem kostenlosem Atmel Studio, auch für ARM! Kennt das
jemand? Atmel kennt man ja sonst nur von den kleinen 8-bittern. Wenn ich
an die nur mit Mühe vierstelligen Preise von z.B. IAR denke, wäre eine
kostenlose (taugliche!) IDE eine Sensation. Vielleicht will ja Atmel vom
8-Bit-Image wegkommen und verschenkt die IDE deswegen.
Für NXP scheint es keine günstige IDE zu geben, bei Infineon Dave (?)
für den XMC 4000.
Hm, Tiva C oder ATSAM4 - kenne beide nicht, was meint Ihr? Danke!
Hallo,
ich würde für den Anfang das STM32F4 Discovery nehmen, da hast du ein
top Preis/Leistungsverhältnis. Als IDE kannst du die von CooCox nehmen.
Die ist kostenlos und damit kannst du dann auch alle anderen ARM
programmieren.
Gruß Daniel
Ja, die Discovery-Boards sind tolle Bastelvorlagen, habe ich schon mit
dem STM32F1 verwendet. CooCox ist mir neu, schau ich mal an, super!
Danke - Martin
Würde auch Coocox verwenden und STM-Boards. Oder du schaust dir mal von
NXP das LPC4357-EVB an. Und Programmieren könntest du es mit der
LPCXpresso IDE.
MoinMoin,
Martin schrieb:> Die Frage ist jetzt, welchen Prozessor bzw. welches Entwicklungsboard> und vor allem welche Entwicklungssoftware dazu?>
...ich benutze derzeit ein Stellaris Launchpad für ähnliche Spielereien:
http://bralug.de/wiki/ScopeclockMartin schrieb:> Kommandozeilen-Bastelei> mit gcc habe ich schon viele Jahre hinter mir gelassen und vermisse ich> nicht. Es dürfte also schon eine gut funktionierende IDE sein, ich würde> lieber Fehler in meiner Software suchen als im Compiler oder Debugger.>
ok, was hast du gegen einen Editor deiner Wahl und dem freien
arm-none-eabi-gcc plus einem vernünftigen Makefile? -->
http://bralug.de/wiki/Tux_fliegt_zu_den_Sternen
Natürlich gibt es auch das Rundum-Sorglos-Paket für dieses TI-Board,
wenn man möchte:
http://bralug.de/wiki/Tux_fliegt_zu_den_Sternen#Energia
Grüße Uwe
PS.: die max. 80MHz Taktrate der MCU auf dem Board, sollten eigentlich
für die Spielereien reichen!
Du weißt, dass der M4F nur Single Precision hat? Für double brauchst Du
einen A8 mit VFP.
Wo ich gerade unsicher bin, ist ob die FPU beim M4 immer dabei ist. Die
Chiphersteller können den Core in gewissen Grenzen konfigurieren und
Dinge hinein- und herauskonfigurieren. Dazu gehören zB die Anzahl der
Interrupt Level, oder das Embedded Tracing Module. Wie gesagt, ich bin
mir nicht 100% sicher, ob die FPU immer dabei ist oder auch hinein- oder
herauskonfiguriert werden kann. Schau ins Datenblatt.
Atmel verwendet - wie alle anderen auch - nur den gcc. Die IDE ist die
vom MS Visual Studio. Wenn Du das bereits installiert hast, könnte sich
das eventuell beißen.
fchk
Frank K. schrieb:> Wo ich gerade unsicher bin, ist ob die FPU beim M4 immer dabei ist.
Die FPU ist beim Cortex-M4F dabei, beim Cortex-M4 nicht. Einen Cortex-M4
Mikrocontroller produziert aber kaum einer/keiner(?), sondern verwendet
stattdessen Cortex-M3. Die STM32F4 und F3 sind aber Cortex-M4F, d.h.
haben eine single-precision FPU.
Ich habe damals mich für die STM32Fxxx reihe entschieden, weil ST von
denen über 250 verschiedene Variationen (Gehäuse, RAM/ROM,
Pheriperiefunktionen) bietet, auch vor allem kleinere Gehäuse (48/64
Pin's), was NXP nicht so macht, da ist dann gleich der M0 drin.
Lese mal hier im Artikel: STM32
Ich glaube, nur die NXP-reihe LPC4300 hat den M0 mit drin, die LPC4000
nicht.
Kleinstes Gehäuse da LQFP80, was sich ja noch ganz gut mit der Hand
löten lässt.
Waldi schrieb:> Nur zur Info: CooCox unterstützt den F3 nicht.
Man erstelle ein Projekt für den F4, wähle ein Linkerscript,
StdPeripheral Library für den F3 aus und läuft, falls das mit CooCox
geht; der Compile-Vorgang ist sonst genau gleich.
Max Krohmann schrieb:> Kleinstes Gehäuse da LQFP80, was sich ja noch ganz gut mit der Hand> löten lässt.
Naja, von Hand löten lässt sich eigentlich alles problemlos bis auf QFN
(mit von Hand meine ich Leiterplatte+Schablone bestellen, löten auf
Heizplatte oder Grill). Leider gibt es sehr viele neue Bauteile nur noch
als QFN, und die löten sich trotz Schablone nicht problemlos als
Prototyp (meine Trefferquote dabei ist vielleicht 70%). 100% geht m.E.
nur mit Pastendrucker und Bestückungsautomat. Meine Lieblinge sind BGAs,
die gehen sogar ohne Schablone nur mit Flussmittelpaste und Fön. QFPs
sind natürlich traumhaft zu löten, vor allem mit Wellenlötspitze (a la
Weller LT-GW). Und gottseidank gibt es noch bleihaltiges Lot.
Aber trotzdem würde ich wenn irgend möglich keine Leiterplatte selber
machen. Für einen 100-MHz-Prozessor wäre ein 4-fach ML ja schon nicht
schlecht und bis alle Leitungen, Entkopplungen, ADC-Versorgungs-Filter,
Debugleitungen, Quarz, -zig IOs... verdrahtet sind, hat man einen
Riesenaufwand, das lohnt nur für Serienprodukte. Die STM32
Discovery-Boards sind da wirklich genial, sogar der Debugger ist
integriert und sie kosten fast nix. Wenn Leiterplatte, dann ein
Aufsteckboard für ein Discovery-Board.
Werde mich wohl an die STM32F4 halten: Es gibt dazu ein Discovery-Board,
die standard peripheral library kenne ich auch schon recht gut (auch
wenn man, wenn man den Code anschaut, öfters tief durchatmen muss - sie
funktioniert!) und CooCox sieht auch gut aus. Ob Fliesskomma in single
precision für Chaos reicht, wird sich zeigen...
Danke nochmal für die vielen hilfreichen Tips!