Forum: Mikrocontroller und Digitale Elektronik Welcher Controller ist für mich geeignet?


von Markus M. (znos)


Lesenswert?

Hallo zusammen,

ich würde gerne mit der Controllerprogrammierung beginnen. Leider kenn 
ich mich mit den Chips garnicht aus.

Zuerst würde ich mal gerne eine Frage klären: Reicht mir ein 
Microcontroller? Ich würde gerne versuchen ein paar Sachen zu 
automatisieren: Aquarium etc.  Ich dachte mir das so mit einer kleinen 
Anzeige und zb. einer zeitgesteuerten Beleuchtung und Anzeige von 
Temperatur.
Ich weis das einen Zeitschaltuhr das sicher auch kann aber mir geht es 
darum etwas selbst zu bauen und zu programmieren. Kann ein 
Microcontroller sowas verwalten?

Ich hoffe das ich hier ein paar Antworten finde. Ich möchte mir erstmal 
einen in Frage kommenden Controller besorgen und mich dann darüber 
einlesen. Learning-by-Doing funktioniert bei mir besser als alles andre 
und macht auch mehr Spaß, das mal am Rande.

Programmieren kann ich in C/C++ (und Skriptsprachen VB(.NET), Python, 
Perl)
Asm würde ich auch gerne lernen.

Bitte gebt mir doch ein paar (preisgünstige) Controller mit 
Programmierinterface (egal ob usb oder rs232) zur Auswahl. Gerne auch 
mit Links bzw. ungefähren Kosten.

Danke schonmal, gruß Markus M.

von Achim M. (minifloat)


Lesenswert?

Schau dir mal das Launchpad von Texas Instruments an. Das gibts für 5€ 
udn es ist gleich eine Entwicklungsumgebung inkl. Profi-Compiler, 
Debugger etc. dabei und du kannst in C programmieren.

Ansonsten mach es mit den Atmel-Prozessörchen. Prigrammieradapter geht 
notfalls noch die Bitbang-Methode am ComPort, später dann ein gescheiter 
ISP oder sogar ein Debugger dazu. Schau dir hier mal das AVR-Tutorial 
an.

mfg mf

von 2ter Gast (Gast)


Lesenswert?

TI Launchpad: 4,30 USD
Kommunikation über USB mit uC inkl. Debugger.

von Markus M. (znos)


Lesenswert?

Vielen Dank für eure Antworten. Schaue mir gerade ein paar Videos dazu 
auf Youtube an. Sieht doch ganz gut aus. Werde mir diesen mal bestellen, 
für den Anfang vollkommen ausreichend denke ich mal.

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Von NXP bgibt es den LPCXpresso welche ein ARM Cortex M0 ist,
also so ziehmlich das neuste vom neusten...

Komplett mit Entwicklerumgebung.

› LPCXpresso LPC1114
› LPCXpresso LPC11U14
› LPCXpresso LPC11C24
› LPCXpresso LPC1227
› LPCXpresso LPC1343
› LPCXpresso LPC1769

    http://www.embeddedartists.com/products/lpcxpresso/
    Das kostet 20 Euro pro Typ.

Ich habe den LPC1769 (excelent) und seit Montag auch den LPC11C24
welchen es erst seit lezter Woche gibt.

Wird einfach am USB Port angeschlossen.  Unter Linux gibt es noch
mit dem SWD ein kleines Problem, was sich aber duch Patchen und
neukompilierenvon OpenOCD beheben läßt.

Im Set mit dem BaseBoard ist es billiger und kostet nur 102 Euro.

Grüße
Michelle

von Donald D. (Gast)


Lesenswert?

Ein Atmegea oder Attiny von Atmel sind für solche aufgaben in der regel 
ganz gut geeignet. Ein Atmega16 kostet ca. 4€ und hat zwei 8bit Teimer 
und einen 16bit teimer der sollte für eine Uhr reichen und du kannst 
auch damit ein LCDisplay ansteuern und er besizt auch einen 8Kanaligen 
10bit-adc ....

und mann kann ihn In Assembler und C programmieren.

Mit ponyprog2000 und einem stk200 board kannst du das programm auch 
brennen.

von spess53 (Gast)


Lesenswert?

Hi

>Schaue mir gerade ein paar Videos dazu auf Youtube an. Sieht doch ganz gut
>aus.

Lade dir lieber mal das/die Datenblätter der Controller herunter, und 
entscheide, ob du damit klar kommst. Denn früher oder später, aus 
Erfahrung meist früher als du denkst, wirst du damit konfrontiert.

