एक अनुभवी प्रोग्रामर Arduino या कुछ और के लिए?


11

मेरी पृष्ठभूमि:

मैंने काफी समय से सॉफ्टवेयर फ्रॉम किया है, और मैं C, C ++, Java, Ruby, Erlang, Haskell, Lua और Python में कमोबेश कुशल हूं। मैंने लैब इलेक्ट्रॉनिक्स में भी एक क्लास ली, लेकिन एक पंप के साथ एक संक्षिप्त लैब बनाई, यह सब एक संकेत के बारे में था और ए / डी और वहां से लैब व्यू के साथ एक x86 में ( प्रोग्रामिंग वातावरण की मेरी पसंद नहीं ) घर स्वचालन के लिए एक आँख के साथ हार्डवेयर के साथ छेड़छाड़ में वापस लाने के लिए। (मुझे लगता है कि मैं बेहतर कर सकता हूं तो कम से कम $ 500 के लिए यह )

सवाल:

मैं एक Arduino पर अपने दांतों को काटने जा रहा था, लेकिन जितना अधिक मैं इसे पढ़ता हूं, उसे लगता है कि इस प्रणाली का मुख्य लाभ यह है कि यह प्रोग्राम के लिए सरल है। क्या यह एक सॉफ़्टवेयर के लिए एक अच्छी जगह है (जिसे अभी भी एक टांका लगाने वाला लोहा खरीदने की ज़रूरत है) आदमी शुरू करने के लिए या क्या ऐसा कुछ है जो मुझे बेहतर सूट करेगा?

(पुनश्च मेरे पास और समय है तब पैसा)

जवाबों:


4

जहां तक ​​गेट से बाहर निकलने के लिए तैयार माइक्रोकंट्रोलर इवेल बोर्ड की बात है, बेशक अरडिनो परिवार है। लेकिन $ 4.30 के लिए msp430 लॉन्चपैड पर भी विचार करें। अच्छा निर्देश सेट और कम शक्ति / लागत की ओर झुकाव के साथ avr के प्रदर्शन के समान। $ 20 के लिए आप stm32f4 खोज प्राप्त कर सकते हैं (stm32 मान लाइन खोज या stm8 परिवार के साथ भ्रमित नहीं होना) जो आम तौर पर आपके द्वारा उपयोग किए जाने योग्य arduino ($ 35- $ 50) के लिए भुगतान करने की तुलना में कम है, लेकिन arduino 168Mhz के आसपास चलता है, फ़्लोटिंग पॉइंट इकाई, कैश, आदि। अरुडिनो मूल्य सीमा के ऊपरी छोर में एक और भुजा है मीड (mbed.org), जो संभवतः आर्डिनो सैंडबॉक्स अनुभव के सबसे करीब है।

यदि आप एक स्टैंडबॉक्स में रहना चाहते हैं और सिर्फ एपीआई कॉल करते हैं तो अरडिनो संभवत: वह स्थान है जहां आप रहना चाहते हैं, अधिक प्रदर्शन के लिए मेगा है या लेफ्लब्स मेपल के साथ जाना है जो हाथ आधारित है लेकिन आर्कडिनो सैंडल अनुभव प्रदान करने का प्रयास करता है।

आप बहुत अधिक प्रदर्शन प्राप्त कर सकते हैं, अपने हिरन के लिए बैंग आदि, यदि आप थोड़ा अधिक जिम्मेदारी लेते हैं और जो चल रहा है उसके बारे में ज्ञान। मैं सभी तीन प्लेटफार्मों (avr, msp, arm / thumb) और कई विक्रेताओं (avr और msp) को बंद करने की सलाह देता हूं, लेकिन बांह को हर किसी द्वारा अलग-अलग बाह्य उपकरणों और I / O के साथ बेचा जाता है। उदाहरण के लिए, आपको एक ऐसे प्लेटफ़ॉर्म के लिए उपयोग किया जा सकता है, जिसमें gpio लाइनों पर कोई पुल अप नहीं है और बाहरी घटकों का उपयोग करना है जहां एक अन्य चिप या विक्रेता तुलनीय मूल्य / प्रदर्शन बिंदु पर चिप प्रदान करता है। इसी तरह आप एक सीरियल पोर्ट या स्पि बस को थोड़ा पीटना पसंद कर सकते हैं, लेकिन पाते हैं कि उसी पैसे, पावर, साइज आदि के लिए कुछ अन्य वेंडर के पास उस इंटरफेस में सहायता करने के लिए हार्डवेयर होता है।

