Forum: Mikrocontroller und Digitale Elektronik Vor- und Nachteile MCU Hersteller


von Moelf (Gast)


Lesenswert?

Hallo Leute,

in den letzten Tage habe ich mich zum Thema MCU belesen und entschieden 
einige Tests mit die pfiffigen Geräten durchzuführen, d. h. ich bin 
blutiger Anfänger in der Thematik.

Ich gehe davon aus, dass sich insbesondere im Hobbybereich der Wechsel 
zu anderen MCU-Herstellern schwierig gestalltet. Deswegen würde ich mich 
gerne - vorab - über eure Erfahrungsschätze erkundigen, welche Vor- und 
Nachteile ihr zu den unterschiedlichen Herstellern weitergeben könnt. 
Mir ist klar, dass der Anwendungsbereich eine große Rolle bei der 
Entscheidung des MCU-Typs darstellt. Dennoch würde ich diesen Thread 
gerne so allgemein wie möglich halten.

Kriterien die mir auf anhieb einfallen, sind:
- Softwareverfügbarkeit (incl. Kosten),
- Programmierungsaufwand,
- Speziellisierung der Hersteller auf besimmte Funktionen der MCU,
- MCU-Kosten (Einzelteil, Kleinserie, Großserie) und
- Sonstiges

Wäre Nett von euch, wenn ihr jeweils dazuschreibt, ob eure Erfahrungen 
aus der Prototypenentwicklung (Hobby oder Kommerz), Kleinserien- oder 
Großserienfertigung stammen.

mfg Moelf

von Erich (Gast)


Lesenswert?

Die Fragestellung ist hoffnungslos und weitgehend sinnfrei.

Genausogut könnte man fragen, welches Auto jemand für das geeigneste 
hält, oder welche Hausbauvariante.

von manoh (Gast)


Lesenswert?

schließe mich dem Vorredner an. Stell lieber eine konkrete Frage bzw. 
such davor im Forum ob nicht die Frage schon beantwortet ist (oder ein 
Teil davon)!

PS: es gibt Hersteller, die auch verschiedene µC/µP anbieten. D.h. man 
muss gar nicht den Hersteller wechseln, um vieles neu zu programmieren 
müssen.

von Peter D. (peda)


Lesenswert?

Links oben:

# Home
# AVR <- hier klicken


Peter

von Johnny B. (johnnyb)


Lesenswert?

Erich schrieb:
> Die Fragestellung ist hoffnungslos und weitgehend sinnfrei.

So ist es.

Beschreibe lieber mal, was Du so mit dem uC anstellen möchtest und was 
ungefähr für Geräte Du entwickeln möchtest.
Anhand von dem lässt sich dann sicher schon was sagen.

Aber anhand des Herstellers kannst Du sowas nicht mehr ausmachen. Als 
Beispiel seien Renesas und Texas Instruments genannt. Beide Firmen haben 
sowohl vom Kleinstmikrocontroller bis hoch zum Multicore Mikroprozessor 
und DSP so ziemlich alles im Angebot.

von Stefan H. (Gast)


Lesenswert?

Meine Vorredner haben schon recht. Konkret kann man das nicht 
beantworten.

Ich nutze als Hobbybastler die PIC-Familie. Dass ich bei "Microchip" 
hängengeblieben bin war reiner Zufall (hab auber auch nichts anderes 
ausprobiert). Grund dafür war eigentlich die Seite von sprut 
(www.sprut.de). Die uC sind leicht zu bekommen (Reichelt/Conrad), Atmel 
sind dort u. a. auch erhältlich. Kostenlose Software zur Programmierung 
gibt's im Netz.

Interessiert mich jetzt auch wie ihr anderen zur Marke gekommen seit.

Stefan

von Maximilian (Gast)


Lesenswert?

auf der Arbeit haben wie 80C166 aber das Ding ist so gut wie 
ausgestorben.

Beruflich sieht eher immer anders als Privat, meistens nimmt  die 
Entscheidung ein Senior Entwickler ab.

Privat finde ich die PIC 16f84 und 16F877 gut für den Einstieg.

Aber auch Atmega 8, 16 und 32 sind sehr gut.

Es gibt eher fragen, die man beantworten muss wie :

- welche Schnittstelle bietet mir den MCu an?
- wieviel I/Os
- sind die MCUs schnell von Lieferanten zu bekommen?

Aber an für sich die Prinzipien sind im Allgemein gleich.

