Forum: Mikrocontroller und Digitale Elektronik Womit Einsteigen?


von Chantal (Gast)


Lesenswert?

Hei,

meine Frage ist durchaus ernst gemeint, also bitte nicht lachen.
Hab vor über 20Jahren alles auf Commodore in Basic programmiert.
Möchte jetzt wieder einsteigen, aber etwas moderner.
Ich suche,
eine Plattform, wo ich auf dem Rechner mein Programm schreiben kann. 
Gerne irgendwie Basic oder andere leichte Programmiersprache.
Dann das Programm über USB auf eine Platine schieben, in welcher ein 
Prozessor steckt, welchen ich danach nur noch entnehmen muß, um ihn in 
meine Hardware einzusetzen.
Was ist am besten geeignet?
Es gibt ja soviel, ARM, AVR, PIC, usw. Ich blick da echt nicht durch.
Konkrete Angaben Hersteller, Bezugsquelle, Bestellnummer usw. wären echt 
hilfreich.

Danke schonmal für Eure Hilfe

von STK500-Besitzer (Gast)


Lesenswert?

Arduino. Damit spart man sich die typischen Hardware-Probleme, die bei 
"losem" Aufbau entstehen. Um die kann man sich kümmern, wenn man mehr 
will.

von Willi (Gast)


Lesenswert?


von Max H. (hartl192)


Lesenswert?

Ich würde mir das DV164131 - PICkit 3 Debug Express kaufen. Damit hast 
du einen Programmer/Debugger und eine Testplatine. Mit dem PICkit3 
kannst du dann auch so gut wie alle PICs vom kleine 8bit bis zum 32bit 
Controller programmieren. Ich verwende MPLAB X IDE mit dem XC8 (8bit 
PICs) bzw. XC16 (16bit PICs) C-Compiler. Wenn dir C nicht gefällt kannst 
du mit dem PICkit auch das vom MikroE Compiler generierte HEX-File auf 
dem PIC flashen.

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Einfach sind in jedem Fall PIC und AVR Controller. Bei beiden ist der 
Schaltungsaufwand und die Kosten beinahe identisch. Ich bevorzuge AVR, 
weil ich zu meiner Einstiegszeit dazu mehr Infos im Web gefunden habe.

ARM Controller sind eher was für Fortgeschrittene - zu viele Funktionen 
für Einsteiger.

Das Arduino System verleitet Anfänger durch seine praktischen Libraries 
und Steckmodule dazu, komplexe System zusammen zu kopieren, die am Ende 
oft nicht zufriedenstellens funktionieren und vom Erbauer selbst nicht 
mehr verstanden werden. Die Hardware ist zum Basteln Ok, aber lass die 
Finger von der Arduino Software. Arduinos sind letzendlich primitive 
Mikrcocontroller Boards mit AVR Controllern.

AVR und PIC bekommst du bei allen mir bekannten Elektronik 
Versandhäusern, ebenso das dazu nötige Zubehör. Kleine Boards mit AVR 
Controller, Quarz und USB-UART Interface findet man zeitweise sehr 
billig bei Ebay. Leider sind die manchmal auch fehlerhaft (z.B. einzelne 
Pins nicht beschaltet oder vertauscht).

von Günther (Gast)


Lesenswert?

Chantal schrieb:
> Was ist am besten geeignet?
> Es gibt ja soviel, ARM, AVR, PIC, usw. Ich blick da echt nicht durch.

Es gibt nicht "am besten". Fang mit etwas kleinem an. Danach ist das für 
dich zunächst am besten weil du es schon etwas kennst. Qualifizierte 
Unterstützung im Forum findest du zu AVR. Ich empfehle ATmega88A und die 
Tutorials zum AVR hier im Forum.

von PittyJ (Gast)


Lesenswert?

Angefangen wird mit "Programmieren in C". Am besten das Original von 
K&R.
Denn für alles, was du auf einem Mikrocontroller machst, wirst du 
irgendwann C benutzen müssen.
Zum Üben kann man auch einen PC benutzen.
Nach ein paar Monaten kann man dann auch auf etwas kleineres umsteigen.

von Willi (Gast)


Lesenswert?