और कुछ नहीं अगर यह एक प्रोग्रामर के रूप में आपके सर्वोत्तम हित में है और कोई व्यक्ति सैंडबॉक्स के बाहर क्या हो रहा है, इसके बारे में अधिक जानने के लिए शौक इलेक्ट्रॉनिक्स में जाना चाहता है। इस शौक इलेक्ट्रॉनिक्स दुनिया में आने के लिए एक तरह से एक ऑपरेटिंग सिस्टम पर एप्लिकेशन प्रोग्रामिंग से एक बहुत ही सहज संक्रमण है। स्पार्कफुन में अब कुछ किट होते हैं जिसमें सीरियल इंटरफ़ेस और कुछ पेरीफेरल शामिल होते हैं एक लिलिपैड किट (एक अरड्यूइनो प्लेटफॉर्म) और शायद एक प्रो किट, दोनों अरडिनो शील्ड फॉर्म फैक्टर नहीं होते हैं यदि यह मायने रखता है। स्पार्कफून रिटेल बॉक्सेड और कई अन्य स्वादों वाले आर्डूइनो, यूनो इत्यादि की बिक्री करता है (ऊपर वर्णित सेंट और एमपीएस बोर्ड्स को टीआई या सेंट की वेबसाइट पर शुरू करना चाहिए या github.com/dwelch67 पर जाना चाहिए और मैं अपने माध्यम से विभिन्न बोर्डों से लिंक कर सकता हूं) उदाहरण)।


8

मैं भी दिन रात एक सॉफ्टवेयर आदमी हूँ। लगभग दस साल पहले मैंने लंबल से बेसिक टिकटों के साथ शुरुआत की, और एक लंबे अंतराल के बाद मैं हाल ही में एम्बेडेड परियोजनाओं में वापस आ गया। शुरू में मैंने Arduino और इसके विभिन्न हिस्सों को देखा और महसूस किया कि मैं Arduino बोर्ड के मूल्य टैग को छोड़ सकता हूं और कुछ ATMega168s को पकड़ सकता हूं और फिर से शुरू कर सकता हूं। यह सबसे अधिक भाग के लिए काम करता है, हालाँकि मैं अक्सर उन मुद्दों में भागता था जहाँ एक प्रीबिल्ट बोर्ड होना अच्छा होता क्योंकि मैं मूल विधानसभा को खराब नहीं कर सकता था।

मैंने अंततः एक Arduino का आदेश दिया और बोर्ड और पुस्तकालयों के बारे में सब कुछ पसंद किया। मैं "आईडीई" का प्रशंसक नहीं हूं, इसलिए मैं 'बाहरी संपादक का उपयोग करें' पर क्लिक करता हूं और बोर्ड को सॉफ्टवेयर को संकलित करने और चमकाने के लिए शुद्ध रूप से आईडीई का उपयोग करता हूं। आमतौर पर मैं Arduino बोर्ड के साथ एक परियोजना या विचार शुरू करता हूं और फिर एक मेगा चिप में पोर्ट करता हूं। यह एक परियोजना के लिए केवल आवश्यक भागों का उपयोग करके लागत को कम रखने में मदद करता है लेकिन यह अभी भी मुझे जल्दी से एक प्रोटोटाइप के साथ आने की अनुमति देता है।

सौभाग्य!


6

Arduino एक माइक्रोकंट्रोलर प्रोग्रामिंग करने के लिए एक महान परिचय है।

एक पीसी के लिए सॉफ्टवेयर लिखने और एक माइक्रोकंट्रोलर के लिए फर्मवेयर लिखने के बीच एक बड़ा अंतर है।

