Frage:
Arduino vs Standalone-Mikrocontroller-Programmierung
user16307
2012-04-10 04:51:26 UTC
view on stackexchange narkive permalink

Arduino ist großartig zu programmieren und zu verwenden. Wenn ich jedoch einen eigenständigen Mikrocontroller herstellen muss (z. B. bei der Herstellung eines Geräts), muss ich wahrscheinlich die PIC-Programmierung, die C-Sprache, das Programmierkit usw. kennen.

1) Arduino verwendet kein C.

2) Mit der Arduino-Karte kann ich keine PIC-Mikrocontroller programmieren.

Meine Frage ist, wenn ich ein Gerät herstelle und Arduino nicht für das Endziel verwenden kann, bedeutet dies, dass ich es auch tue Müssen Sie PIC-Programmierung und viele andere Aspekte lernen? Ist Arduino nur zum Testen Ihrer Ideen gedacht, anstatt sie für den eigenständigen Gebrauch zu implementieren?

Sie scheinen zu denken, dass _PIC-Programmierung_ das Programmieren eines Mikrocontrollers bedeutet, der integriert ist. [PIC] (http://en.wikipedia.org/wiki/PIC_microcontroller) ist eine Familie von Mikrocontrollern von ** Microchip **. Arduino-Boards basieren auf den [AVR-Mikrocontrollern] (http://en.wikipedia.org/wiki/Atmel_AVR) von ** Atmel **.
Übrigens, wenn Sie schon dabei sind, warum nicht anfangen, einige Antworten zu akzeptieren? Es werden mehrere Fragen mit 2 oder mehr Antworten gestellt, aber keine davon wurde akzeptiert.
@m.Alin: Eigentlich bedeutet * PIC-Programmierung * die Programmierung eines Mikrocontrollers. Alle PICs sind Mikrocontroller, obwohl es andere Mikrocontroller gibt, die keine PICs sind.
@OlinLathrop Du hast recht; Ich hätte sagen sollen "Programmieren eines Mikrocontrollers"
Icarus74 unterstützen. Beachten Sie die Anzahl und Qualität der Antworten auf die Fragen, die Sie gestellt haben? Die Leute investieren Zeit und Mühe für Sie. Das Akzeptieren einer besten Antwort ist eine der wichtigen Möglichkeiten, wie wir auf dieser Website "Danke" sagen.
@m.Alin Eigentlich werden AVRs heutzutage auch von Microchip hergestellt.
Sieben antworten:
JRobert
2012-04-10 05:29:16 UTC
view on stackexchange narkive permalink

Sie können einen AVR-Mikrocontroller in Ihrem Produkt verwenden, um den von Ihnen entwickelten Code auf einem Arduino-Entwicklungsboard auszuführen.

Der Arduino ist eine gute Entwicklungs- und Prototyping-Plattform, da er mit vielen gebrauchsfertigen Hardware-Einrichtungen ausgestattet ist. Dies macht ihn jedoch für ein Produkt zu teuer. Sie können denselben oder einen ähnlichen Mikrocontroller-Chip in Ihrem Produkt verwenden, ohne dass das gesamte Arduino-Board um ihn herum vorhanden ist.

Auf dieser Seite der Arduino-Website wird beschrieben, wie Bringen Sie einen nackten AVR-Controller-Chip und einen Kristall an die Brotplatte und laden Sie Ihr Arduino-Programm hinein.

Stefan Paul Noack
2012-04-10 14:51:09 UTC
view on stackexchange narkive permalink

Die tatsächlichen Hardware-Peripheriegeräte, die für die Herstellung eines Arduino benötigt werden, sind recht gering. Sie können sogar direkt auf den Chip gelötet werden, wenn Sie:

One Chip Arduino

Der eigentliche Unterschied liegt in der Software. Wenn Sie direkt in C oder sogar in Assembly programmieren, können Sie eine bessere Leistung auf weniger Programmplatz erzielen, wodurch Sie einen kleineren AVR in der Produktion verwenden können.

Das ist großartig! Ich frage mich, ob man einen SMIC-8 an einen SOIC-8 anlöten und SMT programmieren kann :)
@abdullahkahraman: meinst du .. zwei Chips übereinander?
Nein, SMT-Komponenten auf einem SMT-AVR. Stellen Sie sich alle diese Komponenten in der obigen Abbildung SMDs vor.
Nun, wahrscheinlich. Das Single-Chip-Arduino soll jedoch Platz auf einem Steckbrett sparen. Wenn Sie SMT verwenden, benötigen Sie sowieso eine Leiterplatte und können die Komponenten einfach auf der Platine neben dem Chip platzieren. ;-);
Ja, ich weiß :) Nach dem [3 LEDs Trick] (https://www.youtube.com/watch?v=RkTvDjhImwo) wollte ich etwas Ähnliches sehen :)
@abdullahkahraman: haha, das ist unglaublich!
ducksauz
2012-04-10 09:03:53 UTC
view on stackexchange narkive permalink

Wenn Sie das Arduino programmieren, programmieren Sie tatsächlich in einer Teilmenge von C ++. AVR-GCC ist der in der Arduino-Anwendung enthaltene Compiler zum Kompilieren Ihres Codes. Was die Arduino-Umgebung bietet, ist eine schöne Hardware-Abstraktionsschicht, um die Arbeit mit den Feinheiten der Mikrocontroller-Programmierung zu erleichtern. Sie können sich auf die Funktionalität Ihres Codes konzentrieren und die Arduino-Bibliotheken kümmern sich um die einfachen Dinge.

Dies geht zu Lasten der Leistung. Die Arduino-Abstraktionsschicht kann für einige Dinge 10 bis 20 Mal länger dauern, als nur direkt mit Mikrocontroller-Registern direkt umzugehen. Dies ist jedoch für die meisten Menschen kein Problem, es sei denn, sie versuchen, ernsthaft komplexe und prozessorintensive Projekte durchzuführen.

Arduino ist nicht vollständig C ++ - kompatibel.
Tom Davies
2012-04-10 05:25:04 UTC
view on stackexchange narkive permalink

Sie müssen die PIC-Programmierung nicht kennen, es sei denn, Sie möchten einen PIC-Mikrocontroller verwenden. Die von Arduino-Karten verwendeten Atmel-AVR-Mikrocontroller ähneln in ihrer Eignung für die Verwendung in einem tatsächlich hergestellten Gerät weitgehend den PICs.

Ein mit einer Arduino-Skizze programmierter AVR-Mikrocontroller kann in einem "hergestellten Gerät" verwendet werden. Dieser Mikrocontroller muss nicht auf einem Arduino-Board leben - er kann einfach Teil Ihres Geräts sein.

Rocketmagnet
2012-04-10 05:27:12 UTC
view on stackexchange narkive permalink

Es kommt darauf an. Sie können ein Arduino sicherlich in einem kommerziellen Gerät verwenden. Dies ist besonders nützlich, wenn Sie nur ein oder zwei solcher Geräte herstellen möchten und der Kunde die Kosten und die Größe des Arduino nicht stört.

Wenn Sie jedoch Tausende oder Millionen von Geräten herstellen möchten Dann werden Sie wahrscheinlich feststellen, dass Sie sie zu einem Preis verkaufen, der die Kosten des Arduino ausschließt. In diesem Fall müssen Sie mit ziemlicher Sicherheit zu einem geeigneten Mikrocontroller wechseln.

Das Erlernen der Verwendung eines Mikrocontrollers lohnt sich wirklich, wenn Sie in diesem Bereich Ihren Lebensunterhalt verdienen möchten. Sie müssen jedoch nicht direkt zu C springen. Probieren Sie das PICAXE -System aus. Sie können einen PIC-Mikrocontroller verwenden, ihn jedoch in BASIC programmieren.

miceuz
2012-04-10 14:54:39 UTC
view on stackexchange narkive permalink

Wenn Sie ein Mikrocontroller-Gerät herstellen möchten, können Sie dies mit einem AVR-Mikrocontroller, einem PIC-Mikrocontroller oder einem ARM-Mikrocontroller tun.

Bare-Bones-AVR-Mikrocontroller verfügen normalerweise nicht über USB-Verbindungsfunktionen. Zum Programmieren benötigen Sie ein spezielles Gerät. Einige ARM-Geräte (NXP LPC1343- oder LPC17 ** -Familie) sind jedoch bereits integriert USB und Ethernet. Es werden nur ein USB-Anschluss und ein paar Widerstände benötigt.

Sie müssen C-Programmierung lernen, um dies zu programmieren, aber es gibt bereits Bibliotheken, die es für Sie fast so einfach wie Arduino machen - http: //microbuilder.eu und http://www.universalair.co.uk/forebrain verfügen über ARM-basierte Entwickler-Boards und Software-Stacks. Ich würde Ihnen wirklich empfehlen, Beispiele für das Vorderhirn nachzuschlagen.

Es gibt mehr Alternativen als diese 3, das sollten Sie erwähnen
minghua
2012-09-11 11:40:01 UTC
view on stackexchange narkive permalink

Unter Berücksichtigung einiger Faktoren sollten Sie sich die Entwicklungsplatinen LPC1343 (Olimex LPC P1343) und LPC1769 (NXP OM13000) ansehen.

  • Sie basieren auf der ARM-Architektur des Hauptstroms. (In dem Sinne, dass ARM eine der beiden Standard- / Mainstream-RISC-Architekturen ist - MIPS und ARM).
  • Sie verwenden eine Standard-32-Bit-C-Toolchain.
  • LPC17xx verfügt über eine integrierte MPU. Daher können Sie es mit uCLinux oder einem anderen schutzbasierten Betriebssystem laden. Dies bedeutet eine kompliziertere Softwareanwendung, die Sie in Ihr Produkt integrieren können.
  • Aus den oben genannten Gründen ist es einfacher, qualifizierte Ingenieure und Referenzdesigns in Industriequalität zu finden.

Dies ist nur mein 2c. Schließlich ist es Ihre Aufgabe, nicht nur die anfänglichen Kosten zu berücksichtigen, sondern auch die spätere Leichtigkeit, Ihr Produkt in einem von Ihnen geplanten Volumen zu entwerfen, zu entwickeln, bereitzustellen / zu verkaufen und mit einer Geschwindigkeit, die Ihr Produkt rentabel macht.

Es gibt einen [Blog darüber, warum Sie lpc1768 OM13000 hier verwenden sollten: Der ARM Cortex-M3-Prozessor für die Entwicklung wissenschaftlicher Anweisungen] (http://quantalume.com/wp/?p=7). Sehen Sie sich die Gründe an, warum Sie sich die lpc1700-Serie ansehen sollten.


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 3.0-Lizenz, unter der er vertrieben wird.
Loading...