PittyJ schrieb:
> Denn für alles, was du auf einem Mikrocontroller machst, wirst du
> irgendwann C benutzen müssen.

Troll

von U. M. (oeletronika)


Lesenswert?

> Chantal schrieb:
> welchen ich danach nur noch entnehmen muß, um ihn in
> meine Hardware einzusetzen.
Hallo,
du willst einen konkreten Rat, aber schreibst nicht wofür?
Das ist so, wei wenn jemand nach einen guten Fahrzeug fragt, aber sich 
nicht darüber auslässt, ob der damit Brötchen holen will oder 
Granitblöcke aus dem  Steinbruch abtransportieren muss.

Kein Mensch weiß, was deine Hardware konkret macht?
Auch wenn man manche uC-Plattform sehr universell einsetzen kann, heißt 
das nicht, dass sie alles kann oder dass sie deine Anforderungen gut 
erfüllt.
Gruß Öletronika

von Michael S. (rbs_phoenix)


Lesenswert?

Max H. schrieb:
> Mit dem PICkit3
> kannst du dann auch so gut wie alle PICs vom kleine 8bit bis zum 32bit
> Controller programmieren.

Welcher wird denn nicht unterstützt? Ich hab bisher keinen gesehen. Ich 
hab aber auch nicht die Liste der unterstützen PICs mit den verfügbaren 
PICs abgeglichen.


Günther schrieb:
> Qualifizierte
> Unterstützung im Forum findest du zu AVR.

Qualifizierte Antworten bekommt man zu jeden Thema, sofern man die Frage 
konkret stellt und den anderen nicht das Gefühl gibt, dass die eine 
Aufgabe lösen sollen und man selber macht nichts. Die Frage ist, bei 
welchen Themen findest du am meisten unqualifizierte Antworten ;)


Zum Thema: Auch wenn dir das nicht wirklich weiter hilft: Es gibt nicht 
die richtige Wahl. Es sind Leute dabei, die bevorzugen AVRs, welche ARMs 
und Leute wie z.B. ich PICs. Die Frage ist so ähnlich wie: Ich will nen 
Auto, welche sind besser: BMW, Audi oder Mercedes. Darauf wirst du nie 
eine Antwort finden, da es keine gibt. Die wird es vielleicht geben, 
wenn du sehr konkrete Vorstellungen hast (z.B. ein eingebauter ADC mit 
>2MSps bei >12bit). Und was ist mit den anderen Firmen? Die sind ja 
nicht schlecht, nur weil sie hier kaum behandelt werden.
Um in die Materie reinzukommen langen wohl alle. Meine persönliche 
Empfehlung: PIC. Dort hast du mit einer IDE und einem (günstigen) 
Programmer (und Debugger) die Auswahl/Möglichkeit, kleine 6pin 8bitter 
über große 8bitter und 16bit dsPICs bis zu 32bitter MIPS Controller zu 
programmieren. Nach meinem Wissensstand haben andere Hersteller nicht so 
eine große Bandbreite, die mit den gleichen Tools abgedeckt werden. Aber 
da nagel mich nicht drauf fest. Ich habe bisher jedenfalls für alle 
Anwendungen einen passenden PIC gefunden. Und als Einsteiger wird es 
sowieso länger dauern, bis dir die PIC32 zu lahm/Ressourcenarm sind.

Programmiersprachentechnisch wirst du mit C sehr viel mehr Auswahl 
haben. Ein Basic-Compiler fällt mir nur der von MikroElektronika ein. 
Für AVR, PIC und ARM bieten die C, Basic und Pascal Compiler an. Bei C 
hast du aber die Compiler und IDE direkt vom Hersteller, die im 
Gegensatz zu MikroC in der kostenlosen Version keine 
Codegrößenbeschränkung haben. MikroC ist beim Kauf aber günstiger. Hier 
ist meine Empfehlung: Nimm/Lern C. Sooo ein riesen Unterschied zu Basic 
ist es auch nicht (Schleifen, Bedingungen, Funktionen, Variablen, ... 
gibt es überall). Du hast mehr (oder überhaupt eine) Auswahl an 
Compilern/IDEs und wenn du irgendwann wirklich mal einen PIC32 oder ARM 
vor dir hast, wo du die Ressourcen wirklich brauchst, geht es auch 
allmählich an C++. Und der Umstieg von C zu C++ ist deutlich leichter 
als von Basic.