Arduino विशिष्ट चिप quirks और इस तरह से निपटने में फंसने के बिना बाह्य उपकरणों के साथ इंटरफेसिंग के आसपास अपना सिर पाने के लिए एक अच्छा प्रारंभिक बिंदु होगा।

लेकिन, जैसा कि मैं कहता हूं, यह एक परिचय है।

Arduino से शुरू करें फिर बड़ी और बेहतर चीजों की ओर बढ़ें।

मैं माइक्रोकंट्रोलर्स के पीआईसी परिवार का उपयोग काफी करता हूं, लेकिन मेरे पास अभी भी मेरे भरोसेमंद अर्केलिनो हैं जो मैं विचारों को परखने और चीजों को जल्दी से परखने के लिए उपयोग करता हूं।


6

चूंकि "Arduino" में कई चीजें शामिल हैं, मुझे लगता है कि उन्हें अलग से देखना उपयोगी हो सकता है:

  • हार्डवेयर पक्ष पर, एक Arduino- संगत डिवाइस मूल रूप से एक ATMega माइक्रोकंट्रोलर है जो एक निश्चित बूटलोडर के साथ है। आमतौर पर एक तैयार किए गए Arduino- संगत बोर्ड में अन्य समर्थन इलेक्ट्रॉनिक्स भी शामिल होंगे, जैसे कि USB या सीरियल पोर्ट इंटरफ़ेस, वोल्टेज नियामक, पिन तक आसान पहुंच के लिए पिन हेडर, आदि। यदि आप USB कार्यक्षमता चाहते हैं तो हार्डवेयर डिवाइस काफी सस्ती हैं। पूर्व-प्रोग्राम किए गए बूटलोडर के साथ मिलकर यह आपके सॉफ़्टवेयर को अपलोड करने के लिए एक अलग प्रोग्रामर खरीदने की आवश्यकता को बचाता है। तो, हाँ, Arduino (और संगत क्लोन) प्रोटोटाइप के दौरान हार्डवेयर उपकरणों के रूप में उपयोगी होते हैं; अंतिम निर्माण के लिए आप अपनी जरूरत के हिस्सों के साथ अपना निर्माण करना चाहते हैं, इसलिए आपको हर परियोजना में एक पूरा Arduino डालने की आवश्यकता नहीं है।

  • सॉफ्टवेयर साइड पर, अरुडिनो लाइब्रेरी किसी भी प्रोग्रामिंग लाइब्रेरी की तरह है और इसकी उपयोगिता आपकी आवश्यकताओं पर निर्भर करती है। व्यक्तिगत रूप से मैं इसे त्वरित प्रोटोटाइप (जैसे, सीरियल पोर्ट कार्यक्षमता) के लिए कभी-कभी उपयोगी मानता हूं, लेकिन एक अनुभवी प्रोग्रामर के रूप में मैं कई सरलीकरण (विशेषकर पिन नंबरिंग) को नापसंद करता हूं। किसी भी स्थिति में आप आसानी से मूल AVR पुस्तकालयों का उपयोग कर सकते हैं, या इसके अलावा, Arduino पुस्तकालय भी अगर आप Arduino डिवाइस के लिए प्रोग्राम करते हैं और / या Arduino IDE का उपयोग करते हैं। इसलिए, जो भी Arduino लाइब्रेरी आपके लिए उपयोगी हो, का उपयोग करें, विशेष रूप से प्रोटोटाइप करते समय, लेकिन अंतर्निहित AVR सीखें जैसे ही आप साथ जाते हैं (Arduino के स्रोत और ATMega डेटाशीट देखें)।

  • अंत में, Arduino IDE एक साधारण संपादक, सीरियल पोर्ट कंसोल, "मेक-लाइक बिल्ड सिस्टम (उपयोगकर्ता से छिपा हुआ), और (एक फ्रंट-एंड) टूल के साथ वास्तविक सॉफ्टवेयर के लिए आपके सॉफ़्टवेयर को अपलोड करने के लिए ग्राफिकल प्रोग्रामिंग वातावरण है। । व्यक्तिगत रूप से मैं आईडीई से नफरत करता हूं और इसका इस्तेमाल कभी नहीं करता हूं, कमांड लाइन पर काम करना पसंद करता हूं, लेकिन जाहिर है कि यह केवल व्यक्तिगत प्राथमिकता का मामला है।