Youtube als Entscheidungskriterium? Du glaubst anscheinend noch, was dir 
jemand vorspielt.

MfG Spess

von user0 (Gast)


Lesenswert?

Markus Meyer schrieb:
> Asm würde ich auch gerne lernen.

Für ASM sind CISC-µC (Complex Instruction Set Computer) m.M.n. besser 
geeignet als RISC-µC. Sollte man darauf achten.

8051er sind CISC.
Siehe Beitrag "8051 Entwicklungsboard"

von Ulrich (Gast)


Lesenswert?

Wie einfach die Programmierung in ASM geht, hat weniger mit RISC oder 
CISC zu tun, sondern damit wie einfach die Architektur des µC ist.  Die 
PIC10xxx bis PIC18xxx, x86 sind da eher schwierige Vertreter. Die Atmel 
AVR oder Ti MSP430 sind da eher logisch strukturiert.

von Markus M. (znos)


Lesenswert?

Hallo,

wie oben schon beschrieben habe ich noch keinerlei Erfahrung mit 
uControllern. Das Youtubevideo zeigte nur dirverse Anwendungsgebiete 
inklusive der IDE also Vorstellung. Denke mal das kann man schon noch 
glauben ;)


@michellekonzack: "Das neuste vom neuen" finde ich immer gut. Jedoch ist 
jetzt fraglich ob ich das Launchpad für 5€ nehme oder ein neueres für 
mehr als das 4fache.

Mit den Datenblättern kann ich nicht allzuviel anfangen deshalb hoffe 
ich auf gute Beratung in diesem Forum.

Hab mich jetzt auch etwas mit Bauteilen für einen kleinen Roboter 
beschäftigt und finde diese auch nicht wirklich teuer. Ist mir ein 
Projekt wert! Jetzt ist die Frage ob das Launchpad dafür ausreichend 
ist...

von Seltener Gast (Gast)


Lesenswert?

Markus Meyer schrieb:

> Mit den Datenblättern kann ich nicht allzuviel anfangen deshalb hoffe
> ich auf gute Beratung in diesem Forum.

Warum kannst du mit den Datenblättern nicht allzuviel anfangen, und 
warum gehst du (offenbar) davon aus, dass das ein Dauerzustand bleibt?

Für mich sind Datenblätter die erste und wichtigste Anlaufstelle. Sie 
stellen die "Bedienungsanleitung" für ein Bauteil dar, und man kann aus 
ihnen (fast) alles entnehmen, was man für die Bauteilauswahl und 
-benutzung braucht.

von Ralf (Gast)


Lesenswert?

Markus Meyer schrieb:
> Mit den Datenblättern kann ich nicht allzuviel anfangen deshalb hoffe
> ich auf gute Beratung in diesem Forum.

Falsche Einstellung!!

von spess53 (Gast)


Lesenswert?

Hi

>Mit den Datenblättern kann ich nicht allzuviel anfangen deshalb hoffe
>ich auf gute Beratung in diesem Forum.

Diese Einstellung solltest du noch mal überdenken. Das Verständnis der 
Datenblätter ist für ernsthaftes Arbeiten unerlässlich. Oder bindet dir 
Mutti immer noch die Schuhe zu?
Außerdem solltest dir dir dann keinen allzu exotischen Controller 
aussuchen, mit dem sich nur wenige auskennen.

MfG Spess

von 2ter Gast (Gast)


Lesenswert?

Markus Meyer schrieb:
> Mit den Datenblättern kann ich nicht allzuviel anfangen deshalb hoffe
> ich auf gute Beratung in diesem Forum.

Autsch. Das geht schief!!!

Um den richtigen Mikrocontroller auszuwählen, muss man wissen, was man 
machen möchte. Dann schaut man sich vielleicht mal die Bauteile an 
(Datenblätter), sprich was brauch ich. Aus den Datenblätter weisst Du 
dann zum Beispiel wie viele I/O Pin Du benötigst, welche Busse usw. Dann 
suchst Du dir den Mikrocontroller aus. Zum Anfang nimmt dann meist eine 
etwas größeren, um Reserven zu haben. Und das hat man nicht sofort 
erledigt, sondern wiederholt, d.h. verfeinert das Ganze. Es ist also 
nichts, was mal schnell an einem Vormittag erledigt ist.

Ach ja Software habe ich ja noch gar nicht erwähnt...

von Christian W. (cweckmann)


Lesenswert?

Auch wenn es einige hier nicht hören mögen: Versuch's für den Anfang mal 
mit einem Arduino. Den gibts für ~€25, dazu gibts eine große userbase im 
Netz die gern ihr Wissen teilt.