Also kurz: Wenn du keinen sehr speziellen Einsatzzweck für den uC hast, 
ist es nicht möglich, einen speziellen uC oder gar einen Hersteller zu 
nennen, der "besser als der andere" ist. Man kann meiner Meinung aber 
sagen, dass du mit C besser bedient bist, als mit dem Rest.

von F. F. (foldi)


Lesenswert?

Kleine Entscheidungshilfe:

https://www.youtube.com/watch?v=DBftApUQ8QI

: Bearbeitet durch User
von Staubteilchen (Gast)


Lesenswert?

Zwei Empfehlungen:

1. Micromite BASIC auf einem PIC

Beitrag "PIC 32 schneller Basic Interpreter"

Dazu flashst du einen PIC-Controller oder fragst hier im Forum.

2. LUA auf dem ESP8266

Dazu kaufst du einen ESP8266 wie den ESP-01 (EBAY, 3 - 4 Euro ) und hast 
noch WLAN obendrauf.

http://www.esp8266.com/viewforum.php?f=17&sid=2ebf83c6bd7509235c304bd68071163a

von F. F. (foldi)


Lesenswert?

Ich kann nur sagen, wenn ich nicht mit Atmel angefangen hätte und vorher 
mehr gewusst hätte, dann würde ich heute mit PIC's anfangen.
Was mich daran gestört hatte, der Compiler war (ist glaub ich nicht 
mehr?) begrenzt.

von Max H. (hartl192)


Lesenswert?

Michael Skropski schrieb:
> Welcher wird denn nicht unterstützt?
Hier 
www.microchip.com/Developmenttools/ProductDetails.aspx?PartNO=PG164130 
findest du im Anhang "MPLAB X IDE Release Notes" die Liste "Device 
Support.htm".

von Axel S. (a-za-z0-9)


Lesenswert?

F. Fo schrieb:
> Kleine Entscheidungshilfe:
> https://www.youtube.com/watch?v=DBftApUQ8QI

Um Himmels willen, nein!

Dieser Video-Beitrag ist der mit Abstand schlechteste, den ich von dem 
Mann je gesehen habe. Zum Thema äußert er sich nur ganz am Rande und 
dann heißt es im wesentlichen "ist egal, für jedes Problem gibt es 
passende µC von Atmel genauso wie von Microchip". Das hätte man auch in 
10 Sekunden sagen können. Und in der Tat sagt er es auch in 10 Sekunden 
und den Rest des Videos ranted er darüber, daß die "AVR Fanboys" so 
schrecklich ranten würden.

Ich weiß ja nicht was ihm von "AVR Fanboys" schlimmes angetan worden 
ist, aber seine Symptome sind verdammt nahe an "behandlungsbedürftig".

F. Fo schrieb:
> Ich kann nur sagen, wenn ich nicht mit Atmel angefangen hätte und vorher
> mehr gewusst hätte, dann würde ich heute mit PIC's anfangen.

Und warum das? Weil bei den drei großen PIC Familien jeweils was ganz 
anderes drin ist? Oder weil die Toolchain unfrei ist?

von F. F. (foldi)


Lesenswert?

Axel, hier helfe ich nicht mit bei einem neuen Glaubenskrieg.
Schau dir das Video nochmal an!
Ganz im Anfang rät er sich eben nicht auf einen Hersteller oder auf 
einen Controller fest zu legen.
Ich habe noch mehr Gründe, aber das ist meine persönliche Meinung und 
ich möchte nicht der Auslöser für den nächsten Glaubenskrieg sein.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Die Frage ist ein "Honeypot" vergleichbar zum 
Beitrag "Arduino - bringt's das ?"

Ich rufe mal In Erinnerung,
Chantal schrieb:
> Ich suche, eine Plattform, wo ich auf dem Rechner mein Programm
> schreiben kann. Gerne irgendwie Basic oder andere leichte
> Programmiersprache.

Zwischen "C-Control" vom großen "C" und µC-Programmierung mit 
Interrupts, DMA und einer C-IDE mit In-Circuit-Debugger liegen viele 
mögliche Zwischenschritte.