1
मुझे नहीं पता कि वे किस तरह से उस राक्षसी को आईडीई कह सकते हैं। यह कल्पनाशील [एक्सप्लेटिव डिलीट] का सबसे भयावह टुकड़ा है । मैं Anjuta है लगभग अब है कि (बहुत नहीं) Arduino के आईडीई करता है मेरे लिए सब कुछ करने की स्थापना की।
मजेंको

4

आपका प्रश्न सीधे उत्तर के लिए बहुत खुला हुआ है, इसलिए हम जो कुछ भी कर सकते हैं वह आपको ट्रेडऑफ़ दिखाते हैं।

एड्रिनो एक चीनी-लेपित माइक्रोकंट्रोलर है जो जनता के लिए डंबल है। यह सामान सीखने की न्यूनतम के साथ जल्दी से बुनियादी चीजें प्राप्त करने के लिए अनुकूलित है।

Arduino के दिल में एक साधारण माइक्रोकंट्रोलर है, जिसे आप सीधे भी उपयोग कर सकते हैं। लाभ यह है कि आप अपने माइक्रो को बिल्कुल वही चुन सकते हैं जो आप करना चाहते हैं, किसी और के बारे में यह न सोचें कि आपके और माइक्रो के बीच क्या करना चाहिए, और आप नंगे माइक्रो के लिए जो कुछ भी कर सकते हैं, वह है बहुत अधिक से अधिक arduino अमूर्त के माध्यम से सामने आया। नकारात्मक पक्ष यह है कि आपको वास्तव में कुछ सीखना होगा, डेटाशीट के कुछ 100 पृष्ठों को पढ़ना सिर्फ शुरुआत है, और आपको तत्काल संतुष्टि प्राप्त नहीं होने वाली है।

केवल आप ही कह सकते हैं कि आपके लिए क्या बेहतर है। क्या आप अपने भीतर के मनोबल को गले लगाना चाहते हैं और "हमेशा के लिए" कहे जाने वाले बाग़ को हमेशा के लिए ख़त्म करने के लिए आनंदित हो जाते हैं। इलेक्ट्रॉनिक चीजों के लिए? या क्या आप बहुत लंबे समय तक अंधेरे रास्ते को तोड़ते रहेंगे, जो कि बहुत अधिक टॉयलेट और परेशानी के बाद सिंगल ब्लिंकिंग एलईडी के साथ उभरता है? क्या आप बस कार चलाना चाहते हैं या सीखना चाहते हैं कि इंजन कैसे काम करता है ताकि आप अधिकतम प्रदर्शन प्राप्त कर सकें और इसे खुद को ट्विक कर सकें?


1
ओलिन, तुम पुराने स्कूल हो! मैं बिल्कुल मतलब है कि एक तारीफ के रूप में ... लेकिन मैं इस मुद्दे पर आपसे असहमत हूं। गैर-संकल्पित ऑपरेटिंग सिस्टम पर औसत दर्जे के डिज़ाइन किए गए सॉफ़्टवेयर के साथ व्यवहार करने से इलेक्ट्रॉनिक्स की मेरी समझ में शून्य जुड़ गया है। वास्तव में मूल्यवान समय के दिनों को भिगो दिया है जब मैं अपने जैसे जानकार लोगों से उपयोगी चीजें सीख सकता था। मैं कहता हूं "लंबे समय से जीवित Arduino!"
केलिन कॉलक्लासुर