Wenn du dann irgendwann über den Arduino "hinausgewachsen" bist kannst 
du quasi nahtlos auf diverse andere AVR-Controller von Atmel inkl. 
zugehörigem Programmer wechseln. Weiterer Vorteil des Arduino ist, daß 
er auch eine serielle Kommunikationsmöglichkeit per USB mitbringt ohne 
daß du dich groß damit beschäftigen musst wie es geht. Praktisch, wenn 
man per Terminal am Rechner nachverfolgen will was passiert. Genug I/O 
Pins hat auch der kleinste Arduino, da die auf Atmel Atmega-µCs 
basieren.

Falls der Arduino dann doch nicht dein Fall sein sollte ist der 
Wiederverkaufswert nicht viel niedriger als der Anschaffungswiderstand.

Statt einer kompletten Aquariumsteuerung würde ich aber mit einer 
blinkenden LED anfangen :D


Grüße,
 Christian


PS: Als AVR-Nutzer bin ich allerdings etwas voreingenommen, das sollte 
ich der Ehrlichkeit halber hinzufügen.

von schonwiedergast (Gast)


Lesenswert?

Ich fand diese beiden Bücher ganz gut, denen kann man auch einiges 
entnehmen:

http://www.amazon.de/Mikrocontroller-Kürze-Experimente-mit-ATtiny25/dp/3866838123/

http://www.amazon.de/Hardware-Hackz-Messen-Steuern-Sensorik/dp/3446407839/