Persönlich empfinde ich das TI MSP430 LaunchPad auch als gute und 
einfache und preiswerte Einstiegsmöglichkeit. Man kommt schnell "tief 
rein" und erreicht aufgrund der vielen Beispiele "out of the box" auch 
schnell Ergebnisse. Natürlich hat der MSP430 auch Nachteile (3,6V, wenig 
RAM), ist aber verglichen zum ARM noch recht überschaubar. Aber das ist 
auch nur eine Meinung von vielen.

Vielleicht ist ein "C-Control" das Richtige?

> Programmierung in Basic, Compact-C und Assembler

Ich denke, es wurde viel gesagt und Chantal sollte sich erstmal melden, 
ob sie (?) mit unserer Hilfe was anfangen kann, bevor diese Debatte zum 
Selbstzweck (Glaubenskrieg) wird.

: Bearbeitet durch User
von vloki (Gast)


Lesenswert?

Chantal schrieb:
> Möchte jetzt wieder einsteigen, aber etwas moderner.
> Ich suche,
> eine Plattform, wo ich auf dem Rechner mein Programm schreiben kann.
> Gerne irgendwie Basic oder andere leichte Programmiersprache.
> Dann das Programm über USB auf eine Platine schieben, in welcher ein
> Prozessor steckt, welchen ich danach nur noch entnehmen muß, um ihn in
> meine Hardware einzusetzen.

Ist vielleicht noch nicht klar geworden, dass man das heute nicht mehr 
so umständlich machen muss. Du programmierst (und debugsd) den Prozessor 
direkt in deiner Hardware
mit einem Tool, dass dich keine 50€ kostet ...
(auch in dem verlinkten Video zu sehen, die zwei kleineren Teile die der 
Typ empfiehlt)

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

vloki schrieb:
> Ist vielleicht noch nicht klar geworden, dass man das heute nicht mehr
> so umständlich machen muss.

Das kann ich nur bestätigen. Ich würde aber dringend empfehlen, nicht 
auf die Arduino-Bibliotheken mit "Serial.print()-Debugging" herein zu 
fallen, denn da macht man sich selbst was vor.

Für weniger Geld gibt es für andere µCs gute IDEs mit vielen Beispielen, 
die genauso schnell zum Ergebnis führen und man landet nicht so leicht 
in einer Sackgasse.

Zur Not gibt's ja noch die Hilfe hier im Forum.

Mist. Doch Glaubenskrieg? Ich hoffe nicht.

: Bearbeitet durch User
von M. M. (mrmcchicken)


Lesenswert?

Also ich habe mit dem allgemein verhassten Arduino Angefangen.
Damit wurden dann einige Schaltungen aufgebaut, was auch recht schnell 
geht. Für die ersten Schritte braucht man nicht viel mehr als einen 
Arduino, eine Steckplatine und eine Hand voll LEDs, Widerständen. Evtl. 
Sensoren (Temperatur, Helligkeit...).
Man kommt wirklich sehr schnell und ohne viel Arbeit zu Ergebnissen.
Für fast alles gibt es Librarys.
Man muss sich keine sonderlichen Gedanken um Fusebits machen oder 
irgendwelche Datenblätter am besten auswendig können.
Mich hat es irgendwann mal interessiert, was alles in so einem AVR 
passiert.
Seit dem beschäftige ich mich mit AVRs allgemein und Assembler 
Programmierung. Es ist faszinierend welche Controller einem für 
unterschiedliche Möglichkeiten bieten und wie man bemerkt, dass einige 
Sachen die man auf mit dem Arduino gemacht hat, sich auch anders, 
kleiner, stromsparender und wesentlich schneller realisieren lassen.
Ohne eine Plattform wie sie ein Arduino sie bietet hätte ich mich sicher 
nicht so schnell, so viel mehr für das Thema interessiert auch wenn ich 
ihn nun fast nicht mehr benutze.

von F. F. (foldi)


Lesenswert?

Ich kann das, wenn man denn Atmel als Plattform nutzen will, nur 
bestätigen. Zum Einstieg ist das schon gut und auch später die Hardware, 
um mal einfach einen Test durchzuführen. Denn es bleibt ein Atmel und 
die Arduinos haben auch ne ISP Schnittstelle.