2
@KaelinColclasure आपकी टिप्पणी कुछ ऐसी है जो मुझे भ्रमित करती है। आप खराब सॉफ़्टवेयर और OS के साथ समस्या लेते हैं, लेकिन ओलिन इसे संबोधित नहीं कर रहा है। अगर कुछ भी आप विचार कर सकते हैं कि आपके लिए arduino एक अमूर्त परत की तरह क्या करता है जैसे कि OS कैसे एक अमूर्त परत है। एक arduino का उपयोग करने के लिए सीखना आपको एक बेहतर इंजीनियर बनने में मदद करने के लिए बहुत कम करता है क्योंकि ओवरहेड अतिरिक्त लागतों का परिणाम देगा जिनकी आवश्यकता नहीं है। इसके साथ ही, मुझे लगता है कि Arduino एक बेहतरीन प्लेटफॉर्म है, लेकिन इसे एम्बेडेड इलेक्ट्रॉनिक्स की दुनिया को समझने के लिए एक प्रतिस्थापन नहीं माना जाना चाहिए।
केलेंज्ब

याय कार की उपमाएँ! ओलिन, बहुत से लोगों के लिए यह ट्रूडिंग और इलेक्ट्रॉनिक्स की किटी किरकिरा सीखने और एक इंजीनियर बनने के बारे में नहीं है। बहुत सारे लोग बस एक उपकरण चुनना चाहते हैं जो उन्हें अपने लक्ष्य को प्राप्त करने और उनकी समस्या को हल करने की अनुमति देता है। इलेक्ट्रॉनिक्स सीखना कई मामलों में अंत का एक साधन है, और स्वयं अंत नहीं है। इस खेल में हर कोई नहीं है उन्हीं कारणों के लिए जो आप हैं।
nemik

2
हाँ? फिर क्या बात है कि "अपने आंतरिक मनोबल को गले लगाओ"? चलो। क्या आप अपने खुद के ओएस को एक असली आदमी ™ की तरह लिखने के बजाय विंडोज या लिनक्स या ओएस एक्स चला रहे हैं? वे चीनी-लेपित ऑपरेटिंग सिस्टम हैं जो जनता के लिए गूंगे हैं।
nemik

1
@nemik: अपने भीतर के मोरों को गले लगाना एक मजाक था, जैसे कि लंबे अंधेरे रास्ते को तोड़ना ... बेशक उन दोनों में कुछ सच्चाई भी है।
ओलिन लेट्रोप

4

एक प्रोग्रामर के रूप में, मैं एक ऐसी भाषा में प्रोग्रामिंग करना पसंद करता हूं जो कई अन्य लोगों द्वारा उपयोग की जाती है, इस तरह से मुझे सीखने में मदद करने के लिए बहुत सारी किताबें, लेख, साथियों आदि उपलब्ध हैं।

एकल बोर्ड कंप्यूटर दुनिया में Arduino समर्थन की सबसे बड़ी सांस के साथ सबसे लोकप्रिय हाथ नीचे है। यह आपके पहले माइक्रो कंप्यूटर के लिए एक उत्कृष्ट विकल्प है।

यह देखते हुए कि ये चीजें कितनी सस्ती हैं (अधिकांश $ 50 से कम हैं), आप एक से अधिक प्रकार प्राप्त करने पर विचार कर सकते हैं।

Microsoft Visual Studio और C # से परिचित किसी के लिए, Netduino एक उत्कृष्ट पसंद है क्योंकि इसमें एक टूलकिन है जिसे आप पहले से ही जानते होंगे।

यदि आपका पसंदीदा वातावरण यूनिक्स है, तो आप रास्पबेरी पाई जैसे बोर्ड को पसंद कर सकते हैं जो जनवरी 2012 में समाप्त हो जाएगा।

रास्पबेरी पाई क्या है? रास्पबेरी पाई एक क्रेडिट-कार्ड के आकार का कंप्यूटर है जो आपके टीवी और कीबोर्ड में प्लग करता है। यह एक सक्षम छोटा पीसी है जिसका उपयोग आपके डेस्कटॉप पीसी द्वारा स्प्रेडशीट, वर्ड-प्रोसेसिंग और गेम जैसी कई चीजों के लिए किया जा सकता है। यह हाई-डेफिनिशन वीडियो भी चलाता है। हम इसे दुनिया भर के बच्चों द्वारा प्रोग्रामिंग सीखने के लिए इस्तेमाल करना चाहते हैं।