Hier auf Microcontroller.net gibt es auch viele sehr gute Artikel/tuts, 
einfach mal ein wenig auf der Seite umschauen.
(z.B. http://www.mikrocontroller.net/articles/AVR-Tutorial )
Möglicherweise findest du sogar einen Artikel, der dich in der 
Machbarkeit sehr anspricht, und dann hast du gleich die Hardware dazu.

Für grundlegendes Assemblerverständnis ist auch Jasmin recht hilfreich, 
vor allem kann man sich asmprogrammiertechnisch austoben:
http://www.lrr.in.tum.de/~jasmin/

von Michelle K. (Firma: electronica@tdnet) (michellekonzack) Benutzerseite


Lesenswert?

Markus Meyer schrieb:
> @michellekonzack: "Das neuste vom neuen" finde ich immer gut. Jedoch ist
> jetzt fraglich ob ich das Launchpad für 5€ nehme oder ein neueres für
> mehr als das 4fache.

Richtig, aber ich hatte mir EINMALIG für 102 Euro den LPC1769 MIT 
dem BaseBoard gekauft und nun dazu einen LPC11C24 zu 20 Euro welcher 
ebenfals auf das Baseboard passt.

Eine passende Eclipse wird ebenfals mitgeliefert, welche aber nur unter 
Windows funktioniert und nicht unter GNU/Linux...  (Java 1.6 ist 
erforderlich)

Somit kann ich auch das CAN Netzwerk ausprobieren und Testschaltungen
aufbauen...

> Hab mich jetzt auch etwas mit Bauteilen für einen kleinen Roboter
> beschäftigt und finde diese auch nicht wirklich teuer. Ist mir ein
> Projekt wert! Jetzt ist die Frage ob das Launchpad dafür ausreichend
> ist...

Dafür würde ich den LPCXpresso LPC1769 nehmen...

Das Motor-Control-Kit mit dem LPC1114 finde ich Schweineteuer!
http://www.embeddedartists.com/products/lpcxpresso/xpr_motor.php

Da würde  ich noch eher was von Microchip mit nem PIC empfehlen, womit 
Du eine Eentwicklerumgebung für PIC14/16/18/24/32 und dsPIC30/32 
bekommst.

Grüße
Michelle

von Sebastian H. (sh______)


Lesenswert?

Ihr Empfehlt nicht wirklich jemanden der noch nie was mit µC gemacht hat 
nen 32Bit ARM als Einstieg???

Das einfachste wird wohl ein ATMega8(ATMega88) sein und anhand des 
Tutorials hier auf der Seite erste Erfahrungen zu sammeln. Beim ATMega 
ist das Datenblatt auch noch sehr kurz, übersichtlich und mit Beispielen 
so das man auch als Anfänger schnell zurecht kommt. Außerdem kann man 
die ohne Probleme auf nem Steckbrett aufbauen und so schön rum basteln. 
Bei fertigen Boards ist man doch immer eingeschränkt wenn man dann etwas 
"praktisches" daraus machen will.

von Carsten S. (dg3ycs)


Lesenswert?

Hi,

Ulrich schrieb:
> Wie einfach die Programmierung in ASM geht, hat weniger mit RISC oder
> CISC zu tun, sondern damit wie einfach die Architektur des µC ist.  Die
> PIC10xxx bis PIC18xxx, x86 sind da eher schwierige Vertreter. Die Atmel
> AVR oder Ti MSP430 sind da eher logisch strukturiert.

Also das die PIC jetzt schwieriger für ASM sein aollen als AVR halte ich 
für ein Gerücht. Die meisten die dieses Behaupten haben es entweder nie 
wirklich ausprobiert - oder noch häufiger- haben halt AVR ASM gelernt 
und Probleme mit der Umstellung.
JA - Die PICs bis 16F haben die Eigenschaft mit der manchmal notwendigen 
Bankumschaltung. Aber ganz ehrlich - Als Anfänger habe ich das damals 
bereits am ersten NAchmittag kapiert wo ich mich ernsthaft damit befasst 
habe. Das ist eine Eigenschaft die manchmal nervt. Dafür haben die 
anderen µC wieder andere Macken.
Was aber tatsache ist, das ist das der PIC einen Befehlssatz von rund 30 
Befehlen hat. (Je nach genauer Familie). Der AVR hat ein vielfaches.
Was ist wohl einfacher zu lernen?

Und die 18F Pics haben dieses Banking auch überhaupt nicht mehr. Diese 
sind bis auf die anderen Befehlsschreibweisen vergleichbar mit den AVR. 
Nur das die PICs die bessere Peripherie haben, vielseitigere Varianten 
vorhanden sind, auch spezielle Bausteine leichter zu bekommen sind und 
Programmierzubehör mit debug Funktion günstiger ist - Ohne das man noch 
selbst ein Gehäuse drum basteln muss und Angst haben muss durch einmal 
falsch ansehen den Spannungsregler zu zerstören. Selbst der aktuelle 
Einsteigerprogrammer den man als Nachbau ab 20 Euro bekommt, Original so 
ab 40 - oder wenn man es drauf anlegt sogar im selbstbau für ca. 15Euro 
Material kann... (SCHALTPLAN UND Firmware sind wenn ich das jetzzt 
richtig in erinnerung habe von Microchip frei verfügbar)- kann alle 
aktuellen PICs  sowohl Programmieren - wie auch bei den dafür geeigneten 
PICs auch debuggen. Dazu kommt das dieses Ding kaum kaputtzubekommen 
ist. Ich habe meinen schon zig mal verpolt, mit Überspannung geqält und 
auch runterfallenlassen - lebt immer noch!

Der im gleichen Preisbereich liegende AVR ISP kann aber nur 
Programmieren.
(Wobei ich gerade abe rüberfragt bin ob auch alle Bausteine oder ob die 
AVR32 bzw XMEGA doch was anderes brauchen)
Debuggen ist Fehlanzeige.

Ach ja: die aktuellste IDE der PICs gibt es für diverse 
Betriebssystemplattformen. Für AVR-Studio und Linux ist da ein anderes 
Thema.

Sebastian H. schrieb:
> Ihr Empfehlt nicht wirklich jemanden der noch nie was mit µC gemacht hat
> nen 32Bit ARM als Einstieg???

DAS habe ich auch gedacht...
NAtürlich kann man mit 32Bit direkt anfangen. Aber für einen 
Neueinsteiger der auch noch nicht so gut mit den Datenblättern zurecht 
kommt und alle Erfahrungen erst noch sammeln muss ist das vieleicht doch 
etwas "Heavy".
Die Bausteine sind zwar erheblich Leistungsfähiger, das wird aber mit 
wesentlich komplexeren Aufbau, der selbst für einfache Blinkschaltungen 
deutlich mehr Voreinstellungen erfordert, erkauft. Das ist nicht 
unbedingt das Ideale für einen Anfänger. DA fängt der Spass bei der 
Installation und richtigen Konfiguration der Toolchain ja schon an.

Von so dingen wie Verfügbarkeit in Bastelfreundlichen DIP gehäusen wo 
man den µC Sockeln kann und so auch mal schnell einen gegrillten 
umstecken kann mal ganz abgesehen.

Da ist 8Bit schon deutlich Besser!

>
> Das einfachste wird wohl ein ATMega8(ATMega88) sein und anhand des
> Tutorials hier auf der Seite erste Erfahrungen zu sammeln. Beim ATMega
> ist das Datenblatt auch noch sehr kurz, übersichtlich und mit Beispielen
> so das man auch als Anfänger schnell zurecht kommt. Außerdem kann man
> die ohne Probleme auf nem Steckbrett aufbauen und so schön rum basteln.
> Bei fertigen Boards ist man doch immer eingeschränkt wenn man dann etwas
> "praktisches" daraus machen will.

JA, der Atmega ist schon OK. Den kann man nehmen. Genausogut aber auch 
einen kleinen PIC. Allerdings würde ich schon bei einem dieser beiden µC 
bleiben. Der Grund liegt darin das für diese am meisten Unterstüzung 
vorhanden ist. STM8 und MSP430 sind genau wie Renesas RC8 auch 8Bit µC 
die praktisch gesehen für die meisten Projekte genausogut geeignet sind 
wie PIC und AVR.
Allerdings ist hier die Unterstützung in Form von Projekten und Hilfe in 
Foren deutlich schlechter da diese in Hobbykreisen nicht so verbreitet 
sind. Wenn man dann erst einmal Erfahrung hat ist es aber sicher nicht 
verkehrt auch mal über den Tellerrand zu schauen. Sowohl für den STM8 
wie auch für den MSP430 gibt es einstiegskits schon fr deutlich unter 10 
Euro!

Ob man nun AVR oder PIC bevorzugt ist für den Einsteiger einfach eine 
Geschmacksfrage. Zum lernen sind beide gleichermaßen geeignet und für 
beide gibt es gute Unterstützung. Ich arbeite mit beiden und habe auch 
ordentliche Ausstattung für beide (PIC : Pickit3 und ICD2, AVR: ISP 
Programmer und JTAG ICE)

Allerdings favorisiere ich eindeutig die PICs. Ich bin der Meinung die 
haben die vielseitigere HArdware und sind besser Verfügbar. Selbst 
Bausteine mit USB und Ethernet intern sind an fast jeder Ecke zu 
bekommen.
Dazu kommt das selbst Leistungsfähige Bausteine noch im 
Bastlerfreundlichen (Lochraster oder Steckbrett) DIP gehäuse zu bekommen 
sind, wo AVR immer weniger hat. So gibt es z.B. PIC Bausteine mit 
internen
USB in den größen von DIP20 bis zu DIP40, genauso aber auch in TFQP mit 
viel mehr an IOs.
USB AVR sind als Privatmensch nur bei sehr wenigen Händlern zu bekommen.
So gibt es einstiegsbaustein z.B. den AT90USB162 für den mir jetzt als 
Lieferant für Privat in DL "NUR" CSD-Electronic einfällt. ISt sogar mit 
knapp 4 Euro günstiger als Farnell wo man nur als GEwerbe oder Student 
einkaufen kann. Es bedeutet aber das man bei der Verfügbarkeit alleine 
auf den Lagerbestand dieses relativ kleinen Anbieters angewiesen ist.
Zu bekommen ist der NUR in TFQP32(oder kleiner, aber nicht mehr bei 
csd). Es GIBT keine DIP version

Der kleinste (heute übliche) USB PIC ist der PIC18F13K50 den es bei 
jedem größeren Versender gibt. Reichelt hat den im DIP20 Gehäuse für 
2,30 Euro im Angebot. Der funktioniert auch noch auf dem Steckbrett. 
Will man es kleiner haben nimmt man den in SOIC für 1,80 Euro
(Und es sind noch kleinere GEhäuse verfügbar)

Auch die versorgung mit Codbeispielen liegt mir beim PIC eher.
Bei beiden gibt es ein reichhaltiges Angebot. Allerdings bei den AVR 
verteilt im Netz geschrieben und bereitgestellt von Privaten Nutzern in 
ihrer Freizeit. Im ergebniss bedeutet das aber auch das für häufige 
Anwendungsfälle eine vielzahl Lösungen vorhanden sind. für Unpopuläre 
muss man aber ewig suchen. Auch muss ich immer im jeweiligen Fall genau 
prüfen wie es mit den "Rechten" aussieht. Für private Bastelleien noch 
relativ unbedeutend, Bereits wenn man nur das Ergebniss in einem Forum 
vorstellen will kann das aber plätzlich enorm interessant werden.

Bei den PICs wird sehr viel mehr Zentral von Microchip selbst 
bereitgestellt. Die Lizenzrechte sind da immer gleich und die machen mir 
fast keine Einschränkungen- Selbst gewerbliche Verwertung ist egal.

Dazu kommen noch so kleinigkeiten wie das man als USB -Pic Nutzer 
kostenlos eine eigene PID_VID Kombination von Microchip bekommt. Egal ob 
man Privatmensch ist oder Gewerbetreibender.

Als AVR Nutzer muss man als Privater Bastler zwangsläufig einfach eine 
jemanden NICHT zustehende PID_VID fremdnutzen, was zu Problemen mit 
Treibern und dem PC führen kann wenn dann doch mal eine Software 
installiert wird die auf das Gerät reagieren würde was diese Kombination 
"legal" trägt.
Bei wirklich zufällig gewählten Kombinationen ist die Wahrscheinlichkeit 
gering, wählt man aber die oft zum probieren genutzten O / O hat man 
ganz schnell verschiedenste Geräte am Rechner die dieser aber nicht mehr 
auseinanderhalten kann.

Schlimmer ist es aber wenn man diese Sachen dann weitergeben will. 
Sobald das den innersten Privaten Dunstkreis verlässt ist eine schwarz 
genutzte PID-VID extrem gefährlich da man die Eigentumsrechte des 
richtigen Nuzters -der dafür richtig gezahlt hat- verletzt.
Daher muss man selbst mit Kleinstgewerbe schon ettliche tausend Euro für 
eine eigene VID ausgeben...

Das sind jetzt alle für sich sicher keine Totschlagkriterien -zumal isch 
TFQP32 "locker" behersche und auch gewerblich einkaufen kann, aber die 
Summe dieser "kleinen" Gründe führt bei mir zur PIC Vorliebe.

Genausout kann das aber auch jemand anders sehen. So gibt es ja auch 
Leute die Softwarebesipiele und ANs die vom Hersteller herausgegeben 
werden gar nicht mögen und einzig auf durch die "Community" entwickelte 
Codestücke schwören. ISt nicht meine Ansicht, aber es gibt sicher auch 
dafür einige mögliche Gründe und das muss jeder für sich wissen.
Wenn dieser jemand dann noch eh nur mit geätzten Leiterplatten arbeitet 
wo er dann auf SMD Gehäuse als einzig richtiges Schwört und auch zu 
probezwecken kein Steckbrett und Lochraster bemüht, der fährt vielleicht 
mit AVR sogar besser wenn ihm dann auch noch deren Assembler / Compiler 
besser liegt.

Daher: Schaue dir beides an und treffe DEINE Entscheidung. Neben den 
Empfehlungen hier kommen dann auch noch Dinge dazu die wir gar nicht 
wissen können.

Wenn du zum Beispiel viele Bekannte hast die einzig mit AVR arbeiten 
dann würde selbst ich dir empfehlen auch damit einzusteigen.
Umgekehrt - wenn du vielleicht schon absehen kannst das du später evtl. 
mit PIC Controllern in Kontakt kommst (Schule, Studium, Ausbildung als 
Beispiel) würde ich unbedingt auch diesen als Eintieg wählen - selbst 
wenn du zu dem Schluss kommen solltest das dir der Name AVR besser 
gefällt. (Beide Beispiele gelten natürlich auch mit umgekehrten 
Vorzeichen)

In jedem Fall würde ich nach der Entscheidung dann mein Wissen auf 
diesen Controller vertiefen. Sowohl C wie auch ASM - und wenn du dann 
einigermaßen Sattelfest bist unbedingt auch mal Erfahrungen mit anderen 
Controllern sammeln. Zuallererst mit dem von den beiden den du nicht 
gewählt hast- dann weiter über MSP, ARM diverser HErsteller usw.
Denn es gilt später unbedingt: Man wählt seinen Controller nach den 
Anforderungen des Projektes und nicht das Projekt nach dem Controller.

Bei der Bewertung der TIPs hier würde ich auf jeden Fall auch schauen 
was der jeweilige SChreiber für eine Hintergrund hat. Jemand der 
offensichtlich nur eine einzige Familie kennt wird immer seine Familie 
als das Non-Plus Ultra darstellen - er erkennt ja einfach nicht das 
andere Typen für das jeweilige Projekt viel besser geeignet sein 
könnten. Diese Meinungen kannst du -egal WAS empfohlen wird- also 
einfach aussen vor lassen. Und bei jemanden der viele Familien kennt 
muss man zumindest immer die Persöhnlichen Vorlieben und die jeweiligen 
Schwerpunkte berücksichtigen. Denn nur weil ich z.B. auf die oben von 
mir als PIC Vorteil genannten Dinge wert Lege muss es bei dir ja nicht 
genauso sein...

Als letzte gue Empfehlung noch:
Egal für welchen µC du dich später entscheidest - lege dir UNBEDINGT 
entweder ein originales Programmiergerät des Herstellers ODER einen 
sicher zum Originalprogrammer 100% kompatiblen Nachbau zu.

Es gibt zwar eine Menge Vorschläge und Anleitungen im Netz für 
SelbstbauProgrammiergeräte, aber LASS die FINGER DAVON.

Diese Selbstbauidee stammt noch aus den Zeiten als µC Brenner ettliche 
hundert DM gekostet haben. Heute sind die nicht mehr Sinnvoll.

Man kann kaum was sparen, einen Originalprogrammer für AVR oder Pic 
bekommt man ab etwas über 30 Euro. Einen 100% Clone für unter 20Euro 
incl. Versand.
Mit Platine und Bestellung von Bauteilen kosten die selbstgebauten 
Programmiergeräte aber auch um die 20 Euro. Noch schlimmer sind oft 
fertig aufebaute Drittgeräte die man immer noch bei Ebay & Co. findet. 
TEilweise sind die sogar teurer als die Originalgeräte.

Für die 5 -10 Euro die man vieleicht mit Glück sparen kann erkauft man 
sich viele NAchteile. WEnn etwas nicht läuft weiß man erst nicht - liegt 
an dem brenner oder an mir. Da kann man sich einen Wolf scuhen. HAt man 
pech und macht beim Aufbau einen Fehler kann man schon mal den 
verwendeten µC pluss die ersten die man programmieren wollte grillen und 
hat schon mehr ausgegeben als der originale kostet. Dann kommt beim 
Aufbau zu der Zeit und den unsicherheiten im Falle des nicht 
funktionierens oft noch das "Henne / Ei" Problem. Es wird ein 
programmierter µC gebraucht den man mangels brenner nicht programmieren 
kann. ALso muss man erst jemanden suchen der den brennen kann - oder man 
baut sich einen noch einfacheren Brenner (JDM) -sofern man noch alte 
Schnittstellen am PC hat- nur um den ersten µC zu programmieren...

Zudem arbeiten viele dieser Geräte nicht in der IDE des HErstellers. Wo 
man beim Originalgerät zum brennen incl. übersetzen nur ein ICON in de 
Leiste anklicken muss, da muss man hier erst in der IDE übersetzen, das 
dann abspeichern, dann aus der IDE herausgehen, das zugehörige 
Brennprogramm aufrufen, da die zu brennende Datei heraussuchen und 
öffnen, dann brennen - um dann bei der nächsten Änderung genau dasselbe 
immer und immer wieder zu machen.
Und dazu kommt noch die Unsicherheit ob das GErät auch morgen noch 
funktionieren wird. Werden die neuen µC auch noch unterstützt? Wird es 
einen Patch / Update geben wenn eine Änderung am Betriebssytem (zb. ein 
neues SP für Windows) dazu führt das die SW nicht mehr läuft? Ode rmuss 
man nur um weiterarbeiten zu können mit einem nicht aktuellen 
-unsicheren- Softwarestand des BEtriebssystems weiterarbeiten.

Bei den fertig aufgebauten Brennern die keine 100% Clones sind hat man 
auch genau dieselben probleme. Nur die Aufbauzeit und das HEnne-Ei 
Problem fallen weg. Dafür zahlt man aber deutlich mehr. Nicht selten 
mehr als für den funktional BESSEREN Originaladapter.

Gruß
Carsten

von ich (Gast)


Lesenswert?

Sebastian H. schrieb:
> Ihr Empfehlt nicht wirklich jemanden der noch nie was mit µC gemacht hat
> nen 32Bit ARM als Einstieg???

Reines Imponiergehabe -> "Schau mal, was ich tolles kann!"

von ich (Gast)


Lesenswert?

Praktisches Beispiel: PIC18F4550
40 Pins, erhältlich im handlichen DIP-Gehäuse, mit USB etc.
zum Programmieren: PicKit2 oder PicKit3,
kostet bisschen was, aber ist den Preis wert
IDE: MPLAB, gratis, Assembler ist dabei
Programmiersprache: da gibts so einiges... ich bevorzuge HI-TECH C
Besonders witzig ist die Möglichkeit, einen Bootloader reinzuflashen und 
dann über USB upzudaten
Datenblätter sind meine Lieblingslektüre, auch wenns so dick ist wie ein 
Telefonbuch :)
Mikrocontroller sind nun mal kompliziert, man muss das Teil kennen um es 
sinnvoll einzusetzen.