Ich habe jetzt gerade auch angefangen Assembler zu lernen. :-)

Man muss nur den Absprung schaffen.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Hmmm, geht die Debatte also ohne Chantal weiter:

M. M. schrieb:
> Ohne eine Plattform wie sie ein Arduino sie bietet hätte ich mich sicher
> nicht so schnell, so viel mehr für das Thema interessiert

Ich habe mich ohne Arduino sehr schnell viel mehr für das Thema 
interessiert und bin überzeugt, dass das Einarbeiten mit vielen anderen 
Plattformen nicht komplizierter oder langsamer geht, als mit Arduino. 
Natürlich nicht mit allen. Beispiele nach meinem Eindruck:

MSP430: Super schnell und einfach
STM32:  Langsamer, komplizierter

F. Fo schrieb:
> Denn … die Arduinos haben auch ne ISP Schnittstelle.

ISP ist kein In-Circuit-Debugger! Ohne ICD prüfst Du Dein Programm 
grausam per "Serial.print()" statt mit Breakpoints und dem Auslesen und 
Verändern von Variablen.

Arduino + ICD = Dragon

Man kann zum ausprobieren einen "AVR Dragon" oder eine "C Control" 
kaufen, die kosten beide über 49€!

Aber beides kostet zum "nur mal ausprobieren" vergleichsweise viel Geld, 
falls der "Krempel" am Ende in der Rümpelkiste landet.

Ein "MSP430 Launchpad", ein "STM32 Nucleo", ein "CY8CKIT-049" oder ein 
"XMC 2Go" z.B. bedeuten zum "nur mal ausprobieren" ein deutlich 
geringeres finanzielles Risiko (5€..10€, In-Circuit-Debugger 
inclusive!).

Die teuren Sachen kann man sich immer noch kaufen.

Wir können doch alle nicht wissen, wovon sich Chantal angesprochen 
fühlt. Die Programmiersprache BASIC steht ja auch noch zur Diskussion.

@Chantal: Sag bitte mal was. :-) Oder bist Du ein Fake?

: Bearbeitet durch User
von Chantal (Gast)


Lesenswert?

Hallo,

danke für die vielen Infos.
Nach meiner bescheidenen Analyse hab ich mich jetzt ziemlich sicher auf 
PIC eingeschossen.
Ein Fake bin ich aber nicht.
Hab Anfang der achtziger Jahre schon Programme mit selbst gebauten 
Konvertern über 2m übertragen.
CW-Decodierprogramm bis 150BPM war mein erstes.
Lagerhaltung und Bestellprogramm, statistische Auswertung für autom. 
Bestückung geschrieben usw.
Dann eigene CNC-Anlage gebaut, vom 386 über Max232 in den C128 rein und 
meine Printplatten automatisch gebohrt. Später zum Fräsen erweitert.
GPS-Programm geschrieben, NMEA die Strings ausgewertet und graphisch 
dargestellt.
Danach Pause.
Aber jetzt, kurz vor der Rente, will ich wieder basteln.

Hoffe, Ihr könnt mir da unter die Arme greifen.

Danke nochmal für die Tipps.

von Torsten C. (torsten_c) Benutzerseite


Lesenswert?

Chantal schrieb:
> Danke nochmal für die Tipps.

Damit hört hoffentlich der "Glaubenskrieg" auf. :-)

Chantal schrieb:
> Nach meiner bescheidenen Analyse hab ich mich jetzt ziemlich sicher auf
> PIC eingeschossen.

Ich bin gespannt, welches Entwicklungs-Board Du dabei benutzt. 
Interessante Controller hat Microchip, ohne Frage!

Ich habe für PICs bisher leider kaum passende Hardware gefunden, ohne 
selbst enge SMDs löten zu müssen.

Chantal schrieb:
> Aber jetzt, kurz vor der Rente, will ich wieder basteln.

