एक विकास बोर्ड के साथ .NET Micro Framework कैसे एम्बेडेड प्रोग्रामिंग के साथ Arduino, या Nintendo DS की तुलना में कुछ की तुलना करता है?क्या .NET माइक्रो फ्रेमवर्क एम्बेडेड प्रोग्रामिंग के साथ शुरू करने का एक अच्छा तरीका है?
उत्तर
इस उत्तर एक छोटे से विषय से हटकर ....
मैं व्यक्तिगत रूप से microchip.com से PICs का उपयोग है, लेकिन। वे वास्तव में सस्ती हैं और बहुत सारे विकल्प/संस्करणों के साथ निर्मित बहुत सारी चीजें हैं। जबकि मुझे .NET माइक्रो का उपयोग करना अच्छा लगेगा, ऐसा लगता है कि यह ओएसई चलाने के लिए डिज़ाइन किए गए उच्च-अंत चिप्स के लिए विकसित किया गया है। बहुत सी एम्बेडेड परियोजनाओं, विशेष रूप से संचार क्षेत्र में उच्च अंत चिप्स (छोटी मात्रा में $ 100 + बोर्ड) की आवश्यकता होती है, लेकिन बहुत अच्छी एम्बेडेड परियोजनाएं छोटी चीजें हैं और केवल $ 2 सीपीयू की आवश्यकता होती है। .NET माइक्रो उनको लक्षित नहीं करता है।
.NET माइक्रो फ्रेमवर्क एम्बेडेड सिस्टम के लिए लक्षित है जिसमें एक शक्तिशाली प्रोसेसर (वर्तमान में एआरएम 7, एआरएम 9 और ब्लैकफिन) शामिल है।
Arduino बोर्ड 8-बिट एवीआर माइक्रोकंट्रोलर पर आधारित है जिसके लिए .NET माइक्रो फ्रेमवर्क भी उपलब्ध नहीं है। उदाहरण के लिए ढांचे की स्मृति आवश्यकताओं पर विचार करें: इसे लगभग 300 केबी स्मृति के रूप में कम उपभोग करने के लिए विज्ञापित किया जाता है। Arduino कुल 16 केबी प्रोग्राम मेमोरी + 1 केबी रैम है।
दूसरी तरफ, निन्टेन्दो डीएस, कम से कम तकनीकी रूप से .NET माइक्रो फ्रेमवर्क चलाने में सक्षम है।
यदि आप Arduino जैसे हार्डवेयर के लिए एम्बेडेड प्रोग्रामिंग में रूचि रखते हैं, तो मैं आपको आश्वस्त कर सकता हूं कि आपको उच्च स्तर की लाइब्रेरी या ऑपरेटिंग सिस्टम की आवश्यकता नहीं है (और आमतौर पर इसका उपयोग नहीं कर सकता)। वास्तव में, आप पाएंगे कि एक छोटे से माइक्रोकंट्रोलर के लिए प्रोग्रामिंग एक खुशी होगी क्योंकि सब कुछ बहुत आसान है और आपके कुल नियंत्रण में है।
आप नेट सूक्ष्म ढांचे का उपयोग करने में रुचि रखते हैं devicesolutions.net
इसके अलावा arround अन्य तरीके से चेकआउट: http://blogs.oberon.ch/tamberg/2009-02-23/running-processing-code-on-the-dotnet-mf.html
ईमानदारी से नेट सूक्ष्म ढांचे पर चलाने के लिए, अगर मैं तुम थे (जो मैं, नहीं कर रहा हूँ जिस तरह से) कोड का संसाधन कन्वर्ट, मैं यह छड़ी होगी एक एम्बेडेड सिस्टम के लिए .NET प्लेटफॉर्म के उच्च स्तरीय अबास्ट्रक्शन से बाहर निकलें और इससे बचें। जिस तरह से मैंने सीखा वह कॉलेज कोर्स के माध्यम से था जहां मुझे पहली बार एवीआर असेंबली भाषा में सुनोम किट (एक आर्डिनो बोर्ड के समान, और एटीमेगा 32 एमसीयू भी शामिल है) पर एम्बेडेड सिस्टम अवधारणाओं के साथ पेश किया गया था, और फिर सी में अवधारणाओं को फिर से पढ़ाया गया .NET की संक्षिप्त तकनीकी समझ रखने के बाद, मुझे लगता है कि मंच में बहुत ही मनमाना अमूर्तता है क्योंकि यह एक बहुत ही बुद्धिमान विकल्प है। (बेशक, इसका हिस्सा सामान्य रूप से .NET और Java के लिए भी मेरी नफरत है, और विशेष रूप से जब एम्बेडेड सिस्टम प्रोग्रामिंग में उपयोग किया जाता है, तो नमक के अनाज के साथ मेरी पक्षपातपूर्ण राय लें।)
एम्बेडेड सॉफ़्टवेयर (मेरे राय) जितना संभव हो उतना अलग-अलग मशीनों पर चलाने के लिए और अधिक सार बनाने के बजाय जितना संभव हो उतना तेज़ी से और कुशलतापूर्वक चलाने के लिए चलने वाले प्लेटफॉर्म का लाभ उठाने में सक्षम हो। सॉफ़्टवेयर डेवलपमेंट किट को कम करने के बजाय, कार्यक्रमों को धीमा या अनावश्यक जटिलता जोड़ने के कारण, मुझे लगता है कि आपको जमीन से अवधारणाओं और कार्यान्वयन को सीखना चाहिए, इसलिए आपके पास "सिस्टम" के बारे में बेहतर कामकाजी ज्ञान है।निगरानी "वास्तव में इससे पहले कि आप एक का दुरुपयोग शुरू है।
Netduino बहुत अच्छा लग रहा है। और यह केवल 30 अमरीकी डालर। और ईथरनेट के साथ the Plus version है।
अन्य सभी उत्तर उत्कृष्ट हैं, लेकिन मैं सिर्फ इतना है कि जोड़ना चाहते हैं शुरुआत के लिए, .NET माइक्रो जैसे ढांचे कुछ महत्वपूर्ण अवधारणाओं को दूर कर सकते हैं; यह आपको अपने हार्डवेयर से भी हटा सकता है। एम्बेडेड प्रोग्रामिंग का आनंद (और वास्तविक कौशल) आपके माइक्रोक्रोनरोलर के हार्डवेयर और आर्किटेक्चर का शोषण करने में आता है। यदि आप हार्डवेयर के शीर्ष पर एक अमूर्त परत के रूप में एक ढांचे का उपयोग कर रहे हैं, तो आपको वास्तव में बुनियादी अवधारणाएं नहीं मिलेंगी जो एम्बेडेड प्रोग्रामिंग के लिए महत्वपूर्ण हैं।
मैं कहता हूं कि इसे पहले सी और असेंबली का उपयोग करके जाना है, सीधे हार्डवेयर के साथ बातचीत करना ताकि आप उन ढांचे के बारे में अच्छा महसूस कर सकें। जब आप उस के साथ सहज है तो आप एक ढांचे के लिए ले जाने के लिए चुन सकते हैं (लेकिन उस समय ... शायद नहीं है: पी)
लेकिन तब फिर से, जानने के लिए यदि आपका लक्ष्य नहीं है, लेकिन बस पूरा करने के लिए, फिर एक ढांचा आपको यह बहुत तेज़ करने में मदद कर सकता है, क्योंकि आपको आंतरिक कार्यप्रणाली को समझने की आवश्यकता नहीं होगी। लेकिन उसमें मजाक कहां है?
यदि आप बेहद कम लागत वाली प्रोटोटाइप में रूचि रखते हैं, तो 'Arduino मार्ग' पर विचार करना उचित है लेकिन Arduino का उपयोग नहीं कर रहा है।
एक #Shrimp एक ATmega328-पीयू एक Arduino Uno बूटलोडर चल आप एक PIC के रूप में लगभग एक ही लागत के आधार दे सकते हैं का उपयोग कर की तरह एक stripboard या breadboard डिजाइन का उपयोग करना है, लेकिन सभी पहले से मौजूद Arduino निर्माता परियोजनाएं हैं जो वहाँ बाहर हैं के साथ संगतता को बनाए रखता है , जैसे ... http://www.instructables.com/tag/type-id/category-technology/channel-arduino/
100 इकाइयों के आधार पर, आप स्ट्रिंगबोर्ड पर £ 1.70 के रूप में या ब्रिटेन के शब्दों में सोल्डरलेस ब्रेडबोर्ड पर £ 2.30 के लिए एक ब्रेडबोर्ड पर काम करने के लिए घटक प्राप्त कर सकते हैं। 5 या 10 जैसे छोटे संस्करणों के लिए, आप क्रमशः £ 2.90 और £ 3.50 के करीब देख रहे हैं, लेकिन यह अभी भी सस्ता है। जब आप शुरू करते हैं तो लगभग # मिनट में लेआउट आरेख से एक # श्रिंप सर्किट बनाया जा सकता है, और जब आप जल्दी हो जाते हैं तो आप इसे लगभग एक मिनट तक प्राप्त कर सकते हैं।
बेशक, लागत को ध्यान में रखना एकमात्र कारक नहीं है।
आप किसी विशेष भाषा में प्रोग्राम करना चाहते हैं। Arduino पर चलाने के लिए आपके sketch के लिए, इसे सी में लिखा जाना चाहिए, हालांकि आप Python के साथ एक Arduino- संगत रिमोट कंट्रोल करने के लिए pyfirmata का उपयोग कर सकते हैं, अगर आपको यह नहीं लगता कि यह डेस्कटॉप से स्थायी रूप से कनेक्ट हो रहा है।
और C# की तरह एक कचरा एकत्र करने भाषा Visual Studio के उपकरण समर्थन का उपयोग विशेष रूप से जो लोग पहले से एक माइक्रोसॉफ्ट वातावरण में विकसित करने के लिए, .NET Micro Framework का उपयोग करने में एक महान लाभ के रूप में देखा जा सकता है। समान रूप से मुक्त और मुक्त स्रोत Arduino IDE की सादगी दूसरों द्वारा लाभ के रूप में प्रस्तुत की जाती है।
[प्रकटीकरण, मैं नहीं के लिए लाभ के लिए सहयोगी @ShrimpingIt अपने आप को पेश कर रहा हूँ।]
- 1. .NET माइक्रो फ्रेमवर्क
- 2. .NET माइक्रो फ्रेमवर्क ट्यूटोरियल?
- 3. एक बीन शुरू करने का सबसे अच्छा तरीका क्या है?
- 4. .NET माइक्रो फ्रेमवर्क और असमर्थित विशेषताएं। प्रभाव क्या है?
- 5. माइक्रो फ्रेमवर्क होने का क्या अर्थ है?
- 6. मेरे गैर-स्मार्टफ़ोन के लिए प्रोग्रामिंग शुरू करने का सबसे अच्छा तरीका क्या है?
- 7. यूएस $ 300 के तहत सबसे अच्छा .NET माइक्रो फ्रेमवर्क देव बोर्ड क्या है?
- 8. डाउनलोड शुरू करने का सबसे अच्छा तरीका?
- 9. आईओ फ्रेमवर्क शुरू करने के लिए आईओ (प्रोग्रामिंग भाषा)
- 10. क्या यह स्मृति जारी करने का एक अच्छा तरीका है?
- 11. फ्लास्क माइक्रो-फ्रेमवर्क
- 12. सी # के साथ उपयोग करने के लिए एक अच्छा एम्बेडेड डेटाबेस क्या है?
- 13. सबसे अच्छा तरीका है, .NET
- 14. फ्लास्क माइक्रो फ्रेमवर्क
- 15. .NET में एक अपरिवर्तनीय सूची का प्रतिनिधित्व करने का सबसे अच्छा तरीका क्या है?
- 16. मोबाइल प्रोग्रामिंग के साथ शुरू करना। एक अच्छा मंच क्या है?
- 17. एमएपीआई का उपयोग शुरू करने का सबसे अच्छा तरीका क्या है?
- 18. एक बच्चे प्रोग्रामिंग शुरू करने के सुझाव
- 19. क्यूइंग सिस्टम - एकाधिक श्रमिकों को शुरू करने का एक अच्छा तरीका क्या है?
- 20. आज .NET में एक विश्वसनीय वास्तुकला को लागू करने का सबसे अच्छा तरीका क्या है?
- 21. क्या यह असीमित प्रोग्रामिंग मॉडल को लागू करने का एक अच्छा तरीका है?
- 22. हैकेल कोड डीबग करने का एक अच्छा तरीका क्या है?
- 23. सी # के साथ टीडीडी के साथ प्रोग्रामिंग शुरू करने के लिए सबसे अच्छे कदम क्या हैं?
- 24. लाइसेंस के साथ कस्टम .NET घटक सुरक्षित करने के लिए सबसे अच्छा तरीका क्या है?
- 25. एचटीएमएल/प्रोग्रामिंग में गैर-प्रमुखों को पेश करने का सबसे अच्छा तरीका क्या है?
- 26. क्या यह जेएस ओओपी करने का एक अच्छा तरीका है?
- 27. .NET उत्पाद के लिए एकाधिक डेटाबेस का समर्थन करने का सबसे अच्छा तरीका क्या है?
- 28. एमईएफ के साथ एनएलओजी का उपयोग करने का सबसे अच्छा तरीका क्या है?
- 29. OCUnit एक एम्बेडेड फ्रेमवर्क का परीक्षण
- 30. numpy.NaN के साथ एक scipy.sparse मैट्रिक्स शुरू करने का सबसे तेज़ तरीका क्या है?
वास्तव में अपने 32 केबी नहीं 300 –
मेरे 300 KB दावा विस्तृत श्वेत पत्र है कि इस से उपलब्ध है पर आधारित है पृष्ठ: http://msdn.microsoft.com/en-us/netframework/bb267253.aspx। यह कहता है "अभी तक का सबसे छोटा .NET पदचिह्न (लगभग 300 केबी रैम)"। – smt