von Noch 'ne Antwort (Gast)


Lesenswert?

Für Dich ist der µC geeignet, mit dem Du am Besten zurechtkommst. Dazu 
Datenblätter durchlesen (RTFM, die Anwort bekommst du sonst - zurecht - 
auf viele deiner Fragen). Fallstricke beachten, jede µC-Familie hat 
seine Eigenheiten, Erratas durchlesen.
Hast du Dir schon mal das Tutorial hier durchgelesen? Hast du schon mal 
andere Tutorials durchgelesen? Welcher Controller hat dir da am meisten 
zugesagt?

Welche Standard-Schnittstellen (USB, LAN, ...) brauchst du jetzt schon 
unbedingt im µC? Für ein (späteres) entsprechendes Projekt den 
entsprechenden Controller aus der Familie auswählen oder mit externen 
Komponenten einfach realisieren.

Vom Preis her ist bei den Controllern kein grosser Unterschied (auf die 
Leistung bezogen).
Wie gut kannst Du löten (µC in SMD- oder DIL-Gehäuse), falls Du (später) 
eine eigene Schaltung aufbauen willst? Oder stattdessen lieber fertige 
Platine mit einem Lochrasteranteil, was kosten diese?

Nimm einen ATMega, MSP430 oder PIC, da gibts die beste Unterstützung in 
den Foren.