Was man aber schon im Netz merkt, die Scene des AVRs ist in Deutschland 
sehr groß. Die AVRs sind aber so gut wie unbekannt in USA und andere 
englisch sprachige Länder.
 Dort ist der PIC sehr beliebt, obwohl die Scene des PICs auch in 
Germany groß genug ist.

Also fang an, das habe ich auch mittlerweile gelernt ;-) und den Rest 
kommt von allein..

von Stefan R. (kroko)


Lesenswert?

> Die Fragestellung ist hoffnungslos und weitgehend sinnfrei.

> Genausogut könnte man fragen, welches Auto jemand für das geeigneste
> hält, oder welche Hausbauvariante.

Wie Erich schon sagte, ist das "Geschmackssache"....

Du kannst dir den Artikel hier im Forum durchlesen:
http://www.mikrocontroller.net/articles/Entscheidung_Mikrocontroller

Wie du sicher schon bemerkt hast, ist dieses Forum sehr AVR lastig, aber 
es wird dir auch bei allen anderen Controllerfamilien geholfen.
Für alle Controller gibts eigene Foren.

Falls du dich für PIC entscheiden solltest, kann ich dir für denn Anfang 
alles erklären.

Mfg Kroko

von Moelf (Gast)


Lesenswert?

Vielen Dank für die Antworten (besonders Stefan H., Maximilian u. Stefan 
R.), das hilft erstmal weiter. So wie das Aussieht ist es wohl für meine 
Zwecke egal welchen MCU-Typ ich mir aussuche. Bei meiner bisherigen 
Recherche ging es bisher hauptsächlich um die PIC-Reihe. Das Argument 
der MCU-Scenen ist Gold wert (nochmal Danke an Stefan R. für den Link u. 
an Maximilian), war mir bisher nicht aufgefallen. Bleibt also die 
Entscheidung AVR oder PIC.

@ Johnny B. u. a.
Erstes Projekt wird sein: LED's über USB anzusteuern. Wenn das dann mal 
geklappt hat wird sich zeigen was als nächstes kommt.

Schaltungsaufbau, Funktionsweise der MCU ... sind erstmal kein Ding. Wo 
ich bei mir die Probleme sehe ist die Programmierung. (Bin aber gewillt 
mich da einzuarbeiten.) Meine bisherigen Erfahrungen beschränken sich 
auf Delphi und - vor Ewigkeiten - Basic. Gibt es evtl. Unterschiede im 
Programmierungsaufwand?

mfg Moelf

von AVR-Frickler (Gast)


Lesenswert?

Auf die Dokumentation sollte man auch achten, hier unterscheiden sich 
die Hersteller teilweise gewaltig.

In meiner Technikerausbildung habe ich mit einem 80C535 angefangen, hier 
kam die Dokumentation halt vom Lehrer ;)

Durch die Zeitschrift c't bin ich irgendwann zu einem ATmega 80535 
gekommen, und hängen geblieben. Die Dokumentation von Atmel ist einfach 
nur super, alles was man braucht in einem Dokument und eine ganze Menge 
Applikationnotes.

Auf der Arbeit wird mit der 8051-Familie von Philips/NXP gearbeitet, 
dort ist die Dokumentation eine mittlere Katastrophe.

Wie schaut es denn bei PIC und anderen Controllerfamilien aus?

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Nicht nur die Doku ist wichtig, auch das Errata. Was nützen einem die 
schönsten Funktionen wenn die im Errata nur als buggy und unbrauchbar 
dargestellt werden.

Bei den PIC's arbeiten die Microchipler ständig an den Pheriperiemodulen 
weiter. Wenn man von einem PIC auf einen anderen gehen möchte (wegen 
mehr Speicher oder Pins) dann muss man diese Doku nochmal genau 
durchlesen ob die Pheripeire in der Variante nicht doch eine Änderung 
erhalten hat.
Ich bin da auch mal drauf reingefallen, das war ein PIC24.

Welcher Controller Dir gefällt, musst Du selbst herausfinden, anhand der 
Verfügbarkeit, Doku und den Programmern (kosten immer Geld) und der 
verfügbaren Software und wie einem die gefällt (Freeware bis Kommerziell 
alles vorhanden).

Was darf der Einstieg denn kosten?

(Was mir gefällt schreib ich jetzt nicht, sonst bekomme ich eh wieder 
eine auf die Mütze)

von Stefan R. (kroko)


Lesenswert?

Ich habe mit den PICs begonnen und verwende auch diese hauptsächlich.

Ich verwende MPLAB von Microchip als IDE und den CCS Compiler, dieser 
hat sehr viele Funktionen eingebaut, viele Treiber und 
Beispielprogramme.
Da ist mir der Einstieg recht leicht gefallen.