उपकरण खरीदने के लिए कब उपलब्ध होगा? हम 2011 के अंत तक ऑर्डर करने के लिए रास्पबेरी पाई उपलब्ध होने की उम्मीद कर रहे थे। हम अभी भी साल के अंत से पहले बीटा बोर्ड के हमारे पहले बैच की कुछ नीलामी करने की उम्मीद करते हैं (क्रिसमस के बाद साइट पर नज़र रखें); हम जनवरी में मुख्य उत्पादन के लिए जा रहे हैं।

इसका मूल्य कितना होगा? मॉडल A की कीमत $ 25 और मॉडल B की $ 35 होगी।

वास्तव में अच्छी खबर यह है कि कम लागत वाले माइक्रो-नियंत्रक बहुत सारे उपलब्ध हैं जो हर समय अधिक बाहर आते हैं।

अंत में टेक्सास इंस्ट्रूमेंट्स MSP-430 लॉन्चपैड है जो मुफ्त शिपिंग के साथ $ 4.30 के लिए उपलब्ध है। सस्ती कीमत पर, आप कैसे नहीं खरीद सकते हैं?


4

Arduino के साथ अपने विचार को शुरू करने और एक न्यूनतम काम करने वाला प्रोटोटाइप बनाने के लिए शुरू करें और बस अपने उत्पाद (मोटर्स, सेंसर, संचार के लिए सीरियल) के लिए आवश्यक मूल बातें के साथ इंटरफेस करना सीखें।

बाद में जब आप अधिक कार्यक्षमता (USB डिवाइस, ईथरनेट) चाहते हैं, तो ARM Cortex M-Series चिप्स पर जाएं। 32-बिट एआरएम का मतलब है कि वे बहुत शक्तिशाली हैं और अब अक्सर सस्ता है और एवीआर और पीआईसी जैसे उच्च अंत 8 या 16 बिट चिप्स की तुलना में अधिक बाह्य उपकरणों के साथ। यदि आप Arduino से आ रहे हैं तो NXP का mbed (http://mbed.org) उस प्लेटफॉर्म के लिए एक बहुत ही सौम्य परिचय है।


2

जब लोग कहते हैं कि Arduino "प्रोग्राम के लिए सरल" है, तो उनका वास्तव में मतलब है कि टूलकिन मूल रूप से सिर्फ काम करता है। यह एक मैक पर काम करता है, यह विंडोज पर काम करता है, और यह लिनक्स पर काम करता है। आप अपने बोर्ड में प्लग करते हैं, आप अपना कोड लिखते हैं, आप इसे अपलोड करते हैं और यह चला जाता है।

एक छोटे से उपाख्यान की पेशकश करने के लिए, मैं खुद को Atmel के STK600 और उनके AVR स्टूडियो 5 के विकास के माहौल में "उन्नत" कर रहा हूं। यह केवल विंडोज पर काम करता है, इसलिए मुझे अपने मैक पर वीएमवेयर इंस्टॉल और चलाना पड़ता है। तब मुझे बारीक जेन्गो USB ड्राइवर स्थापित करना पड़ा, जो उधम मचाते पोस्ट पोस्ट पढ़ने का एक दिन ले लिया। तब मुझे यह पता लगाना था कि मैं आईडीई से देव बोर्ड से बात क्यों कर सकता हूं, लेकिन STK600 के साथ आए ATmega2560 बेटी कार्ड के लिए नहीं ... (JTAG केबल को गलत तरीके से प्लग किया गया था, क्योंकि मैंने एक ट्यूटोरियल ट्यूटोरियल का अनुसरण किया था) वेब जो एक तस्वीर है जो केबल को पीछे से जुड़ा हुआ दिखा रहा है।)

अब तक मैंने AVR स्टूडियो 5 के साथ कोड की एक पंक्ति नहीं लिखी है, लेकिन मैंने संभवतः इसके साथ अधिक समय व्यतीत किया है, जबकि मेरे पास कुल समय Arduino IDE का उपयोग करने में है। और मैंने दर्जनों Arduino स्केच लिखे हैं।