Der Rest ist Religion - und eigener Geschmack

P.S. Ich habe mich für den .pieep. entschlossen, aus den obrigen 
Überlegungen heraus. Falls ich wirklich mal die Rechenleistung eines 16- 
oder 32 Bit µC brauche, dann kann ich immer noch umsteigen. Die 
Programmierung ist nur die eine Seite der Medaillie, die andere ist die 
Peripherie. Deren Schaltung ist im allgemeinen prozessorunabhängig 
(meist nur Pegelanpassungen).

von MCUA (Gast)


Lesenswert?

>Für ASM sind CISC-µC (Complex Instruction Set Computer) m.M.n. besser
>geeignet als RISC-µC. Sollte man darauf achten.
Wenn ein CISC-Befehlssatz total unorthogonal ist oder zu kleine lin. 
Adr.bereiche hat, sind diese sehr schlecht (in ASM) zu programmieren.
Da ist es besser, man hat ein RISC, und verwendet einfach mehrere 
Befehle. (sofern beim RISC nicht 'Haken' da sind (zB DeleyedBranches))

von ich (Gast)


Lesenswert?

Ich würde CISC gut finden, wenn man einen 68000 Befehlssatz zur 
Verfügung hätte.
Aber... welcher vernünftige Mensch schreibt denn komplizierte Programme 
heutzutage in Assembler ?
Vor langer, langer Zeit haben die Herren Kernighan & Ritchie eine 
Sprache erfunden (C), um UNIX auf diverse andere Systeme zu portieren - 
ein guter Ersatz für Assembler.

