Zastanawiam się nad zakupem NetDuino do niektórych domowych projektów hobby.
Czy ktoś z was z niego korzystał i jakie było jego doświadczenie?
Czy zamiast tego powinienem spojrzeć na Arduino lub FreeDuino (czy coś zupełnie innego)?
Postanowiłem trzymać się NetDuino ze względu na moją znajomość języka C #, ale nie jest to wymagane.
Dzięki
PS. Nie jestem pewien, czy należy do wiki społeczności, czy nie (doceniamy wskazówki).
arduino
microcontroller
netduino
SetiSeeker
źródło
źródło
Odpowiedzi:
Uwielbiam C # i uważam, że korzyści płynące z produktywności w C # z Visual Studio są bardzo silnym czynnikiem na korzyść Netduino. Nie kupowałbym puchatek Netduino, ponieważ „C # nie jest dla mikrokontrolerów / środowisk osadzonych”, jak wskazują inne odpowiedzi tutaj.
Za pomocą Netduino możesz tworzyć wspaniałe projekty i dowiedzieć się wiele na temat podłączania różnych fizycznych urządzeń wejściowych i wyjściowych, podobnie jak Arduino lub „bare metal” i bezpośrednie zarządzanie MCU AVR, PIC lub innych mikrokontrolerów.
Powiedziawszy to, trzymam się Arduino z następujących powodów:
Powiedziałbym więc, że jeśli twoje umiejętności C są zakurzone lub nieistniejące, kochasz C # i Visual Studio, i po prostu chcesz majstrować przy kilku projektach hobbystycznych, które nie będą musiały być skalowane do miejsca, w którym koszt staje się większym problemem, przejdź do Netduino.
Jeśli czujesz się komfortowo w C lub radzisz sobie z nim przy pomocy próbek kodu i społeczności, i chcesz być bliżej metalu i patrzeć, jak w końcu odejść od „prototypowego” podejścia Netduino i Arduino, idź Arduino na początek.
źródło
Twoja wiedza na temat C # jest prawie bezużyteczna na wbudowanej platformie, więc nie kładź na tym zbytniej wagi.
Wybrałbym Arduino lub jeden z klonów, nie dlatego, że .Net jest diabłem, ale dlatego, że tego używają wszyscy inni, więc będziesz miał dużo łatwiej uzyskać pomoc i przeszukiwać kod ludzi.
Kiedy już zmoczysz stopy, na wszelki wypadek rozgałęźnij się i spróbuj różnych rzeczy.
źródło
Obecnie mam do dyspozycji Arduino, mbed, a na koniec Netduino do celów programistycznych / hobbystycznych. Nigdy nie lubiłem pracować z Arduino, być może dlatego, że edytor nie jest zbyt dobry i zdecydowanie jestem rozpieszczany jako programista C #. Kiedy otrzymałem mój mbed, podobało mi się znacznie lepsze opracowywanie, ale debugowanie jest nadal bolesne, ponieważ musisz użyć instrukcji print, aby dowiedzieć się, co się dzieje.
Podczas opracowywania produktu lub po prostu wkręcania się, znaczna większość czasu na początku spędzana jest na debugowaniu ... a gdy debugujesz, chcesz mieć punkty przerwania. Bardzo trudno mi wrócić do sprzętu osadzonego, który nie oferuje żadnych punktów przerwania.
Nie mam jeszcze doświadczenia z JTAG, ale każda mikro, które widziałem do tej pory (oprócz modułów RabbitCore) wymaga, aby umożliwiało debugowanie za pomocą punktów przerwania. Wyobraź sobie moje zdziwienie, kiedy podłączyłem dziś Netduino i byłem w stanie przejść przez mój kod w VS2010! Byłem z tego bardzo zadowolony.
Osobiście nie martwiłbym się rozmiarem powierzchni, złem platformy .NET i Microsoft itp. Chciałbym tylko móc debugować szybko i skutecznie, więc mogę po prostu załatwić sprawę .
źródło
Jako użytkownik BasicStamp od prawie 20 lat i użytkownik NetDuino tylko przez 2 tygodnie (nigdy nie korzystałem z Arduino), powiedziałbym, że NetDuino to świetna platforma. Dwie główne cechy, które lubię: łatwość programowania (i punkty przerwania!) W VisualStudio oraz wysokiej rozdzielczości ADC na płycie to kluczowe powody. Kilka tarcz Arduino, które wypróbowałem ze SparkFun, doskonale współpracowało z NetDuino.
źródło
Osobiście nie jestem fanem C # lub .NET. Jestem luddite C. Tak więc mój wybór sprowadza się do tego, że ma funkcje sprzętowe, których chcę (flash, RAM, szybkość zegara, liczbę ADC, liczbę timerów itp.).
To powiedziawszy, mogę sobie wyobrazić, że C # / .NET jest przydatny do szybkiego prototypowania:
Oczywiście wszystko to kosztuje:
A przede wszystkim, wykorzystując swoje umiejętności C # na platformie osadzonej, tak naprawdę nie uczysz się niczego na temat urządzeń osadzonych.
Tak, załatwi sprawę - ale gdzie jest w tym zabawa?
źródło
Znalazłem mbed jest cudownym zamiennikiem Arduino.
Biblioteka oprogramowania jest bardziej zorientowana na C ++, wraz z całym składniowym cukrem przeciążenia operatora przypisania. Dodatkowo system jest skonfigurowany tak, że użytkownicy mogą publikować i dokumentować biblioteki kodów, które można następnie łatwo wyszukiwać i importować do projektów.
Inną dobrą cechą jest możliwość traktowania urządzenia jako pamięci USB i po prostu umieszczania
.bin
plików bezpośrednio na dysku.Niestety, IDE jest porównywalne z arduino. Jest także online . Jest to zarówno bardzo dobre (można go używać na dowolnym komputerze, nie wymaga instalacji), jak i bardzo złe (nie można go łatwo przeprogramować bez połączenia z Internetem).
Koszt płyty wynosi 60 USD, ale mają one program sponsorski, w ramach którego przekażą deski na ciekawe projekty, pod warunkiem udokumentowania postępów i upublicznienia kodu źródłowego.
źródło
Jestem przede wszystkim programistą C #. Kupiłem Arduino zamiast Netduino ze względu na dostępność kodu źródłowego. Nie byłoby łatwo zintegrować Netduino z elektronicznymi klockami Arduino, ponieważ będziesz musiał przepisać niektóre próbki od zera.
źródło
Czytając „C # nie nadaje się do wbudowanych platform”, pamiętaj, że ludzie w wieku powyżej pewnego wieku już słyszeli, że przynajmniej raz mówili o „C”, a potem znowu o C ++ za życia…
Oczywiście jest to monumentalnie „marnotrawstwo” podstawowych możliwości procesora, ale zdolność do uruchamiania bezczynnej pętli 1000 razy szybciej niż potrzebujesz, a nie 10 razy szybciej niż nigdy nie uczyniłeś nikogo bogatym.
źródło
Jeśli chcesz poczuć goły metal i na przykład być w stanie bezpośrednio generować lub przechwytywać sygnał wideo, tutaj liczy się każdy cykl, a AVR / Arduino pozwoli ci to zrobić. Jeśli chcesz wyższego poziomu abstrakcji, wyższego poziomu programowania i komfortu debugowania, śmieciarza i możesz żyć z faktem, że podobnie jak w Windows nie kontrolujesz wszystkiego, wybierz NetDuino lub FEZ Domino. Ponieważ oba mają ARM w swoim sercu, założę się, że w razie potrzeby możesz zabić .NET MF na płycie i flashować goły kod ARM GCC bezpośrednio z jakiegoś środowiska Eclipse, takiego jak IDE, za pomocą małego debuggera JTAG. Zbadaj trochę. Problemem może być to, że jeśli brakuje nagłówka JTAG, musisz wykonać lutowanie.
źródło
Po bardzo długiej przerwie w elektronice i programowaniu wróciłem do niego z powodu projektu, który jeden z moich synów realizuje na uniwersytecie. Nauczyłem się elektroniki, gdy lampy były normą, i programowania za pomocą przełączników (ustawianie adresu, ustawianie danych, ładowanie, przechowywanie, binarnie) i kart dziurkowanych. Z biegiem lat nauczyłem się i wykorzystywałem każdy postęp w języku elektronicznym i programistycznym, który wymagał wiele skoncentrowanego wysiłku i czasu. W związku z tym jestem bardzo wdzięczny za postępy w mikrokontrolerach i ich niewiarygodnie niską cenę, w tym płyty programistyczne, takie jak Arduino, Netduino itp. Argumenty dotyczące Arduino kontra Netduino itp. Przypominają mi takie bitwy Microsoft vs Apple, takie jak jako linia poleceń vs GUI. Nie ma znaczenia, która platforma, język programowania itp. Jest używany, o ile jest odpowiedni do wyniku.
źródło
Jeśli .net MF dał biblioteki, które są zdolne do tego, co potrafi czysty kod maszynowy / metalowy, ... to jedyna abstrakcja (. Net MF) staje się dobra. Oprócz zajmowania większej powierzchni i prowadzenia GC (co powinno uczynić go wydajnym?)
źródło