जिस भाषा में आप प्रोग्रामिंग कर रहे हैं वह मूल रूप से C ++ है जिसमें थोड़ा सा प्रीप्रोसेसिंग है। अपनी पृष्ठभूमि के साथ आपको यह पता लगाने में शून्य परेशानी होगी कि आप किसी ऐसे स्केच को कैसे ट्रांसप्लांट करना चाहते हैं जिसे बाद में "प्रो" वातावरण में बदलना चाहिए। मेरे लिए, केवल एक बार Arduino हार्डवेयर के साथ छेड़छाड़ करने से परे जाने की आवश्यकता उत्पन्न हुई और मैंने अपना स्वयं का बोर्ड डिजाइन करना शुरू कर दिया। YMMV, बिल्कुल ...

उम्मीद है की यह मदद करेगा। :-)


3
तुम पर लेने के लिए नहीं ... लेकिन मैं फिर से तुमसे असहमत हूं। लोगों का कहना है कि एक Arduino कार्यक्रम के लिए सरल है क्योंकि उन्होंने अनिवार्य रूप से एक अमूर्त परत को जोड़ा है जो आपको अन्यथा नहीं मिलेगा। आप C ++ भी लाते हैं, यह एम्बेडेड दुनिया में देखने के लिए बहुत कम है। कभी-कभी विशिष्ट परियोजनाओं के लिए इसकी आवश्यकता होती है, लेकिन यह कुछ ओवरहेड भी जोड़ता है जो आपके पास नहीं हो सकता है जब आप हर पैसा काटने की कोशिश कर रहे हों।
केलेंज्ब

@ केलेनजेब, मैं लगभग कोई ओवरहेड के साथ सी ++ को कोड कर सकता हूं, कभी-कभी अनुभाग 10% तक हो सकते हैं, लेकिन 0 ओवरहेड के साथ कई अनुभाग। लेकिन हाँ, यह दुर्लभ है क्योंकि आपको अपनी भाषा के साथ जो कर रहे हैं उस पर अधिक ध्यान देना होगा, लेकिन रुकिए, सी में भी यही सच है। मैंने देखा है कि यूजर्स ने पहले से ही शानदार नतीजे नहीं दिए हैं।
कोर्तुक

1

Arduino A / D, D / A (कम से कम PWM के रूप में) बहुत सारे डिजिटल I / O प्रदान करने वाला एक लचीला कदम रखने वाला प्लेटफ़ॉर्म बनाता है, जो बोर्ड पर एक प्रोग्रामेबल एलईडी, सीरियल-टू-यूएसबी और रेडी-मेड मॉड्यूल के लिए उपलब्ध है। अन्य प्रकार के बहुत सारे हार्डवेयर। यदि आप सीखने के अनुभव के लिए अपना खुद का रोल करना चाहते हैं, तो आपको इसकी आवश्यकता नहीं है। यदि आप एक प्लेटफ़ॉर्म चाहते हैं कि आप केवल कुछ मज़े के लिए उठें या चल रहे हैं या जब आप उस चीज़ के कम लागत वाले हार्डवेयर संस्करण को डिज़ाइन कर रहे हैं, तो आप जब चाहें तब जाने के लिए तैयार हैं। ये डिज़ाइन, रणनीतिक और आर्थिक निर्णय हैं जो आपके लक्ष्यों के अनुकूल होने के लिए पूरी तरह से मान्य हैं। ट्रेडऑफ़ बनाने के बारे में "नैतिक" कुछ भी नहीं है - यही इंजीनियर करते हैं - और हर दिन करने वाले हैं।


1

