Ich freue mich auf den Kauf eines NetDuino für ein paar lustige Hobbyprojekte.
Hat jemand von euch es benutzt und wie war eure Erfahrung?
Soll ich mir stattdessen die Arduino- oder FreeDuino-Reihe ansehen (oder etwas völlig anderes)?
Ich habe mich aufgrund meiner C # -Kenntnisse für das NetDuino entschieden, aber das ist keine Voraussetzung.
Vielen Dank
PS. Ich bin mir nicht sicher, ob dies zum Community-Wiki gehört oder nicht (Anleitung erwünscht).
arduino
microcontroller
netduino
SetiSeeker
quelle
quelle
Antworten:
Ich liebe C # und finde, dass die Produktivitätsvorteile der Entwicklung in C # mit Visual Studio ein sehr starker Faktor für das Netduino sind. Ich würde Netduino nicht beunruhigen, weil "C # nicht für Mikrocontroller / Embedded-Umgebungen", wie andere Antworten hier zeigen.
Sie können unterhaltsame Projekte durchführen und viel über das Anschließen verschiedener physischer Ein- und Ausgabegeräte mit Netduino lernen, genau wie Sie es mit Arduino tun können oder "Bare Metal" arbeiten und das direkte MCU-Management des AVR, PIC oder anderer Mikrocontroller übernehmen.
Trotzdem halte ich mich aus den folgenden Gründen an Arduino:
Ich würde also sagen, wenn Ihre C-Kenntnisse verstaubt oder nicht vorhanden sind, Sie C # und Visual Studio lieben und nur ein paar Hobbyprojekte basteln möchten, bei denen keine Skalierung erforderlich ist, damit die Kosten ein größeres Problem darstellen, gehen Sie zu Netduino.
Wenn Sie sich in C wohlfühlen oder sich mit Hilfe von Codebeispielen und der Community darin zurechtfinden möchten, näher am Metall sein möchten und eventuell den "Prototyp" -Ansatz von Netduino und Arduino hinter sich lassen möchten, gehen Sie Arduino, um loszulegen.
quelle
Ihr C # -Kenntnis ist auf einer eingebetteten Plattform sowieso so gut wie unbrauchbar, legen Sie also nicht zu viel Gewicht darauf.
Ich würde mit einem Arduino oder einem der Klone gehen, nicht weil .Net der Teufel ist, sondern weil es das ist, was alle anderen benutzen, damit Sie viel einfacher Hilfe bekommen und den Code der Leute loswerden können.
Sobald Sie Ihre Füße nass bekommen haben, verzweigen Sie sich auf jeden Fall und probieren Sie verschiedene Sachen aus.
quelle
Ich habe derzeit ein Arduino, ein mbed und schließlich ein Netduino zur Verfügung, das für Entwickler / Bastler verwendet werden kann. Ich habe es nie gemocht, mit dem Arduino zu arbeiten, vielleicht weil der Editor nicht sehr gut ist und ich als C # -Entwickler definitiv verwöhnt bin. Als ich mein mbed erhielt, mochte ich die Entwicklung viel, viel besser, aber das Debuggen ist immer noch schmerzhaft, weil Sie print-Anweisungen verwenden müssen, um herauszufinden, was los ist.
Wenn Sie ein Produkt entwickeln oder nur herumdrehen, wird die meiste Zeit zunächst für das Debuggen aufgewendet ... und wenn Sie debuggen, möchten Sie Haltepunkte haben. Es fällt mir sehr schwer, auf Embedded-Hardware zurückzugreifen, die keinerlei Haltepunkte bietet.
Ich habe noch keine Erfahrung mit JTAG, aber jedes Mikro, das ich bis jetzt gesehen habe (außer den RabbitCore-Modulen), benötigt es, um das Debuggen über Haltepunkte zu ermöglichen. Stellen Sie sich meine Überraschung vor, als ich heute mein Netduino angeschlossen habe und in der Lage war, meinen Code in VS2010 schrittweise durchzuarbeiten! Das hat mich sehr gefreut.
Persönlich würde ich mir keine Sorgen um die Größe des Footprints, die Übel von .NET und Microsoft usw. machen. Ich würde mich nur darum kümmern, in der Lage zu sein, schnell und effizient zu debuggen, damit ich nur Dinge erledigen kann .
quelle
Als BasicStamp-Benutzer seit fast 20 Jahren und als NetDuino-Benutzer seit nur 2 Wochen (ich habe noch nie ein Arduino verwendet) würde ich sagen, dass das NetDuino eine großartige Plattform ist. Die zwei Hauptmerkmale, die mir Spaß machen: Einfache Programmierung (und Haltepunkte!) In VisualStudio und der hochauflösende ADC auf der Platine sind Hauptgründe. Die wenigen Arduino Shields, die ich mit SparkFun ausprobiert habe, haben perfekt mit dem NetDuino zusammengearbeitet.
quelle
Persönlich bin ich kein Fan von C # oder .NET. Ich bin ein C-Idiot. Die Wahl der Plattform hängt also von den gewünschten Hardwarefunktionen ab (Flash, RAM, Taktrate, Anzahl der ADCs, Anzahl der Timer usw.).
Dennoch kann ich mir vorstellen, dass C # /. NET für Rapid Prototyping nützlich ist:
Natürlich hat das alles einen Preis:
Und vor allem, wenn Sie Ihre C # -Fähigkeiten auf einer eingebetteten Plattform einsetzen, lernen Sie nichts über eingebettete Geräte.
Ja, es wird die Arbeit erledigen - aber wo ist der Spaß dabei?
quelle
Ich habe das Bett gefunden ein wunderbarer Ersatz für den Arduino.
Die Softwarebibliothek ist stärker auf C ++ ausgerichtet und enthält den gesamten syntaktischen Zucker der Überladung von Zuweisungsoperatoren. Zusätzlich wird ein System eingerichtet, mit dem Benutzer Codebibliotheken veröffentlichen und dokumentieren können, die dann leicht durchsucht und in Projekte importiert werden können.
Ein weiteres gutes Feature ist die Möglichkeit, das Gerät als USB-Stick zu behandeln und die
.bin
Dateien direkt auf das Laufwerk zu kopieren.Leider ist die IDE mit der des Arduino vergleichbar. Auch es ist online . Dies ist sowohl sehr gut (kann auf jedem PC verwendet werden, keine Installation erforderlich) als auch sehr schlecht (kann ohne Internetverbindung nicht einfach umprogrammiert werden).
Die Kosten für das Board betragen 60 US-Dollar, aber es gibt ein Sponsoring-Programm, bei dem Boards für interessante Projekte gespendet werden, sofern der Fortschritt dokumentiert und der Quellcode veröffentlicht wird.
quelle
Ich bin hauptsächlich ein C # -Entwickler. Ich habe ein Arduino anstelle eines Netduino gekauft, da der Quellcode verfügbar ist. Es wäre nicht einfach, Netduino in elektronische Arduino-Bausteine zu integrieren, da Sie einige der Beispiele von Grund auf neu schreiben müssen.
quelle
Denken Sie beim Lesen von "C # ist nicht für eingebettete Plattformen geeignet" daran, dass Personen, die älter als ein bestimmtes Alter sind, bereits davon gehört haben, dass sie mindestens einmal über "C" und dann noch einmal über C ++ in ihrem Leben gesprochen haben ...
Natürlich ist es eine enorme Verschwendung der zugrunde liegenden Fähigkeiten des Prozessors, aber die Fähigkeit, Ihre Leerlaufschleife 1000-mal schneller auszuführen, als Sie benötigen, anstatt 10-mal schneller, als Sie brauchen, hat noch nie jemanden reich gemacht.
quelle
Wenn Sie das blanke Metall fühlen möchten und beispielsweise Videosignale direkt erzeugen oder erfassen können, ist dies der Punkt, auf den jeder Zyklus ankommt, und AVR / Arduino lässt Sie dies tun. Wenn Sie ein höheres Abstraktionsniveau, höheren Programmier- und Debugging-Komfort und einen Garbage Collector wünschen und damit leben können, dass Sie wie unter Windows nicht alles kontrollieren, wählen Sie NetDuino oder FEZ Domino. Da beide über ARM verfügen, wette ich, dass Sie bei Bedarf .NET MF auf dem Board töten und Bare-Metal-ARM-GCC-Code mit Hilfe eines kleinen JTAG-Debuggers direkt aus Eclipse wie IDE flashen können. Untersuche ein wenig. Das Problem könnte sein, dass Sie etwas löten müssen, wenn der JTAG-Header fehlt.
quelle
Nach einer sehr langen Pause von Elektronik und Programmierung bin ich aufgrund eines Projekts zurückgekehrt, das einer meiner Söhne an der Universität durchführt. Ich lernte Elektronik, als Röhren die Norm waren und programmierte mit Kippschaltern (Adresse einstellen, Daten einstellen, laden, speichern, in Binärform) und Lochkarten. Im Laufe der Jahre habe ich jede Weiterentwicklung der Elektronik- und Programmiersprachen gelernt und angewendet, die viel konzentrierte Anstrengung und Zeit in Anspruch nahm. Folglich bin ich so dankbar für die Fortschritte bei Mikrocontrollern und wie unglaublich billig sie sind, einschließlich der Entwicklungsplatinen wie Arduino, Netduino usw. Die Argumente über Arduino gegen Netduino usw. erinnern mich an die Schlachten von Microsoft gegen Apple, wie z als Kommandozeile vs GUI. Es spielt keine Rolle, welche Plattform, Programmiersprache usw. verwendet wird, solange dies für das Ergebnis angemessen ist.
quelle
Wenn .net MF Bibliotheken anbietet, die in der Lage sind, was reiner Maschinen- / Metallcode kann, ... wird die einzige Abstraktion (.net MF) eine gute. Abgesehen davon, dass Sie mehr Platz benötigen und einen GC ausführen (was sollte ihn effizient machen?)
quelle