CCS Compiler: www.ccsinfo.com
Nur als Tipp.

Mfg Kroko

von Loonix (Gast)


Lesenswert?

Markus Müller schrieb:
> Bei den PIC's arbeiten die Microchipler ständig an den Pheriperiemodulen
> weiter. Wenn man von einem PIC auf einen anderen gehen möchte (wegen
> mehr Speicher oder Pins) dann muss man diese Doku nochmal genau
> durchlesen ob die Pheripeire in der Variante nicht doch eine Änderung
> erhalten hat.
> Ich bin da auch mal drauf reingefallen, das war ein PIC24.

Dafür kommt man dort an die entsprechenden Dokumente problemlos ran, ich 
bekomme darüber sogar monatlich eine Email mit den neuesten Änderungen. 
Und es ist bei weitem nicht so, dass aus purer Unternehmungslust einfach 
Schnittstellen geändert werden. Es wird solange nachgebessert, bis es 
passt - fertig. Sorry, aber es nervt mich, wenn hier immer so getan wird 
als gäbe es sowas bei anderen Herstellern nicht. Ich hatte z.B. Ende 
2008/Anfang 2009 ganz erhebliche Sorgen mit einigen STM32-Derivaten - da 
hätte ich mir Transparenz a la Microchip wirklich gewünscht.

von Loonix (Gast)


Lesenswert?

Ach ja, zum Thread:

Ich habe PIC16, PIC18, PIC24 und dsPIC33, MegaAVRs und STM32 benutzt und 
würde es wieder tun, trotz einigen Problemchen. Macht euch doch nicht 
vor dass der Erfolg eines Projektes nur von den Fehlern eines ICs 
abhängig wäre. Es gibt soviel zu beachten, da gehen Workarounds für den 
Mikrocontroller glatt im Grundrauschen unter.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Von Microchip gibt es auch einen 24/7 Support, der Antwortet innerhalb 
von 2 Tagen auf Probleme.
Unser Distributor legt sich auch immer ins Zeug, wenn etwas mit einem 
PIC nicht geht.

Ich wollte PIC nicht schlecht machen, es ist nur ein Hinweis. Wenn man 
das nicht weiß (so wie ich damals) dann sucht man mal einige Stunden und 
es war nur ein pobliger PWM Ausgang eines Timers!

Ein STM32 ist für einen Neueinsteiger sowiso nicht zu empfehlen, solange 
er keine speziellen Features braucht, die erst ab dieser Chip-Reihe 
verfügbar sind (Ethernet, mehr Speicher, viel mehr Timer usw.).

Und wenn man seine Funktionen in C programmiert und strickt Trennt nach
- Initialisierung (HW-Abhänging)
- IO-Ausgabe (HW-Abhängig)
- Funktionen
Dann barucht mann nur wenige Zeilen im Code anpassen und schon läuft das 
ganze auf dem neuen Prozessor.

Moelf soll doch mal scheiben was er gerne machen möchte.

von Moelf (Gast)


Lesenswert?

Früher gings leider nicht. War die letzten Tage unterwegs, da gabs 
nichts mit Internet.

@ Markus Müller:
Hab's oben schonmal erwähnt. Als Einstiegsprojekt möche ich LEDs über 
den USB-Anschluss ansteuern. Primär geht es mir darum, Mechanik mit dem 
Rechner anzusteuern bzw. Programmieren zu können. Ich habe auch schon 
überlegt, ob ich mir einfach ein Lego-Mindstorm-Set zulege. Aber die 
Möglichkeiten sind mir dabei zu begrenzt. Also bin ich auf MCUs gekommen 
und alles was ich bisher dazu in Erfahrung gebracht hat für MCUs 
gesprochen.

mfg Moelf

von Peter D. (peda)


Lesenswert?

Moelf schrieb:
> Als Einstiegsprojekt möche ich LEDs über
> den USB-Anschluss ansteuern.

USB ist schonmal kein Anfängerprojekt.
Ich habs bisher immer vermieden, da durchzusteigen.
Und man sieht sehr oft, daß es anderen genauso geht.

Ich hab z.B. kürzlich ne professionelle SPS verwendet mit USB. Aber man 
mußte einen Treiber installieren und in der PC-Software einen COM-Port 
zur Verbindung auswählen.
In der SPS war also nur ein RS232-USB Umsetzer integriert.

Ein USB-RS232 Umsetzer kostet ja nur etwa 4€ (Reichelt).


