Hallo,
ich habe schon ein paar Hobby-Projekte mit Atmegas durchgeführt. Nun
will ich auch mal ein Schritt weiterkommen und mich mit einer anderen
Controller-Familie beschäftigen. Als Ziel setze ich mir in einem
nächsten längerfristigen Projekt einen kleinen Webserver. Da dabei
höhere Anforderungen herrschen, bin ich mir nicht sicher ob ich mich
jetzt in ATxmega einarbeiten soll oder gleich (um nicht halbe Sachen
zumachen) in Richtung ARM zu gehen. Mich würden ARMs mal interessieren,
weil man in Fachzeitschriften immer relativ viel darüber liest.
Andererseits: Kommt man damit im Hobbybereich überhaupt noch zurecht mit
so einer Riesen Maschine?
Gruß tobiflea
Nimm nen beagle oder pandaboard ,
alternativ nen rasberry pi
Kleines Geld viel Leistung (im vergleich zu Atmega)
und Software ist schon fast alles vorhanden und kompiliert
>Kommt man damit im Hobbybereich überhaupt noch zurecht mit>so einer Riesen Maschine?
Weshalb ist das einen riesen Maschine ?
Gehäuse ist nicht größer als bei einem AVR.
Teurer sind sie auch nicht unbedingt.
unsigned int geht halt einfach weiter also 65535 .... und Programm läuft
irgenwie schneller ....
Ich persöhnlich würde ARM Prozzis empfehlen. Die haben meines Erachtens
- ohne jetzt einen Glaubenskrieg lostreten zu wollen - mehr Zukunft als
die ATXMegas. Dazu mehr Leistung, bessere Skalierbarkeit und besseres
Preis-Leistungsverhältnis.
Wenn man mit Cortex-M0 anfängt hat man in etwa die selbe Perpherie wie
ein großer Atmega, bei mehr Leistung. Ich habe mit den LPCXPresso Boards
recht schnell umgelernt.
Wenn man dann noch mehr Leistung braucht geht man langsam richtung
Cortex M3/M4 die meistens noch ganz gut von Hand zu verarbeiten sein.
Wenn man dann richtig dicke Leistung hat, braucht sollte man fertige
Boards mit Cortex-A Prozzis kaufen. Beagleboard /-bone oder Raspberry
oder wie die heißen und ie eigene Erweitungen anflanschen. Die nötigen
Bauteile kann man kaum noch zu Hause verarbeiten.
Hallo,
ich hab auch AVR programmiert und bin dann auf ARM umgestiegen.
Ich programmiere STM32 (Cortex M0/M3/M4).
Am Anfang ist es bisschen schwierig, da man sich umgewöhnen muss. Aber
mit der Zeit wird es dann relativ einfach. Ein großer Vorteil sind die
Fertigen Lib´s für die Peripherie von ST. Du kannst ja mal auf der
Webseite von ST und hier im Forum dir die Controller und die Lib´s
ansehen.
Der Einstieg ist auch relativ güstig z.B STM32F4Discovery gibt es bei
Watterott für unter 20€. Da ist dann auch gleich ein Programmer mit
drauf den man auch extern verwenden kann.
Als IDE gibt es viele verschiedene wobei ich dir die CoIDE empfehlen
würde, da die kostenlos ist und keine Code-Begrenzung hat. Außerdem ist
sie auch schön übersichtlich gestalten.
Hier noch nen paar links:
http://www.st.com/internet/mcu/class/1734.jsphttp://www.mikrocontroller.net/articles/STM32http://www.diller-technologies.de/stm32.html
Was kommt nach Atmega?
Hmm, schau, was du bekommen und verarbeiten kannst. Hier gibt es viele,
die immer noch mit DIL-Gehäusen und Steckbrettern herumhantieren, weil
sie mit SMD und Leiterplatten nicht zurecht kommen (ist auch ne
Kostenfrage) und/oder weil sie keine guten Bezugsquellen haben.
Die dickeren PIC's sind durchaus interessant, die 32 Bitter von Fujitsu
sind meine eigentlichen Favoriten, aber im Allgemeinen würde ich dir zu
den Cortexen raten, denn die sind technisch gut und mit kräftig
steigender Verbreitung. Und bei denen rate ich dir zu solchen, die einen
Bootlader unverlierbar fest eingebaut haben, vor allem NXP und ST. Das
ist ne gute und saubequeme Sache, um einerseits den Chip zu
programmieren und andererseits gleich auch ne Serielle zu haben, die man
als Bastler ja sowieso häufig braucht - und billig obendrein.
Natürlich schreien Leute, die eigentlich zu doof sind zum Programmieren
sofort nach nem SWD oder JTAG-Adapter, weil sie ohne Debugger keine
einzige Zeile Code hinkriegen, aber das kostet Geld oder Mühe, sowas zum
Laufen zu bringen und deshalb halte ich die Variante mit dem Bootlader
für besser.
W.S.
Paul Baumann schrieb:>>Was kommt nach Atmega?>> Vom Logischen her AtGiga!
Die Marketingleute von Atmel haben ihn aber Xmega genannt. ;-)
Von der Handhabung her sind Xmega und die kleinen ARMs (Cortex-M*)
gar nicht so sehr unterschiedlich, der logische Aufbau ähnelt sich
aus Programmierersicht sehr.
Ich würde ganz weg von den Atmega/Xmega (Toter Ast) Nimm lieber etwas,
was auch weit verbreitet ist. Also Arm.
Von Texas Instruments gibt es zum Beispiel den LM3S6965.
Das ist ein Cortex M3 mit integriertem MAC + PHY. Das bedeutet, dass du
da nur noch eine Ethernet Buchse drann klemmen musst und schon ist dein
Webserver fertig. Ganz ohne zusätzliche ICs mit winzigem Bauteilaufwand!
Damit passt dein Webserver auf einen Daumen.
>Natürlich schreien Leute, die eigentlich zu doof sind zum Programmieren sofort
nach nem SWD >oder JTAG-Adapter, weil sie ohne Debugger keine einzige Zeile Code
hinkriegen, aber das kostet >Geld oder Mühe, sowas zum Laufen zu bringen und
deshalb halte ich die Variante mit dem >Bootlader für besser.
Wie bereits erwähnt bieten sowohl ST als auch NXP Boards für um die 20
EUR inkl. Debugger an.
Die kann man einfach abtrennen und für eigene Projekte nehmen.
Natürlich kann man, wenn man will auch über den Bootloader gehen.
Aber warum sollte man bei dem Preis?
Oberlehrer schrieb:> Ich würde ganz weg von den Atmega/Xmega (Toter Ast) Nimm lieber etwas,> was auch weit verbreitet ist. Also Arm.
Jaja, die übliche Geschichte. Schließlich muss man ja nur den ARM
von Hersteller X kennen, dann kennt man alle. Auch wenn Hersteller
Y völlig andere Peripherie dran baut.
> Cortex M3 mit integriertem MAC + PHY
...was das beste Beispiel wäre. ;-)
Ich finds traurig, dass sich Atmel sehenden Auges ins abseits befördert,
zumindest in der MC-Schiene. Das war mal ne dynamische Firma. Ich fand
damals (tm) den AVR-Kern samt flash und EEProm wirklich super. Ich bin
ganz früh komplett aus der 8051er Schiene abgeschwenkt. Und noch heute
läuft die Hälfte meiner Anwendungen mit den AVRs. Aber es wird immer
weniger...
>> Ich würde ganz weg von den Atmega/Xmega (Toter Ast) Nimm lieber etwas,>> was auch weit verbreitet ist. Also Arm.>>Jaja, die übliche Geschichte. Schließlich muss man ja nur den ARM>von Hersteller X kennen, dann kennt man alle. Auch wenn Hersteller>Y völlig andere Peripherie dran baut.
Laber, laber, der ATXmega ist ne Totgeburt.
Wofür soll der gut sein? Wer einmal einen Cortex-M3
in der Mache hatte will keinen ATXmega mehr.
Wozu eine alte Architektur aufbohren die vom Compiler
nur mit Krücken unterstützt wird? Was soll der
ganze Schwachsinn? Der ATXmega war eine Fehlentscheidung
von Atmel. Einfach nur mal hier im Forum nachsehen wie
viele Fragen zu ARM oder ATXMega kommen reicht doch aus.
Der ATXMega wird von den ARM einfach weggefegt.
In drei Jahren redet da keiner mehr drüber.
Das dauert keine 3 Jahre :-)
Für gewisse Sachen wären die XMegas durchaus brauchbar. Aber dann kommen
die mit surrealen Preisen daher. Völlig gaga.
Ich hab schon aus einigen Projekten den ATMega128 ausdesignt, weil zu
teuer.
holger schrieb:> Laber, laber, der ATXmega ist ne Totgeburt.
Warum kommst du mit dem Xmega, wenn ich über ARM schreibe? Xmega-
Phobie?
Ich habe mich nur darüber amüsiert, dass manche Leute so tun, als
müsste man nur ein ARM-Derivat kennen, dann könnte man sofort und
automatisch alle davon benutzen. Mal ganz von den diversen IDEs
abgesehen, die jeder Hersteller ganz für sich als das Nonplusultra
vermarkten will, ist eben der CPU-Kern und das kleine bisschen, was
mittlerweile um ihn herum bei ARM standardisiert ist, nur der
kleinste Teil der Übung "Ich wechsle den Controller". Gerade der
CPU-Kern wird vom C-Compiler sowieso völlig abstrahiert, der spielt
also praktisch gar keine Rolle.
Der ARM ist gewiss ein schöner Prozessor, aber so zu tun, als ob
nur deswegen einem sofort die Welt aller ARM-Hersteller offen steht,
nur weil man mit einem davon schon mal was gemacht hat, ist (wenn
es wie hier gegenüber jemandem geäußert wird, der sich da noch nicht
so tief reingelesen hat) Irreführung der Massen.
Ich bin vom ATMega auf den PIC24 bzw. dsPIC33 gegangen weil
1. er eine gute 16Bit-RISC-Architectur (bis zu 60MIPS) hat,
2. es Derivate mit interessanter Peripherie (CAN mit DMA usw.) onboard
gibt,
3. es leistungsfähige Derivate im DIL-Gehäuse gibt (zum Basteln),
4. es einen vergleichsweise günstigen Debugger (nicht nur Programmer)
gibt (PicKit3 70.-),
5. man mit dem dsPIC DSP-Sachen machen kann.
Ich kann ihn nur empfehlen.
Wenn Du dich für ARM interessiert, dann schau di das STM32 Discovery
Board an. Es enthält schon einen USB Programmer.
Auch das Board von mbed finde ich zum Lernen/Basteln interessant. Da ist
sogar schon eine Ethernet Schnittstelle drauf (du brauchst nur noch eine
MagJack Buchse mit Übertrager).
Jörg Wunsch schrieb:> Der ARM ist gewiss ein schöner Prozessor, aber so zu tun, als ob> nur deswegen einem sofort die Welt aller ARM-Hersteller offen steht,> nur weil man mit einem davon schon mal was gemacht hat, ist (wenn> es wie hier gegenüber jemandem geäußert wird, der sich da noch nicht> so tief reingelesen hat) Irreführung der Massen.
Genau so ist es. Geht ja schon mit ST32F1xx und LPC17xx los: Beim STM32
sind viele Register trotzdem nur 16 bit breit und haben dann wieder
dieses tolle high- und low-register, obwohl man das wohl schön in 32 bit
hätte abbilden können.
Andererseits haben die STM32 dann wieder ein CRC-Register drin, die LPC
aber eine "richtige" RTC und nicht einfach nur einen Counter.
Dafür gibt es die STM32 in viel mehr Gehäusen als die LPC.
usw., usw., usw.
Kurzum: Das wenige, was ARM tatsächlich auf allen vorgibt, wie z.B. den
NVIC (wobei auch da wieder jeder sein Süppchen kocht, welche und wie
viele Interrupts es denn gibt ...) nützt einem wahrlich nix. Man muß
also wie immer schon UM und DS lesen.
Der Programmer kann alle programmieren/debuggen und die Toolchain kann
ich für unterschiedliche Hersteller gleich lassen. Das alleine ist schon
sehr viel wert.
Das man sich bei jedem µC die Peripherie ein bischen angucken muss ist
ja klar. Das sollte aber nicht so viel Aufwand sein.
huch schrieb:> Der Programmer kann alle programmieren/debuggen und die Toolchain kann> ich für unterschiedliche Hersteller gleich lassen.
Damit verlässt du aber typischerweise bereits die Pfade, auf denen
die Hersteller dich supporten möchten. Denn die gehen dabei
erfahrungsgemäß davon aus, dass du dafür genau ihre ach so tolle
IDE mit den extra Features für genau ihren Controller benutzt.
Die vergleichsweise wenigen Leute, die das dann doch nicht tun, sind
ohnehin nicht die, die Schwierigkeiten damit haben, ihre Software
so zu zimmern, dass sie auf Controller verschiedener Coleur schnell
anzupassen ist.
Prinzipiell ist das schon richtig. Aber wenn ich mir jetzt Coocox
angucke. Diese IDE ist schon sehr anfängerfreundlich (und komplett
kostenlos) und unterstützt quer Beet so ziemlich alle Cortex M3/M0 der
diversen Hersteller.
Trotzdem stimmt es natürlich, dass man sich immer auch spezialisieren
muss auf einen µC bis man mal gut mit ihm zurecht kommt.
mani schrieb:> Natürlich kann man, wenn man will auch über den Bootloader gehen.> Aber warum sollte man bei dem Preis?
Weil man vermutlichst irgendwann mal ein richtiges Gerät bauen will
und nicht bloß mit einer Eval-Platte herumdaddeln. Beim Gerät ist ist es
dann eben nicht machbar, mal eben den Debugger anszuschließen - ganz im
Gegensatz zum Bootlader, wo man bloß nen geeigneten Jumper vorsehen muß
und ohne jeden Hardware-Aufwand von der Geräterückseite aus ein
Firmwareupdate machen kann.
W.S.
Jörg Wunsch schrieb:> Damit verlässt du aber typischerweise bereits die Pfade, auf denen> die Hersteller dich supporten möchten.
He Jörg,
fahr doch nicht so aus dem Häuschen. Es sollte jedem, der ein bissel
denken kann, klar sein, daß zwar die CPU recht gut genormt ist, er aber
bei der Peripherie eben das Manual durchkauen muß - und wer das nicht
will, mag bei ATmega und Steckbrett und bedrahteten Widerständen
bleiben, bis er stirbt. Diese Entscheidung liegt letztendlich bei jedem
selber.
Aber: für das Einsteigen in die Welt der 32 Bitter belohnt einen die
Arm- und die Cortex-Welt mit einem Freiraum von Möglichkeiten, den man
auf einem Atmelxyz nie hatte. Es stehen bloß nicht jedem Bastler alle
Türen offen - aber das ist ein Ärgernis deutscher Machart. Die Firma, wo
ich bin, verkauft ihre Produkte an jeden, der dafür das Geld auf den
Tisch legt. Aber bei den deutschen Distributoren wird man als Privater
in aller Regel schnöde abgewiesen: "Unser Angebot richtet sich
ausschließlich an gewerbliche Käufer" oder so. Offenbar geht es denen
immer noch viel zu gut, weswegen an deren Tür das Wort "Wegen
übertriebenen Reichtums geschlossen" prangt.
Das sind die eigentlich relevanten Begrenzungen bei der Suche nach
Alternativen für überalterte Mikrocontroller.
W.S.
W.S. schrieb:> Weil man vermutlichst irgendwann mal ein richtiges Gerät bauen will> und nicht bloß mit einer Eval-Platte herumdaddeln.
Es ging bei der Aussage von oben um Softwareentwicklung. Nicht um
Serienfertigung. Da werden weitaus andere Programmer benutzt oder der
Baustein wird gleich programmiert bestellt.
>Beim Gerät ist ist es dann eben nicht machbar, mal eben den Debugger >anszuschließen - ganz im Gegensatz zum Bootlader, wo man bloß nen >geeigneten
Jumper vorsehen muß und ohne jeden Hardware-Aufwand von der >Geräterückseite aus
ein Firmwareupdate machen kann.
Und das Programm überträgst Du dann per Funk oder was?
Du gehst davon aus, dass bei jedem Projekt eine serielle Schnittstelle
verwendet wird und sowieso schon auf dem Board vorhanden ist. Es gibt
genügend Einsatzgebiete wo keine serielle Schnittstelle nötig ist oder
gar nicht gewünscht dass eine vorhanden ist. Zudem braucht man mit SWD
auch nur 2 Pins (wie bei deinem Bootloader). Ein extra Jumper ist nicht
notwendig. Und man kann zusätzlich noch deutlich mehr Dinge wieder
Auslesen und überprüfen als über den Bootloader.
tobiflea schrieb:> Andererseits: Kommt man damit im Hobbybereich überhaupt noch zurecht mit> so einer Riesen Maschine?
Man ja. Du auch? Wie sind Deine Möglichkeiten? Kannst Du Platinen
layouten? Selber ätzen oder besser irgendwo fertigen lassen? Denn: Bei
ARM ist mit Lochraster Schluss.
Ein Ausweg wäre PIC32: Ist zwar nicht ARM, sondern MIPS, aber gleiche
Leistungsklasse. Da gibt es die kleinen Typen auch in DIL.
Leistungsmäßig ist das auch eine bis anderthalb Zehnerpotenzen mehr, und
das bei in etwa gleichem Preis gegenüber AVR.
fchk
>Ich finds traurig, dass sich Atmel sehenden Auges ins abseits befördert,>zumindest in der MC-Schiene. Das war mal ne dynamische Firma. Ich fand>damals (tm) den AVR-Kern samt flash und EEProm wirklich super.
Das ist der typische Gang der Dinge in großen Firmen. Die sind nämlich
selten innovativ und letzendlich bestimmt das Marketing die Richung.
Der AVR-Kern wurde ursprünglich an einer Universtität von Grund auf
entwickelt ( also auch ohne Marketingbalast ). Atmel hat dann den
Prozessor dazu produziert. Später kam dann wieder das Marketing und das
Ergebnis dürfte der XMega sein.
chris schrieb:>>Ich finds traurig, dass sich Atmel sehenden Auges ins abseits befördert,>>zumindest in der MC-Schiene. Das war mal ne dynamische Firma. Ich fand>>damals (tm) den AVR-Kern samt flash und EEProm wirklich super.>> Das ist der typische Gang der Dinge in großen Firmen. Die sind nämlich> selten innovativ und letzendlich bestimmt das Marketing die Richung.>> Der AVR-Kern wurde ursprünglich an einer Universtität von Grund auf> entwickelt ( also auch ohne Marketingbalast ). Atmel hat dann den> Prozessor dazu produziert. Später kam dann wieder das Marketing und das> Ergebnis dürfte der XMega sein.
Der ja schon super ist wenn es um die Peripherie wie Adc und Dac geht
und mit 32Mhz selbst einem cortex mit 24mhz die Stirn bieten kann.
Ansonsten ist der Avr32 sowie der avr von grund auf entwickelt worden,
die Architektur ist genial einfach und doch leistungsfaehiger als die
alte cortex architektur... Diesen einheitsbrei gabs ja schon mal, die
aelteren unter uns erinnern sich bestimmt noch an den8051, und wozu hat
es gefuehrt? Dass Firmen wie Atmel, microchip usw ihre eigenen
Architekturen brachten und es war der Himmel auf Erden endlich vom
Einheitsbrei wegzukommen. Mit cortex wirds wieder so sein, wobei er nie
die 8bitter ablosen wird, oder wie erklaert ihr euch dass st mit seinen
cortex breit aufgestellt ist und trotzdem wieder marktanteile verlor,
waehrend firmen wie microchip und atmel gewinnen? Selbst renesas haelt
sich auf nr.1 obwohl sie keinen cortex haben. Waere die Strategie bei
diesen looser Firmen so falsch muessten die laengst am Abgleis stehen,
scheinbar ist es nicht alles billige Prozessoren herzustellen. Mit cm0
hats in den letzten jahren nicht geklappt, jetzt versuchts man halt mit
cm0+, das wird wieder nicht klappen dann schickt man eine ++ version
nach.
> Andererseits: Kommt man damit im Hobbybereich überhaupt noch zurecht mit> so einer Riesen Maschine?
Die Handhabung eines Cortex M3 ist nicht wesentlich komplizierter als
die eines Atmega. Man kann sie quasi genauso schnell erlernen und
anwenden.
Lochraster ist auch kein Problem, denn EvalBoards für 8 Euro stehen zur
Verfügung und die kann man so wie sie sind auf eine Lochrasterplatine
löten. Ferner braucht man keine zusätzlichen Programmieradapter.
Dazu noch eine IDE wie Coocox und man kann in weniger als 1 Stunde als
Anfänger was zum Laufen zu bringen. Zusätzlich muss man sich auch nicht
mit irgendwelchen Fuses rumärgern, mit denen man sich mal wieder aus dem
µC ausgeschlossen hat (die Foren sind ja voll mit Anfängern, die da
Probleme haben)
Also unter dem Strick kann man zweifelsfrei behaupten, dass der Einstieg
nicht schwerer ist als bei einem Atmega.
W.S. schrieb:> "Unser Angebot richtet sich ausschließlich an gewerbliche Käufer" oder so.> Offenbar geht es denen immer noch viel zu gut, weswegen an deren Tür das Wort> "Wegen übertriebenen Reichtums geschlossen" prangt.
Ich denke, den Umstand haben wir nicht übertriebenem Reichtum, sondern
der deutschen Verbraucherschutzgesetzgebung zu verdanken. Nicht daß die
per se schlecht wäre, aber eine Firma, die mit Privatleuten vielleicht
1% zusätzlichen Umsatz machen würde, wird es sich zweimal überlegen, ob
sie sich dafür den ganzen Aufwand mit der Preisangabeverordnung und dem
Widerrufsrecht antun will.
Wenn ab August dann auch noch die neuen Web-Shop-Bedingungen gelten,
wird sicher auch wieder der eine oder andere Zulieferer das Geschäft mit
Endkunden einstellen.
> Ist es möglich, in Coocoox das ST32Discovery als Debugger zu verwenden?
Es gibt seit gestern die Version 1.5.0
STM32F407 vom Discovery wird voll unterstützt.
Oberlehrer schrieb:> Die Handhabung eines Cortex M3 ist nicht wesentlich komplizierter als> die eines Atmega. Man kann sie quasi genauso schnell erlernen und> anwenden.
Jedesmal wenn ich solche Sprüche lese, fühle ich mich klein, mickrig,
impotent, dumm, haesslich usw. usf.
Mehmet Kendi schrieb:> Oberlehrer schrieb:>> Die Handhabung eines Cortex M3 ist nicht wesentlich komplizierter als>> die eines Atmega. Man kann sie quasi genauso schnell erlernen und>> anwenden.>> Jedesmal wenn ich solche Sprüche lese, fühle ich mich klein, mickrig,> impotent, dumm, haesslich usw. usf.
Und was genau ist daran falsch??
:-)
Mehmet Kendi schrieb:> Jedesmal wenn ich solche Sprüche lese, fühle ich mich klein, mickrig,> impotent, dumm, haesslich usw. usf.
Manchen Leuten ist es eben egal, wovon sie keine Ahnung haben.
mfg.
R. Max schrieb:> Wenn ab August dann auch noch die neuen Web-Shop-Bedingungen gelten,> wird sicher auch wieder der eine oder andere Zulieferer das Geschäft mit> Endkunden einstellen.
Tja, ist wohl zu befürchten.
Ich frag mich bei dieser Gelegenheit, warum denn nur ganze
Völkerstämme sich auf so blöde und geradezu offensichtliche Weise selbst
auf's Abstellgleis schieben.
Wer es dem jungen, interessierten aber noch unerfahrenen Nachwuchs so
unsäglich schwer macht, an das Zeugs heranzukommen, das man braucht, um
eben nicht auf altbackenem, längst abgelegtem Zeugs herumkauen zu
müssen, der braucht sich doch überhaupt nicht zu wundern, daß die
zweifelsohne vorhandenen Talente sich nicht wirklich entfalten können,
der Horizont eingeschränkt bleibt und schlußendlich die Musike woanders
spielt.
W.S.
Thomas Eckmann schrieb:> Manchen Leuten ist es eben egal, wovon sie keine Ahnung haben.
Den Kommentar verstehe ich nicht. Inhaltlich/sinngemäß; bevor mich
jemand zu Duden und Lexikon verlinkt :-)
Ich sehe das inhaltlich aber genauso wie Mehmet. Gerade im Vergleich zu
den guten alten™ AVR und deren Handhabung ist es doch schon ein
himmelweiter Unterschied. NVIC, DMA usw. und vor allem der ganze
Startup- und Linkerkram sowie Stackgrößen ist wohl doch eine ganz andere
Liga. Da brauchte man sich beim AVR nun wahrlich nicht drum zu kümmern
und die meisten wissen wahrscheinlich heute noch nicht, daß es da auch
sowas gibt. Nur da braucht man eigentlich als Bastler auch nichts von zu
wissen; das läuft durch WinAVR usw. automatisch und starr im
Hintergrund.
Zugegeben ist auch einiges einfacher geworden. PROGMEM z.B. ist nicht
erforderlich. Dafür muß man für ein Äquivalent von EEMEM schon wieder
deutlich mehr strecken.
Wie gesagt, ich mach das auch nur als Hobby und muß da so einiges lesen
(und natürlich behalten).
Wenn ich das jeden Tag machen würde, beruflich, würde ich natürlich auch
nur müde über solche Probleme lächeln.
W.S. schrieb:> Wer es dem jungen, interessierten aber noch unerfahrenen Nachwuchs so> unsäglich schwer macht, an das Zeugs heranzukommen, das man braucht,
Als Bastler oder lernwilliger gibt es wohl so ziemlich alles auch zu
kaufen. Natürlich nicht zu 10k-Preisen wie im gewerblichen Bedarf, aber
das ist für Einzelstücke wohl so oder so egal.
Lutz schrieb:> Als Bastler oder lernwilliger gibt es wohl so ziemlich alles auch zu> kaufen.
Du theoretisierst.
In der Praxis sieht das alles leider sehr viel anders aus. Das ist eben
nicht nur eine Frage der Preise, sondern des überhaupt kriegens.
und nochwas:
Mehmet Kendi schrieb:> Jedesmal wenn ich solche Sprüche lese, fühle ich mich klein, mickrig,> impotent, dumm, haesslich usw. usf.
Tja, das wird wohl wahr sein, ich mag dir da nicht widersprechen.
Die logische Konsequenz wäre, dich selbst zu bilden.
Also lies die Manuals, studiere die diversen Beispiele, kurzum _arbeite
an dir selbst_. Du bist damit nicht allein - auch unsereiner hat das
nicht mit der Muttermilch mitbekommen, sondern sich ausgedruckt und
liest sowas als Abendlektüre bei nem guten Glas Rotwein.
Merke: Bildung muß man wollen und sich selbst erarbeiten. Man bekommt
sie nicht wie den Regen vom Himmel geschüttet.
W.S.
W.S. schrieb:> Lutz schrieb:>> Als Bastler oder lernwilliger gibt es wohl so ziemlich alles auch zu>> kaufen.>> Du theoretisierst.> In der Praxis sieht das alles leider sehr viel anders aus. Das ist eben> nicht nur eine Frage der Preise, sondern des überhaupt kriegens.
Also ich habe bisher immer alles bekommen, was ich brauchte. Vielleicht
bin ich auch sehr anspruchslos oder will mir nur kaufen, was ich auch
wirklich brauche; genauer: Wirklich als Bastler benötige.
Nenne doch bitte mal ein paar konkrete Beispiele, was du nicht bekommen
hast.
Was ihr alle am XMega rumnörgelt. Ich finde im Vergleich zum Mega ist
der schon wesentlich besser. 12 Bit ADC/DAC, viele Timer, DMA, Events,
32MHz. Ich finde ihn toll und mit dem Atmel Studio habe ich eine IDE,
mit der sofort loslegen kann. Das ist beim Cortex nicht der Fall,
korrigiert mich wenn ich falsch liege.
Ingo
Das der XMEGA besser als der AVR ist stellt denke ich niemand infrage.
Aber sehr wohl ob es Sinn macht sich darin einzuarbeiten wenn es nahezu
identischer Aufwand ist sich in ARM einzuarbeiten... (für alle
Funktionen die der XMEGA auch bietet, die ARMs können natürlich oft viel
mehr)
Und Atmel hat ja z.B. auch schonmal vor kurzem den AP7000 AVR32
abgekündigt...
Ingo schrieb:> Was ihr alle am XMega rumnörgelt. Ich finde im Vergleich zum Mega ist> der schon wesentlich besser. 12 Bit ADC/DAC, viele Timer, DMA, Events,> 32MHz. Ich finde ihn toll und mit dem Atmel Studio habe ich eine IDE,> mit der sofort loslegen kann. Das ist beim Cortex nicht der Fall,> korrigiert mich wenn ich falsch liege.
Der XMega ist für seine Leistung zu teuer. Ich bin bei den kleinen
Controllern zu Microchip gewechselt. Da habe ich einen besseren
Aufstiegspfad und mehr Rumms pro Euro und trotzdem die einfache
Einsetzbarkeit wie bei AVR.
Lutz schrieb:> Ich sehe das inhaltlich aber genauso wie Mehmet. Gerade im Vergleich zu> den guten alten™ AVR und deren Handhabung ist es doch schon ein> himmelweiter Unterschied. NVIC, DMA usw. und vor allem der ganze> Startup- und Linkerkram sowie Stackgrößen ist wohl doch eine ganz andere> Liga.
Ich auch!
Klar, wenn man einen Cortex erst einmal in die Gänge bekommen hat, kann
man große Töne spucken. Selbst, wenn ich genau weiß, was ich
programmieren möchte wie NVIC, DMA, ... das elende Zusammensuchen einer
vollständigen Dokumentation ist echt ätzend! Viele Bäume und kein Wald
in Sicht.
Ab und zu tauchen hier im Forum Berichte über 'errata' auf, die einem
beim STM32F4 ganz schön in die Suppe spucken können. Ein Bericht bezog
sich darauf, dass der DMAC schlapp macht, wenn mehr als drei Kanäle
gleichzeitig aktiv sind, oder DMAC- und CPU-Zugriffe über FSMC Probleme
haben. Was nützt die schöne Vielfalt, wenn sie noch etliche, unentdeckte
Macken aufweist.
Sehr gerne programmiere ich die RX600 von Renesas. Einfache IDE und sehr
gut strukturierte IOxxx.h Datei. Die Bezeichnungen aus dem
(einheitlichen) Datenblatt kann ich direkt verwenden. Da sieht man sehr
genau, was man macht. Für mich sind die RX-er elegant und schnell.
Und für den Kleinkram nehme ich immer noch ATmega. Ein 48er für <1€ ist
schnell programmiert und läuft bestens.
Ich habe schon viel über die Renesas Dinger gelesen. Aber die IDE ist
nicht kostenlos oder? Das Datenblatt ist in der Tat sehr aufgeräumt und
verständlich. Warum sind DIE eigentlich Markführer, was is so gut an
den Teilen?
Das ist leider auch das Blöde am XMega, die Register stehen nicht direkt
so im DB wie sie in der IDE zu benutzen sind. Das sorgt anfangs für
Chaos. Muss man aber einmal verstehen, etwas suchen, dann freuen wenns
geht ;-)
Ingo schrieb:> Aber die IDE ist> nicht kostenlos oder?
Doch, allerdings nach 60 Tagen wird die Codegröße auf 128k begrenzt
(beim RX); soweit bin ich noch nie gekommen :-)
KPIT.com aus Indien liefert GCC dafür: H8-, SH-, RX- Versionen habe ich
zu laufen. Sie sind voll in HEW integriert. Aber die Renesas Compiler
gefallen mir besser!
Man kann sich HEW herunterladen, Code erzeugen und im Simulator laufen
lassen. Die IDE ist sehr transparent.
> Warum sind DIE eigentlich Markführer, was is so gut an> den Teilen?
Weiß der Henker. Ich hatte noch nie einen 'errata'-Fall. Was im
Datenblatt dokumentiert ist, läuft auch.
Die Teile kosten immer ne Mark mehr als 'irgendwelche' andere µCs. Bei
meinen Stückzahlen ist das (unter uns gesagt) völlig Schnuppe.
>Warum sind DIE eigentlich Marktführer, was ist so gut an den Teilen?
Ist eben ein asiatischer Hersteller. Die Asiaten setzen eben viel lieber
das eigene ein. Und da wir hier alles Chinesisches kaufen kaufen wir
somit auch diesen Controller mit.
Markus Müller schrieb:> Ist eben ein asiatischer Hersteller. Die Asiaten setzen eben viel lieber> das eigene ein.
Mercedes-Benz ist aber kein asiatischer Hersteller, oder?
nobbe schrieb:> Das der XMEGA besser als der AVR ist stellt denke ich niemand infrage.> Aber sehr wohl ob es Sinn macht sich darin einzuarbeiten wenn es nahezu> identischer Aufwand ist sich in ARM einzuarbeiten... (für alle> Funktionen die der XMEGA auch bietet, die ARMs können natürlich oft viel> mehr)>>> Und Atmel hat ja z.B. auch schonmal vor kurzem den AP7000 AVR32> abgekündigt...
Der ist NICHT abgekuendigt und laut Atmel wird er noch eine ganze Weile
produziert
http://www.atmel.com/devices/at32ap7000.aspx> not recommended for new designs.
heisst für mich abgekündigt.
(abgekündigt heisst nicht das die Produktion sofort eingestellt wird
aber es ist absehbar)
Was mich zuerst nervt, ist die Unterteilung Mega/Tiny. AVR ist AVR,
basta.
Nur weil der eine kein HW-MUL hat, muß man doch nicht so ein großes
Bohei drum machen.
Und die neuen Tiny/halbe sind die völlige Totgeburt.
Was mich aber hauptsächlich nervt, ist der extrem schwache CAN-Support.
CAN ist sowas von easy und sicher zur Kommunikation, das sollte fast
jeder MC können. Oftmals will man ja wirklich nur eine Last ansteuern
oder einen Sensor lesen, da reicht dann eben ein 6-Pinner aus, wenn er
denn CAN hätte.
Immer einen AT90CAN128 nehmen zu müssen, ist nicht der Bringer.
Und keine Interruptlevel ist auch kein Ruhmesblatt, selbst die PIC haben
wenigstens 2. O.k., die haben keine eigenen Vektoren je Quelle, das ist
auch totaler Mist.
Zu Xmega muß ich nix zu sagen (kein CAN), die sind daher schon von
Anfang an tot, sie wissen es wohl bloß noch nicht.
Bei den AVR ist also keine Zukunft in Sicht.
Schade :-(
Peter
> Am Xmega stoert auch die fehlende 5-Volt Toleranz der Digitaleingaenge.
Oh ja und das ist auch völlig unverständlich, das können ja auch sehr
viele ARMs und dann fehlt es gerade beim Upgrade eines typischen 5V 8
Bit Controllers?!
Nunja Atmel, netter Versuch...
W.S. schrieb:> Es sollte jedem, der ein bissel> denken kann, klar sein, daß zwar die CPU recht gut genormt ist, er aber> bei der Peripherie eben das Manual durchkauen muß
Es geht ja nicht um "das Manual durchkauen", sondern darum, dass
eben ARM nicht gleich ARM ist, und man für jedenARMdessen
Manual nochmal neu durchkauen darf. Zuweilen (und darauf bezog
ich mich) wird hier suggeriert (und in Managerkreisen vermutlich
noch viel mehr), dass man nur durch Verwendung eines ARM-basierten
Controllers einfach plötzlich alle Probleme mit der Abhängigkeit von
einem bestimmten Hersteller los sei. Dabei ist eben der reine
CPU-Kern der Teil eines Controllers, der durch den Compiler am
besten abstrahierbar ist.
> - und wer das nicht> will, mag bei ATmega und Steckbrett und bedrahteten Widerständen> bleiben, bis er stirbt.
Was hat das eine mit dem anderen zu tun? Den letzten ATmega in DIP
habe ich vor Jahren verbaut (weil im Gerät sowieso genug Platz war,
der durch die Größe des Gehäuses definiert worden ist), mich aber
danach schon drüber geärgert. Irgendwie habe ich das Teil da drin
geschrottet gehabt, er hat einfach zu viel Sleep-Strom gezogen, und
das Auslöten eines TQFP wäre viel einfacher gewesen als das des DIP.
Du hast eine ziemlich selektive Wahrnehmung: alle AVR-Nutzer scheinen
in deinen Augen unfähig für "moderne Technik" zu sein.
> Aber: für das Einsteigen in die Welt der 32 Bitter belohnt einen die> Arm- und die Cortex-Welt mit einem Freiraum von Möglichkeiten, den man> auf einem Atmelxyz nie hatte.
Unfug. Auch "Atmelxyz" kann man mit einem Cortex-M-Kern kaufen. Aber
selbst diese Binsenweisheit scheinen deine Scheuklappen schon nicht
mehr durch zu lassen.
> Aber bei den deutschen Distributoren wird man als Privater> in aller Regel schnöde abgewiesen: "Unser Angebot richtet sich> ausschließlich an gewerbliche Käufer" oder so.
Dies hat nun aber rein überhaupt nichts mit den Herstellern zu tun.
Aber das wurde ja schon diskutiert.
R. Max schrieb:> Nicht daß die> per se schlecht wäre, aber eine Firma, die mit Privatleuten vielleicht> 1% zusätzlichen Umsatz machen würde, wird es sich zweimal überlegen, ob> sie sich dafür den ganzen Aufwand mit der Preisangabeverordnung und dem> Widerrufsrecht antun will.
Allerdings müssten die Distris sich rein dafür das nicht so penetrant
absichern lassen, mit Umsatzsteuernummer vorweisen und dergleichen.
Es würde ja völlig genügen, wenn $Kunde unmissverständlich unter-
schreibt, dass er gewerblicher/selbstständiger Abnehmer ist, danach
kann er sich ja nicht mehr schlechterdings auf die Verbraucherschutz-
klauseln berufen. (Außerdem scheint es ja für Studenten komischerweise
auch kein Problem zu sein, diese trotzdem zu beliefern, und die können
sich hernach allemal noch auf den Verbraucherschutz berufen.)
Peter Dannegger schrieb:> Und die neuen Tiny/halbe sind die völlige Totgeburt.
Naja, Peter, wenn sie das wären, meinst du wirklich, man hätte mit
derartigem Aufwand eine völlig neue Produktlinie ins Leben gerufen?
Bei den damit erzielbaren Preisen muss es ja im Gegenteil ein
potenzielles Geschäft mit Millionenstückzahlen geben, damit sich der
Aufwand überhaupt lohnt. Offenbar wollte Atmel dieses Geschäft nicht
komplett der Konkurrenz überlassen.
Jörg Wunsch schrieb:> Naja, Peter, wenn sie das wären, meinst du wirklich, man hätte mit> derartigem Aufwand eine völlig neue Produktlinie ins Leben gerufen?
Manchmal werden Entscheidungen von oben gefällt und müssen nicht immer
sinnvoll sein.
Leider kann man bei Atmel keinen Preisvergleich machen.
Da ist Microchip besser, die haben bei den PICs das Volume Pricing mit
angegeben.
Man kann also genau feststellen, bei welchem Abrüstungsgrad und damit
aufwendigerer Programmentwicklung, welcher Preisnachlaß erzielbar ist.
Peter
>> not recommended for new designs.> heisst für mich abgekündigt.> (abgekündigt heisst nicht das die Produktion sofort eingestellt wird> aber es ist absehbar)
Wir setzen Spulen von Coilcraft ein, 1812PS, die sind schon seit Jahren
"not recommended for new designs" weil es inzischen bessere Baureihen
gibt. Werden laut Hersteller aber noch auf nicht absehbare Zeit
hersgestellt, so lang wie sie bei Kunden auf den Platinen drauf sind.
>> not recommended for new designs.> Gilt das nicht für alle Atmels?
Ich hab mir sagen lassen, dass wen man lange Erhältlichkeit will sollte
man eine CPU nehmen von der es auch eine "Automotive" Variante gibt.
Aber Garantie wird man von niemanden bekommen.
2 pin Spulen sind aber schon was gaaanz anderes als ein >=32 pin
Mikrocontroller. So ne Spule ist leichter gewechselt wenn die
abgekündigt wird also ist der Status da nicht so wichtig.
Wenn die da einen Kunden haben der ein paar 10 tausend im Jahr abnimmt
reicht das schon um die Serienproduktion weiter aufrecht zu halten. Aber
wehe der wechselt auf ne andere Linie dann ist ganz schnell ende.
Gilt prinzipiell auch für Mikrocontroller aber da schauen große Kunden
bei so schlecht austauschbaren Bauteilen wie Mikrocontrollern genauso
kritisch oder kritischer hin wie die Leute in dem Thread hier
;-)
Jörg Wunsch schrieb:> Es würde ja völlig genügen, wenn $Kunde unmissverständlich unter-> schreibt, dass er gewerblicher/selbstständiger Abnehmer ist, danach> kann er sich ja nicht mehr schlechterdings auf die Verbraucherschutz-> klauseln berufen.
In der Bucht sieht man ja gelegentlich solche Klauseln, aber wenn das so
einfach wäre, würden sicher mehr Händler versuchen, auf die Weise die
Verbraucherschutzvorschriften auszuhebeln. Ich nehme an, daß eine solche
Erklärung schlicht nichtig wäre und der Händler sich im Streitfall
vorhalten lasse muß, nicht sorgfältig genug geprüft zu haben, daß sein
Kunde wirklich kein Endverbraucher ist.
tobiflea schrieb:> Als Ziel setze ich mir in einem> nächsten längerfristigen Projekt einen kleinen Webserver.
Es ist dann am günstigsten, wenn du dir eine Platform suchst, wo es
entweder schon TCP/IP Bibliotheken gibt, oder ein Board, wo (uC)Linux
drauf läuft. Da gibt es eine ganze Menge, nicht zuletzt Gnublin,
RaspberryPi oder was ähnliches. Einen TCP/IP Stack mit Netzwerkanbindung
selbst zu machen, ist ganz schön schwierig.
Eine Alternative wäre, einen fertigen (alten) Router zu nehmen, der vom
OpenWRT Projekt unterstützt wird:
https://openwrt.org/
Die Jungs haben ein Linux gebastelt, welches auf kommerziell
erhältlichen Routern läuft und nach Bedarf modifiziert werden kann.
Evtl. hast du sogar so einen in der Bastelkiste. Er sollte am besten mit
Vorrichtungen für eine serielle Schnittstelle auf der Platine
ausgerüstet sein, das trifft allerdings auf einen Haufen Modelle zu.
Eigentlich will ich gerade einen eigenen TCP/IP Stack erstellen, weil
mich die Protokolle interessieren und man dabei mehr lernt wie wenn man
fertige Libs integriert und sich allerhöchstens dann ein bisschen freut
dass es "egal wie" funktioniert. Ich bin mir schon bewusst dass dabei
kein Hochleistungs-Webserver rauskommt.
Welche IDE würdet ihr für ST32 empfehlen? Coocoox oder Eclipse?
Für die Initialisierung ja, wenn man sich nicht all zu sehr um die
vielen Bits kümmern will.
Um jetzt ein PortPin zu setzen geht es mit der direkten
Registerdeklaration einfacher und effizienter.