Frage:
Möchten Sie EE-Kenntnisse anwenden - welchen Mikroprozessor würden Sie empfehlen?
O_O
2011-03-30 02:07:12 UTC
view on stackexchange narkive permalink

Hier ist meine Geschichte: Ich habe meinen Abschluss in Elektrotechnik gemacht, aber ich habe nicht viel Erfahrung mit Schaltkreisen (OMG, richtig? O_O). Der größte Teil meiner Ausbildung befasste sich mit Kommunikationstheorie, daher fühle ich mich wirklich unvollständig und möchte mein Wissen irgendwo anwenden und anfangen, etwas auf einem Mikroprozessor zu machen. Es wäre auch eine gute Fähigkeit, sich für die Belegschaft zu entwickeln. Haben Sie Empfehlungen, mit welchem ​​Mikroprozessortyp ich arbeiten soll? PIC? Arduino? Andere? Was wird am meisten auf dem Markt und für Produktionszwecke verwendet? Ist das wichtig? Ich höre, dass Arduino eine sehr gute Community für Hilfe hat, aber ich höre, dass es mehr für "Hobbyisten" ist? Ist das unbedingt eine schlechte Sache? Jeder Einblick wird sehr geschätzt. Danke !!

PICs sind Mikrocontroller. Hier ist eine gute [Frage] (http://electronics.stackexchange.com/questions/1092/whats-the-difference-between-a-microcontroller-and-a-microprocessor), die den Unterschied zwischen den beiden zeigt.
Ich denke, Arduino geht es gut. Später können Sie von der Arduino-Softwareumgebung auf den nackten AVR und einen C-Compiler umsteigen, wie Mikrocontroller in der Industrie verwendet werden.
Elf antworten:
user3624
2011-03-30 02:30:58 UTC
view on stackexchange narkive permalink

Hey, tolles Timing! Diese Woche habe ich E.E.-Studenten für eine Praktikumsstelle interviewt. Folgendes kann ich mit 100% iger Sicherheit sagen: Schüler der großen Schulen, selbst Junioren, die an ihren Junggesellen arbeiten, haben fast NULL nützliches Wissen. Ein Mann, den ich interviewt habe, konnte den Wert für einen Strombegrenzungswiderstand für eine LED nicht berechnen. Ja, das ist es, was 30.000 US-Dollar pro Jahr für eine Ausbildung bringen. Der Punkt ist, jede praktische Erfahrung oder jedes Wissen, das Sie haben, wird Sie über Ihre Klassenkameraden stellen, wenn es darum geht, einen Job zu finden! Im Ernst, es ist so schlimm da draußen.

Okay, weiter zu Ihrer Frage. Aus Sicht des Arbeitgebers spielt es keine Rolle, welche uC Sie verwenden. Die Chancen stehen gut, dass alles, was Sie wählen, falsch ist. Was wichtiger ist, ist die Erfahrung und das Wissen, die Sie für die meisten uCs sammeln. Bleiben Sie jedoch bei den üblichen.

Die Microchip-PICs sind meine am wenigsten bevorzugten. Die Hardware ist in Ordnung, aber das Schreiben von Software für sie ist ein großer Schmerz für Sie. Ich habe sie in der Vergangenheit benutzt und nie wieder. Ich habe auch den Cypress pSoC 1 verwendet. Anfangs war es schön, aber die Software ist fehlerhaft und die Dokumentation fehlt sehr. Ein aktuelles Projekt von mir verwendet einen MSP430, aber es ist noch zu früh, um sagen zu können, wie gut es funktioniert. Die auf TI ARM basierenden uCs sind ebenfalls nett, könnten aber in diesem frühen Stadium zu viel für Sie sein.

Frage: Würden Sie auch CS-Studenten in Betracht ziehen, wenn sie etwas Wissen mit eingebetteten Systemen angewendet hätten (Aka arbeitete mit Schaltkreisen / Low Level C, Assembly / und hätte mit Mikrocontrollern und dergleichen gearbeitet?
In diesem Fall suchen wir jemanden mit entsprechenden Kenntnissen oder Erfahrungen (Micro's, C / Asm, VHDL, Löten usw.). Es spielt keine Rolle, ob sie CS, EE sind oder an einem Programm für freie Künste arbeiten.
Hey, ich * weiß *, wie man den Strombegrenzungswiderstand einer LED berechnet! Wohin sende ich meinen Lebenslauf?
Ich sage den Leuten, dass das College Ihnen einen neuen Werkzeugkasten mit glänzenden neuen Werkzeugen gibt und Ihnen die Namen der Werkzeuge beibringt. Es ist Ihr erster richtiger Job, bei dem Sie herausfinden, welche Tools Sie wirklich benötigen und welche nicht und wie Sie sie wirklich verwenden können ... sowie alle Tools, die Sie in der Schule noch nie gelernt haben.
old_timer
2011-03-30 08:28:53 UTC
view on stackexchange narkive permalink

Der msp430 hat einen sehr schönen Befehlssatz. Und Sie können derzeit ein msp430-Board für etwa fünf Dollar zum Spielen bekommen. ARM dominiert die Prozessorwelt, niemand ist in der Nähe, fast alles, was Sie verwenden, ist armbasiert. Auch ein guter Befehlssatz, viele Variationen gibt es für unter 50 Dollar, goto sparkfun. Der Befehlssatz für reduzierte Arme heißt Daumen, und der erweiterte Befehlssatz für Daumen heißt Daumen2, und es gibt jetzt einen Kern, der nur Daumen2 enthält (jeder Daumenbefehl wird eins zu eins mit Armbefehlen zugeordnet, sodass es einfach war, den Armbefehl einfach in den Befehl einzufügen Pipe, als eine Daumenanweisung gefunden wurde, aber thumb2 änderte, dass sie einen neuen Kern machten). ST, den ich mehr mag als LPC und vielleicht die anderen armbasierten Mikros, hat jetzt ein Value Line Discovery Board für ungefähr 12 Dollar (Sie wollen die 12-Dollar-Stm32s, nicht die 7-Dollar-Stm8s oder was auch immer das ein völlig anderer Prozessor ist, hat eine 6502 Gefühl, ich habe die falschen gekauft, aber noch nicht damit gespielt). Der PIC-Befehlssatz, der alte / echte (nicht der Mips PIC32), ist sehr lehrreich und eigentlich elegant, aber für Compiler schrecklich. Er wird niemals msp430 oder Arm aus dieser Perspektive berühren. Mikrochip und Bild war der Atmel AVR (Schmetterling und jetzt Arduino) seiner Zeit, aber er "versteht" es einfach nicht wirklich. Atmel "bekommt es" und ihre Kunden sind sehr glücklich und sehr treu. Ich mag meine sam7 Armbretter ziemlich gern. Der AVR-Befehlssatz ist schrecklich, aber das hat ihn nicht davon abgehalten, bei Hobbyisten wahnsinnig beliebt zu sein. Kommt darauf an, ob du programmieren lernen willst oder dich nicht darum kümmern musst. Wenn Sie nicht viel programmieren möchten, ist das Arduino wahrscheinlich Ihre erste Wahl. Wenn Sie in die Programmierung einsteigen möchten, habe ich ein paar Emulatoren bei github, einen Thumbulator, einen Thumb-Emulator und einen msp430. Sie können ein Gefühl dafür bekommen, was los ist.

Meine Empfehlung ist, ein paar zu bekommen, viele verschiedene sind für unter 50 Dollar erhältlich. sparkfun.com für viele von ihnen, direkt von TI für das Ezusb (das 5-Dollar-Launchpad ist billiger, aber das Ezusb hat zusätzliche Boards, 3 für 10 US-Dollar). Auch direkt von TI (oder müssen Sie zu Digikey / Mouser gehen?) Die Stellaris-Boards, die so voll sind, dass Sie nicht wirklich an die E / A gelangen können, ohne Spuren zu schneiden. Gleichzeitig gibt es viele Datenblätter zum Lesen und Verstehen sowie viel mehr Schaltpläne zum Lesen und Verstehen. Die stellaris Boards sind eher in der Sub-100-Dollar-Kategorie. Der 811 ist super einfach zu mauern, seien Sie vorsichtig.

knjn.com hat einige erschwingliche Fpga-Boards, Pluto, denke ich. Ich denke, alles, was Sie dafür brauchen, nachdem die Hardware frei ist (von xilinx oder altera). Irgendwann hatte altera eine Modelsim-Version, aber ich bevorzuge Verilator und Icarus Verilog. Ich würde gerne mehr Zeit mit ghdl verbringen, aber ich weiß nicht genug, um es an einen C-Prüfstand anzuschließen. Mit Verilator ist es etwas trivial, mit C einen Prüfstand zu erstellen, mit dem Sie Code / Treiber schreiben können, die später mit der Hardware kommunizieren oder auf der Hardware ausgeführt werden können, je nachdem, was Sie machen. Auch hier wird davon ausgegangen, dass Sie Programmierinteresse haben ... Ich bin ein großer Fan von cyclicity-cdl.sf.net, einer Hardware-Design-Sprache, die meiner Meinung nach richtig gemacht wurde. Es hat auch eine eigene, kostenlose Simulationsumgebung. Grundsätzlich können Sie Logikentwürfe für etwa 50 US-Dollar erstellen, unabhängig von den Kosten für das Board. Oder wenn Sie die Hardware nicht kaufen möchten, können Sie mit allen kostenlosen Tools unzählige Designs erstellen. gtkwave ist dein Freund, wenn es darum geht, die VCD-Wellenformen zu betrachten. Selbst mit Modelsim erstelle ich jetzt einfach eine VCD und verwende den Viewer von gtkwave.

Ich fand Dinge wie das Dekodieren von IR-Fernbedienungen mit einem IR-Empfänger (Radio Shack hatte sie früher, jetzt Digikey oder Mouser oder Sparkfun), Bit-Banging von Rs232, i2c, SPI, Dallas, einem Draht (Dallas Semi ist jetzt Maxime). x10 usw., wenn es einen Hobby- / Hacker-Bereich gibt, in dem Sie abhängen und löten und ein Oszilloskop verwenden können, das wirklich nützlich wäre. Es ist sehr nützlich zu lernen, Protokolle wie diese zu lesen und Ihre Logik / Software mit einem Bereich zu debuggen (verwenden Sie nicht das Softwarepaket, mit dem der Bereich es für Sie dekodieren kann, sondern lernen Sie es auf die altmodische Weise).

Das Programmieren der verschiedenen Peripheriegeräte in den verschiedenen Mikrocontrollern (Timer, PWMs usw.) ist sehr lehrreich. lcd- und oled-Displays usw. (stellaris oder arduino sind dafür gut geeignet).

das mbed ist keine schlechte Plattform außer den schmerzhaften blauen LEDs.

Gitter hat die Brevia für nicht viel Geld und das mico8, von dem ich glaube, dass es dort hineinpasst und in Quellform ist, damit Sie es simulieren können. Die Gitterwerkzeuge sind nicht so schlecht wie die anderen. Sie können also einen kleinen Mikrocontroller, Logik und Elektronik kaufen, wenn Sie danach suchen.

Das Hauptproblem bei Arduino und den ST-Primern lxpresso und einigen anderen ist der starke Wunsch, Sie in ihrer Sandbox zu halten. Der Arduino ist einfach zu löschen und neu zu programmieren und übernimmt das Board und verlässt den Sandkasten, die anderen beiden nicht. kauf sie nicht. Wo dies helfen oder schaden kann, was Sie versuchen, ist das, indem Sie all das "harte" Zeug in ein Paket oder eine API einwickeln oder was auch immer es im Grunde vor Ihnen verbirgt. Und wenn Sie daran interessiert sind, dieses Protokoll (spi, i2c usw.) zu lernen oder die Signale auf einem LCD zu wackeln, damit es funktioniert, oder einen Motor auf einfache oder harte Weise zu pwm. Möglicherweise möchten Sie nicht an den Sandkasten gebunden sein. Gleichzeitig mit der Arduino-Sandbox müssen Sie sich nicht zu sehr mit der Programmierseite befassen und können mehr Zeit damit verbringen, die Elektronik mit der Platine zu verbinden und diese Schaltkreise zu debuggen oder damit zu spielen, ohne sich um das Arduino selbst kümmern zu müssen.

Es gibt Orte, an denen 2 oder 3 Leiterplatten für etwa 50 US-Dollar verkauft werden. Ich denke, es handelt sich um eine Layout-Software, die Sie kostenlos herunterladen und verwenden können. Es lohnt sich wahrscheinlich, einige Layouts herunterzuladen und zu versuchen, selbst wenn Sie nicht bereit sind, Boards zu kaufen oder eine Idee für etwas zu haben, das Sie bauen möchten.

Zugegeben, Sie haben möglicherweise noch ein College-Budget, und ich verstehe das, aber ich würde sagen, versuchen Sie so viele dieser verschiedenen Plattformen, wie Sie in die Hände bekommen können. Sie haben momentan wahrscheinlich mehr Zeit als Geld, sodass Sie sich sicher für kostenlose Software entscheiden können, die einen Großteil dieser Dinge simuliert. Außerdem können Sie die Datenblätter und Schaltpläne sowie Software- und Hardwaretools für die verschiedenen Boards recherchieren, bevor Sie zum Kauf den Auslöser drücken.

Die eigentliche Ausbildung, die Sie hier kennen müssen, ist das Lesen von Datenblättern und Schaltplänen. Und Sie möchten nicht nur Datenblätter von einem Anbieter lesen, einige sind gut, andere schrecklich, und in der realen Welt mit einem echten Job in diesem Bereich müssen Sie sich mit dem Guten und dem Schlechten auseinandersetzen. Die anderen Fähigkeiten sind Löten und Verwenden des Oszilloskops, Löten, das Sie sich leisten können (ein gutes Bügeleisen, wahrscheinlich noch nicht), ein Zielfernrohr, wie Sie es bei einem Job wirklich verwenden würden, nicht erschwinglich. Wenn Sie diesen ersten Job bekommen, nehmen Sie sich so viel Zeit wie möglich. Beobachten Sie, wie andere Ingenieure es verwenden, da sie alle ihre eigene Art haben, durch die Menüs und Funktionen zu navigieren. Das Debuggen ist entscheidend für Ihre Karriere. Wenn Sie sich der Logik zuwenden, sollten Sie einige Stunden mit den Xilinx- und Altera-Tools sowie den anderen, die ich erwähnt habe, verbringen und sich mit Wellenformen auf Modelsim oder GTKWave vertraut machen. Die Pay-for-Tools sind alle schrecklich, wegen der schlechtesten Software, die man sich vorstellen kann, und kosten aus irgendeinem Grund Zehntausende. (und die Software wird jedes Jahr / jede Version schlechter). Aber dieser Schmerz ist der Schlüssel zu diesem Karriereweg, "kennen Sie Ihre Werkzeuge".

Es tut mir leid, aber: TL; DR.
Kellenjb
2011-03-30 02:18:59 UTC
view on stackexchange narkive permalink

Jeder Mikrocontroller hat seinen Bereich, in dem er wirklich gut gedeihen kann. Zum Beispiel ist der MSP430 sehr gut für geringen Stromverbrauch geeignet. Wenn Sie sich wirklich auf die gesamte Branche vorbereiten möchten, müssen Sie alles lernen, was Sie in die Hände bekommen können. Wenn Sie also auf eine Situation stoßen, auf die Sie stoßen, kennen Sie den besten Mikrocontroller.

Ardunios sind Sie sind keine Mikrocontroller, sondern im Wesentlichen ein Entwicklungsboard, das auf Atmel AVR als Mikrocontroller basiert. Ardunios sind sehr hobbyorientiert, was für den Anfang nicht schlecht ist, aber Sie müssen mehr über den Atmel erfahren, der verwendet wird, wenn Sie in der Industrie etwas damit anfangen möchten.

Wenn Sie eine bestimmte Aufgabe haben, die Sie angehen möchten, erstellen Sie eine neue Frage, in der angegeben ist, was Sie tun möchten. Wir können Ihnen dabei helfen, festzustellen, wonach Sie im besten Mikrocontroller suchen müssen.
+1 für Atmel AVR. Sie werden an vielen Universitäten für den Unterricht verwendet.
@Polemon und so sind PICs und MSP430s.
@Kellenjb Ich weiß nichts über PICs und MSP430s an Universitäten. Meins verwendete Atmel-AVRs ohne Prototyping-Board, nur Breadboards. Ich benutze MSP430 zu Hause, um damit herumzuspielen. Ich habe allerdings nie PICs verwendet.
@Polemon Ich sage, sie werden verwendet. Ich habe an einer Universität unterrichtet, deren Kern PICs waren, und an Schulungsmaterial für MSP430 gearbeitet
@Kellenjb: ¯ \\ (° _o) / ¯
@polemon - Ausgezeichneter Kommentar. Muss mich daran erinnern.
some.hacker
2011-03-30 02:29:25 UTC
view on stackexchange narkive permalink

Ich habe auf Atmel, PIT, Mikrochip und TI programmiert und ich persönlich mag die IDE von TI am besten. Sie haben große Anstrengungen unternommen, um ihre Mikrocontroller so einfach wie möglich zu gestalten. Ganz zu schweigen von der Dokumentation und den Tutorials, die weit überdurchschnittlich sind. Versuchen Sie, ein MSP430-Entwicklungskit zu erwerben. Es handelt sich um einen Mikrocontroller mit ausreichend Speicher und Rechenleistung, Mehrkanal-A / D- und D / A-Wandlern und sogar einem integrierten 2,4-GHz-Transceiver zum Experimentieren mit drahtlosen Netzwerken. Das Entwicklungskit enthält 2 MSP430-Module, einen USB-Programmierer und einen Akku und kostet weniger als 100 US-Dollar.

Ich muss das untersuchen!
Toby Jaffey
2011-03-30 02:31:18 UTC
view on stackexchange narkive permalink

Sie sollten den richtigen Mikrocontroller / Mikroprozessor für die jeweilige Aufgabe verwenden.

Wählen Sie ein Projekt und dann Ihren Prozessor aus.

Leon Heller
2011-03-30 02:20:04 UTC
view on stackexchange narkive permalink

Microchip ist Marktführer bei 8-Bit-MCUs, sodass Sie nichts falsch machen können, wenn Sie etwas darüber lernen. ARM Cortex-Geräte ersetzen in vielen Anwendungen 16-Bit- und 8-Bit-Geräte. Daher ist auch eine Vertrautheit mit ihnen hilfreich.

russ_hensel
2011-03-30 21:02:55 UTC
view on stackexchange narkive permalink

Ich würde stark argumentieren, dass Sie Ihre Erfahrung in C beginnen sollten, nicht in Assembler. Es hat viele Vorteile, unter anderem, dass es viel einfacher ist, Ihre Erfahrung auf einen neuen Prozessor zu übertragen. Wenn Sie sich für Assembler entscheiden, sollten Sie einen guten Grund haben, die zusätzlichen Schmerzen in Kauf zu nehmen (in einigen Fällen kann dies sinnvoll sein).

Wenn nicht, sollten Sie in der Lage sein, kostenlose Softwaretools zum Starten in die Hände zu bekommen Wechseln Sie zu einem anderen Prozessor. Es ist schwer zu erkennen, wie Sie mit einem Arduino etwas falsch machen und diese Erfahrung nutzen können, um andere Umgebungen zu berücksichtigen.

terrace
2011-03-30 21:51:30 UTC
view on stackexchange narkive permalink

Ich würde empfehlen, mit Arduino zu beginnen, einige Projekte durchzuführen und sich dann selbst beizubringen, wie man den AVR ATMega programmiert. Die beiden Gründe für die Verwendung von AVR sind:

  1. riesiges Online-Support-Netzwerk zwischen AVR Freaks, Arduino-Foren, SparkFun-Foren und Adafruit-Foren
  2. Kostenlose Open-Source-Toolkette (im Gegensatz zu PIC AFAIK)
  3. ol>

    Ein gutes Gerät ist der Bus-Pirat, der als ISP-Programmierer für AVR-Chips arbeitet und viele andere Dinge erledigt: http://dangerousprototypes.com / bus-pirate-manual /

    Ein großartiges erstes Projekt ist der Bau eines LED-Arrays. Beginnen Sie mit einem Arduino-Prototyp und wiederholen Sie ihn mit einem AVR ATtiny-Chip (zahlreiche Tutorials verfügbar).

Phil Frost
2013-01-10 01:19:36 UTC
view on stackexchange narkive permalink

Wenn Sie etwas möchten, das von kostenlosen (wie in Freiheit) Tools gut unterstützt wird, ist die AVR-Linie von Atmel wahrscheinlich der richtige Weg. Eine funktionierende Entwicklungsumgebung ist in jeder wichtigen Linux-Distribution enthalten, Mac OS-Pakete sind leicht verfügbar, und ich wette, Windows-Pakete auch.

Ich würde empfehlen, dass Sie sich von Arduino fernhalten. Diese Plattform richtet sich an Amateur-Computerprogrammierer, die LEDs zum Blinken bringen möchten, und nicht an angehende Ingenieure. Die Softwarebibliotheken und Entwicklungstools schützen Sie vor dem Erlernen von Informationen (außer möglicherweise, wie eine JVM unter Linux funktioniert ... viel Spaß!) Und bringen Ihnen wahrscheinlich einige schlechte Gewohnheiten bei. Es ist auch sehr teuer. Es ist kaum mehr als ein AVR mit der Referenzschaltung im Datenblatt, einem fest angeschlossenen USB-Programmierer und zwei Headern für "Shield" -Module, die aus irgendeinem Grund nicht in einem Abstand von 100 mil montiert sind, sodass Sie keine Verbindung herstellen können es zu einem Steckbrett. Natürlich gibt es einen Steckbrettschild, den Sie kaufen können und der teuer ist. Holen Sie sich einen wiederverwendbaren USB-AVR-Programmierer zum Preis eines Arduino und kaufen Sie stattdessen einen ATMega im Wert von 1 USD.

Johan
2011-03-30 02:23:10 UTC
view on stackexchange narkive permalink

Wählen Sie einen gemeinsamen Mikrocontroller aus und verwenden Sie ihn für ein Projekt.

In diesem Forum gibt es viel zu diesem Thema. Ich würde die avr: s empfehlen.

  • pic
  • avr
  • Arm
John U
2013-01-09 23:01:33 UTC
view on stackexchange narkive permalink

Wenn Sie etwas kommerziell Nützliches lernen möchten, würde ich mich nicht mit Arduino oder sogar PIC beschäftigen (obwohl PIC für einfache Jobs in kommerziellen Geräten auftaucht). Die Welt läuft heutzutage auf ARM, von Ihrer TV-Fernbedienung bis zu Ihrem Smartphone.

Was auch immer Sie tun, ich würde mit etwas beginnen, das Sie in C codieren können - ja, es gibt andere Sprachen, aber C ist immer noch allgemein beliebt. & wird Ihnen zugute kommen.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 2.0-Lizenz, unter der er vertrieben wird.
Loading...