Das sind bei mir noch 20 Jahre. :-(

von vloki (Gast)


Lesenswert?

Torsten C. schrieb:
> Ich habe für PICs bisher leider kaum passende Hardware gefunden, ohne
> selbst enge SMDs löten zu müssen.

??? PICs gibt es doch von 8 - 32 Bit im DIP Package

von Martin (Gast)


Lesenswert?

Chantal schrieb:
> Aber jetzt, kurz vor der Rente, will ich wieder basteln.

Torsten C. schrieb:
> Das sind bei mir noch 20 Jahre. :-(

Bist du dir da wirklich sicher? ;-)

von Mat (Gast)


Lesenswert?

M. M. schrieb:
> Also ich habe mit dem allgemein verhassten Arduino Angefangen.
> Damit wurden dann einige Schaltungen aufgebaut, was auch recht schnell
> geht. Für die ersten Schritte braucht man nicht viel mehr als einen
> Arduino, eine Steckplatine und eine Hand voll LEDs, Widerständen. Evtl.
> Sensoren (Temperatur, Helligkeit...).
> Man kommt wirklich sehr schnell und ohne viel Arbeit zu Ergebnissen.
> Für fast alles gibt es Librarys.
> Man muss sich keine sonderlichen Gedanken um Fusebits machen oder
> irgendwelche Datenblätter am besten auswendig können.

Und genau das finde ich zum Lernen bedenklich. Es blendet enorm viel 
aus.

Man fängt mit einem Arduino oder Raspy an und hat in einer Std. Arbeit 
ein funktionierendes LCD/Thermometer/Internetradio ohne jedoch annähernd 
zu verstehen was da erstmal dahinter steckt.

Das kann den Blick auf die Komplexität sehr stark verziehen und holt 
einen spätestens dann ein, wenn man sein eigenes Projekt "from scratch" 
starten will.

Diese Klicki-Bibliotheks-Fertig-Lösungen sind für gezielte Anwendung 
sehr gut. Aber zum Erlernen der Materie finde ich sie den falschen Weg.

von vloki (Gast)


Lesenswert?

Chantal schrieb:
> Aber jetzt, kurz vor der Rente, will ich wieder basteln.

Witzig, genau wie der Wilhelm ?
-> Anfänger in C und welcher PIC (evtl. uno32) ist geeignet ?

Falls du dir auch ein PICKIT3 Starter kaufen solltest, müssen wir wohl 
eine kleine Einstiegsanleitung schreiben ;-)

von Volker S. (vloki)


Lesenswert?

vloki schrieb:
> Witzig, genau wie der Wilhelm ?
> -> Anfänger in C und welcher PIC (evtl. uno32) ist geeignet ?
Beitrag "Anfänger in C und welcher PIC (evtl. uno32) ist geeignet ?"


vloki schrieb:
> Falls du dir auch ein PICKIT3 Starter kaufen solltest, müssen wir wohl
> eine kleine Einstiegsanleitung schreiben ;-)
http://de.farnell.com/microchip/dv164130/dev-board-pic16-18f-pickit-3/dp/2392506

von Hubert G. (hubertg)


Lesenswert?

Wenn man komplett neu anfängt ist es sehr oft hilfreich sich auch in 
seiner unmittelbaren Umgebung umzusehen.
Ein direktes Gespräch und Hilfeleistung ist zumeist wertvoller als ein 
gutes Forum.
Ich habe es schon einige male erlebt das sich mehr oder weniger gut 
Bekannte sich "den µC" und "die Entwicklungsumgebung" besorgt haben, da 
sie um vieles besser und leistungsfähiger als vorhandenes sind und es 
ein ganz tolles Forum gibt.
Nach kurzer Zeit war das ganze aus Frust weggeräumt, das Forum hat sich 
als doch nicht so informativ erwiesen und im Bekanntenkreis konnte 
niemand helfen.
Wie gut der µC dann wirklich ist stellt sich erst heraus wenn man sich 
eingearbeitet hat und feststellt wo die Grenzen sind. Wenn aber die 
Starthürden zu groß sind kommt man nie so weit.

von Volker S. (vloki)


Lesenswert?

Hubert G. schrieb:
> Wenn man komplett neu anfängt ist es sehr oft hilfreich sich auch in
> seiner unmittelbaren Umgebung umzusehen.
> Ein direktes Gespräch und Hilfeleistung ist zumeist wertvoller als ein
> gutes Forum.

Absolut richtig !!!

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.