Peter

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Moelf schrieb:
> Als Einstiegsprojekt möche ich LEDs über
> den USB-Anschluss ansteuern.

Wenn es nur zwei LEDs (= paar) sind, dann reicht ein USB-RS232 Umsetzer. 
Der hat die Ausgänge RTS und DTR, die kann man per Software vom PC aus 
einzeln steuern.

Ansonsten liefern in der Regel sämtliche Hersteller zu Chips mit USB 
Möglichkeit auch einen Demo-Code mit dazu.
Als Neuling wird man den nicht verstehen, es sind ca. 2000 Codezeilen.
Dann muss man noch einen Gerätetreiber für den Chip installieren, den 
man sich auch irgend wo her zusammensaugen muss (libusb).
USB alleine ist ein sehr mächtiges Projekt, selbst erfahrene 
USB-Neueinsteiger brauchen 1 Monat.

Zu Anfang würde ich eher zu einer Kommunikation über serielle 
Schnittstelle raten, die ist im Microcontroller einfach zu realisieren.

von Frank K. (fchk)


Lesenswert?

Moelf schrieb:

> Schaltungsaufbau, Funktionsweise der MCU ... sind erstmal kein Ding. Wo
> ich bei mir die Probleme sehe ist die Programmierung. (Bin aber gewillt
> mich da einzuarbeiten.) Meine bisherigen Erfahrungen beschränken sich
> auf Delphi und - vor Ewigkeiten - Basic. Gibt es evtl. Unterschiede im
> Programmierungsaufwand?

Du solltest Dich in C einarbeiten. Wenn Du Delphi kennst, hast Du schon 
gute Voraussetzungen, dann musst Du Dich nur in der Syntax etwas 
umgewöhnen:
 begin/end -> {}
 :=        -> =   (Zuweisung)
 =         -> ==  (Vergleich)
 <>        -> !=  (ungleich)

Zu den kleinen PIC-Architekturen (bis PIC18) würde ich nicht greifen. 
Hier hast Du nämlich unter anderem eine architekturbedingte maximale 
RAM-Größe von 4k minus 128 Bytes. Beim AVR geht der lineare Adressraum 
bis 64k, mit Bankswitching (d.h. dem Umschalten der oberen 
Adressleitungen) kannst Du auch ein 512k SRAM problemlos ansteuern. Wenn 
Du Dich mal mit Grafikdisplays beschäftigst, wirst Du Dich darüber 
freuen (Ablegen von Bildschirminhalten etc).

PIC24, dsPIC und TI MSP430 sind ganz angenehme 16 Bit Architekturen. 
Wenn Du erst einmal C richtig kannst und das Prinzip verstehst, ist der 
Umstieg auf eine andere Architektur nicht mehr das Problem.

fchk

von Michael L. (michaelx)


Lesenswert?

Wie schon von anderen angedeutet, kann man keine generelle 
Gut-Schlecht-Aussage bezüglich verschiedener Hersteller und 
Controller-Familien abgeben.

Ich persönlich habe mich bei meinem Einstieg u.a. daran orientiert, 
welche Typen in den Projekten verwendet wurden, welche ich gern 
nachbauen und weiterentwickeln wollte, natürlich mit Blick auf 
Beschaffbarkeit der Chips und der Entwicklungsumgebung.

Moelf schrieb:
> ...
> Erstes Projekt wird sein: LED's über USB anzusteuern. Wenn das dann mal
> geklappt hat wird sich zeigen was als nächstes kommt.

Dafür könnte das hier eine Vorlage sein:
http://www.sprut.de/electronic/pic/projekte/usb4all/usb4all.htm

Das könntest du erst mal aufbauen, und wenn es läuft umprogrammieren.

Und auch wenn da ein PIC18 verwendet wird, von dessen Verwendung Frank 
K. abrät, so schlecht sind die Teile nicht, und vor allem auch in C 
programmierbar.

> Schaltungsaufbau, Funktionsweise der MCU ... sind erstmal kein Ding. Wo
> ich bei mir die Probleme sehe ist die Programmierung. (Bin aber gewillt
> mich da einzuarbeiten.) Meine bisherigen Erfahrungen beschränken sich
> auf Delphi und - vor Ewigkeiten - Basic. Gibt es evtl. Unterschiede im
> Programmierungsaufwand?

Du solltest schon C lernen, was mit Vorkenntnissen in Programmierung 
nicht so schwer sein sollte. Und den Assembler-Code des jeweiligen µC zu 
verstehen, ist auch ganz nützlich.


Michael

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.