von Carsten S. (dg3ycs)


Lesenswert?

ich schrieb:
> Aber... welcher vernünftige Mensch schreibt denn komplizierte Programme
> heutzutage in Assembler ?
> Vor langer, langer Zeit haben die Herren Kernighan & Ritchie eine
> Sprache erfunden (C), um UNIX auf diverse andere Systeme zu portieren -
> ein guter Ersatz für Assembler.

Für umfangreiche Projekte hast du zweifellos recht. Das ist C die 
bessere Wahl. Wirklich zeitkritische Operationen werden aber immer noch 
am zuverlässigsten als Assembler eingebettet.

Für ganz simple Programme ist man aber teilweise mit Assembler sogar 
schneller - auf jeden Fall übersichtlicher.

Auf jeden Fall sind Assemblerkentnisse bei µC Programmierung sinnvoll.
MAn lernt so direkt wie ein µC arbeitet was das verständniss ungemein 
erleichtert. Zudem werden immer noch einzelne Codeabschnitte als 
Assemblerbefehle in C Programme eingebettet. MAl ganz davon abgesehen 
das der Compiler ja erst mal den C Code in Assembler umsetzt bevor er 
den Assemblercode dann 1-1 in die Maschinenbefehle umwandelt. Diesen 
umgesetzten Code sollte man zumindest verstehen können. Zwar kommt es 
heute nur noch extrem selten vor das bei dieser Umsetzung etwas 
schiefgeht was man nur durch manuelles eingreifen behebn kann. Aber es 
kommt immer noch vor und jede neue Version kann neue Bugs bringen. Ohne 
ASM Kentnisse hat man ja nicht mal die Chance zu erkennen das es eine 
falsche Übersetzung ist und sucht in seinem C Programm bis in alle 
ewigkeit nach Fehlern.

Was der Durchschnitts - Hobbyprogrammierer heute aber nicht mehr 
braucht, das sind die perfekten ASM Kentnisse wo es um einzelne 
Programmierkniffe geht nur um da noch mal ein Bit zu sparen.

Gruß
Carsten

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.