जॉन का अनुभव लगभग 15 साल पहले का है जब मैंने कंप्यूटर साइंस (मूल रूप से असेंबली लैंग्वेज प्रोग्रामिंग, और सी) को अंडरग्रेजुएट पढ़ाने से रिटायर किया था। मुझे तब एहसास हुआ कि कंप्यूटिंग में आगे बढ़ने के लिए प्रतिबंधात्मक रूप से महंगा होगा, इसलिए मेरी पत्नी ने एक शौक के रूप में इलेक्ट्रॉनिक्स में वापस जाने का सुझाव दिया, क्योंकि मैंने 1950 के दशक में इलेक्ट्रिकल इंजीनियर होने का आनंद लिया था। यह मैंने किया था, हालांकि मैं केवल संक्षिप्त रूप से ट्रांजिस्टर से मिला था, और कभी भी एक ऑप-एम्पी नहीं देखा था, इसलिए मुझे ऐसा करने के लिए बहुत आनंदमय सीखना था। मैंने असेंबली लैंग्वेज के अपने प्यार को बरकरार रखा और जब माइक्रोचिप पिक्स 90 के दशक के मध्य में आईं तो मैं उन पर फ़िदा हो गया।

मैं Arduino के साथ उनकी तुलना नहीं कर सकता, जिसके बारे में मुझे कुछ नहीं पता है, लेकिन Pics का उपयोग करने का एक फायदा यह है कि इसे सेट करना सस्ता है, क्योंकि माइक्रोचिप एक शानदार आईडीई के साथ सभी सूचनाओं की मुफ्त आपूर्ति करता है, और आप उनका उपयोग करना सीख सकते हैं , जैसा कि मैंने किया, वे क्या प्रकाशित करते हैं। आप घर पर बने प्रोग्रामर, इंटरनेट पर बहुत सारे डिजाइन के साथ शुरुआत कर सकते हैं, इसलिए इसे शुरू करने के लिए कुछ Pic चिप्स के लिए केवल कुछ पाउंड खर्च होंगे। लेकिन मैं PicKit 2 की सिफारिश करूंगा, जिसमें कार्यक्रम के विकास को आसान बनाने के लिए बहुत सारी अंतर्निहित विशेषताएं हैं। शायद PicKit 3 नहीं, हालांकि, देखें:

http://www.eevblog.com/2009/10/21/eevblog-39-pickit-3-programmerdebugger-review/ यद्यपि यह अद्यतन किया गया है, इस संदर्भ में नोट देखें।

Pics पर बड़ी संख्या में किताबें हैं, लेकिन कुछ बकवास हैं, सावधान रहें। एक आसान शुरुआत के लिए, Pic का एक उत्कृष्ट परिचय है:

"PIC माइक्रोकंट्रोलर्स के साथ एंबेडेड सिस्टम डिजाइनिंग: सिद्धांत और अनुप्रयोग" [पेपरबैक] टिम विल्मशर्स्ट द्वारा, अमेज़ॅन पर £ 22-66, जिसमें असेंबलर और सी दोनों शामिल हैं। मैंने सी से थोड़ी देर के लिए परहेज किया क्योंकि यह हार्डवेयर के साथ अंतरंगता को दूर करने के लिए लग रहा था। असेंबलर देता है, लेकिन माइक्रोचिप की आपूर्ति सी कंपाइलर के साथ आप असेंबलर कोड को देख सकते हैं जो कि उत्पन्न होता है।

एक समग्र, अच्छे, तकनीकी (मैथ्स को डालने में डर नहीं) के लिए मैं आधुनिक इलेक्ट्रॉनिक्स की कवरेज की सिफारिश करता हूं: "अमेजन पर पॉल शिर्ज़ द्वारा पाउंड / इन्वेंटर्स के लिए प्रैक्टिकल इलेक्ट्रॉनिक्स" 2 / ई [पेपरबैक]।

मैंने दुकानों में इन पुस्तकों के लिए क्रमशः £ 26-99 और £ 22-99 का भुगतान किया, और इसे बिल्कुल भी पछतावा न करें।

मैं यहां पर्याप्त रूप से कवर नहीं कर सकता, मुझे इस विषय पर ईमेल द्वारा पत्राचार करने में खुशी होगी: 417weston@gmail.com (और, बस के मामले में, मैं जो कुछ भी पढ़ता हूं या डाउनलोड या उत्तर देता हूं, उसके बारे में बहुत सावधान हूं।)

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.