Hallo zusammen Ich bin völliger Neuling im Bereicht der Mikrocontroller. Gerne würde ich beginnen, das nötige Wissen mit einfachen Schaltungen/Programmen aufzubauen. Welche Plattform soll ich zuerst in Angriff nehmen? Arduino oder Raspberry Pi? Oder gibt es Alternativen? Vielen Dank für eure Antworten
Erst mal überlegen, was du machen willst. Deine Frage hat in etwa die Dimension: Ferrari oder Bulli? Beides bringt dich von A nach B, hat vier Räder, 'nen Motor ... aber ganz unterschiedliche Einsatzzwecke. Wenn du µC programmieren willst, fliegt der Pi raus. Der ist eher ein Mini-Linux-Rechner, der Dank GPIOs auch mit Sensoren / ... kommunizieren kann - den programmierst du jedoch nicht wie einen µC, sondern frickelst in der Regel Python-Skripte.
Hallo Basti, da stimm ich Dirk voll und ganz zu. So wie es sich anhört willst du dich mit µC befassen. Ich persönlich kann dir Arduino empfehlen. Damit habe ich auch angefangen und arbeite schon einige Jahre damit. Gruß Alex
Beim Arduino arbeitest du quasi auf Hardware- bzw. Prozessor-Ebene, wenn auch durch die IDE und die vielen Libs leidlich abstrahiert. Du kannst aber jederzeit sogar Assembler-Code in deinem Programm einbauen bzw. wahrlich an jedem einzelnen Bit "drehen". Beim Pi hast du es mit einem richtigen Betriebssystem zu tun, dass dir zwar einerseits vieles abnimmt (z.B. Dateizugriffe, die man beim Arduino quasi auf Bitebene "zu Fuß" programmieren muss), andererseits auch Stress bereitet, z.B. durch Rechte- und Geschwindigkeitsprobleme beim Zugriff auf die Hardware durch das System "hindurch". Musst du abschätzen, was für dich wichiger ist ...
:
Bearbeitet durch User
Beim Arduino bist du nicht an die Arduino-IDE gebunden. Da ist ein AVR drauf, ATmega328 oder ATmega2560 bei den meisten. Da geht auch Assembler, C, BASCOM und was es sonst noch alles gibt.
Smile, immer wieder die Diskussion ... Arduino, RaspBerry Pi ... nackter Controller. Ich war anfangs immer gegen die Arduino (weil die "Java-Oberfläche" von Arduino wirklich nicht meines ist). Aaaaaaber: Mittlerweile gibt es derart preiswerte Arduino-Boards (vorzugsweise aus China) die ein billiges Einsteigen ermöglicht. Prinzipiell habe ich sogar meine eigene Arduino-Platine für die Ausbildung geroutet, das Lehrlinge selbst zusammenlöten. Programmiert wird dieses allerdings definitiv OHNE die Arduino-Oberfläche sondern schön zu Fuß in C (und das ganze sogar schön zu Fuß OHNE Atmel Studio, sondern mit schlichtem Texteditor und aufrufen des Compilers und Linkers auf Konsolenebene. Der "Vorteil" des Arduinoboards besteht dann schlicht darin, dass es keinen ISP-Programmer benötigt sondern die Programme mittels Bootloader übertragen werden können. Jörg Wünsch sei für das geniale Avrdude gedankt, dass auch ein avrdude -c arduino -p m328p -P com4 -b 115200 -U flash:w:meinprog.hex funktioniert und somit ein Arduinoboard als "normales" Entwicklungsboard für AVR-Controller verwendet werden kann. Besorg dir ein billiges Arduino - Uno Board (allerdings bitte MIT USB-Anschluss - in China gibts genügend ohne - ) und beginne damit "rumzuspielen" Gruß, Ralph
Arduino ist gut, Raspberry Pi ist gut und es gibt Alternativen. Anstatt hier den tausendsten Endlos-Thread zu starten, wo die Leute die Vorteile ihrer bevorzugten Plattform breit treten, sei bitte so freundlich und erzähle uns, was du damit konkret machen willst. Dann können wir Dir eine sinnvolle Empfehlung aussprechen. "einfache Schaltungen aufbauen" ist keine konkrete Anwendung. Konkret wäre zum Beispiel: - Ich möchte eine LED blinken lassen. - Ich möchte meine Kaffeemaschine mit dem Handy übers Internet fernsteuern. - Ich möchte einen Summer bauen, der ein ganz spezielle Geräusch abgibt. - Ich möchte die Türklinke meines Kinderzimmers unter Strom setzen. Nenne derart konkrete Anwendungen, dann kommen wir sinnvoll weiter.
Basti schrieb: > das nötige Wissen mit einfachen Schaltungen/Programmen > aufzubauen. Dann ist Arduino nicht schlecht, wenn du dich zu Beginn nicht . "Mehr als nötig2 mit den "Hintergründen2 befassen willst. Ich schlage vollgende Reienfolge vor: Arduino--> "bare Metal C Controller" --> Pi (oder anderes embedded Linux) Warum: Arduino für den Einstieg in Hardwarenahe Projekte "Standard C" -> für erweiteres Lernen PI: Drauf aufbauend zur Einarbeitung in embedded Linux und die Verknüpfung mit dem erlernten. Vielleicht stellst du fest, das es für deine Projekte nicht zwingend : A ODER B heißen muss, sondern A UND B heißen kann.
Allerdings schätze ich, dass man beim Raspberry Pi nicht viel neues lernen kann. Es ist doch nur ein abgespeckter Linux Computer. Da kann ich zum Lernen gleich ein normales Linux auf meinen Laptop installieren, oder als Virtuelle Maschine laufen lassen.
Stefan U. schrieb: > Allerdings schätze ich, dass man beim Raspberry Pi nicht viel neues > lernen kann. ? Linux sowieso, PI Besonderheit im speziellen und GPIO Nicht alle Pakete für Linux findet man für den PI passend, sowiso nicht alle Kernel, die echten Profis mögen ja noch selber kompilieren so sie Zugang zu Crosscompiler haben.
Dirk K. schrieb: > Wenn du µC programmieren willst, fliegt der Pi raus > den programmierst du jedoch nicht wie einen µC, sondern frickelst > in der Regel Python-Skripte. Der ARM11 im Pi kann genau wie jeder ARM µC direkt in ASM oder C programmiert werden - ohne dass ein Betriebssystem läuft. Und es gibt auch ein BASIC ähnlich BASCOM mit direktem GPIO Zugriff. http://www.valvers.com/open-software/raspberry-pi/step01-bare-metal-programming-in-cpt1/ https://www.riscosopen.org/content/sales/risc-os-pico
Lothar schrieb: > Der ARM11 im Pi kann genau wie jeder ARM µC direkt in ASM oder C > programmiert werden - ohne dass ein Betriebssystem läuft. Wie sinnvoll das ist kommt auf den Einzelfall an. Der PI hat, so weit ich weiß, im Vergleich zum Arduino keinen ADC, verbraucht mehr Strom usw.. Es bleibt die Frage, was der TO machen möchte.
Lothar schrieb: > Dirk K. schrieb: >> Wenn du µC programmieren willst, fliegt der Pi raus >> den programmierst du jedoch nicht wie einen µC, sondern frickelst >> in der Regel Python-Skripte. > > Der ARM11 im Pi kann genau wie jeder ARM µC direkt in ASM oder C > programmiert werden - ohne dass ein Betriebssystem läuft. Kann man. Macht nur meiner Beobachtung nach kaum jemand. Die meisten pfriemlen (nicht negativ gemeint) ihre Sachen mit anderen Sprachen als ASM oder C zusammen. Und da das Ratz fatz geht und der Pi schnell genug ist, spielt das auch keine grosse Rolle ob du oder ich das technisch elegant finden. Fakt ist: zb. ein Web Radio kann ich nicht in 30 Minuten aus der Taufe heben. Mit einem Pi und etwas HTML/PHP/Phython Gefrickel kann aber jeder in ein paar Minuten die ersten Sender spielen lassen.
Karl schrieb: > Der PI hat, so weit ich weiß, im Vergleich zum Arduino keinen ADC Stimmt, aber I2C und SPI ist (mehrfach) vorhanden, und meist braucht man im Projekt ohnehin einen besseren ext. ADC (höhere Auflösung, schneller, direkt für PT100)
PI Lothar schrieb: > Stimmt, aber I2C und SPI ist (mehrfach) vorhanden, fehlt da nicht real time? mit einem Atmel weiss ich wann der zugreift und welches jitter mich evtl. erwartet. Der PI ist an den GPIO ein Sensibelchen, sind schon genug gestorben weil GPIO irgendwie mit Port am AVR gleichgesetzt wird.
:
Bearbeitet durch User
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.