पीआईसी प्रोग्रामिंग शुरू करना


13

मैं कुछ PIC प्रोग्रामिंग करने में देख रहा हूं, लेकिन कुछ अन्य माइक्रोकंट्रोलर उपलब्ध के विपरीत उपलब्ध विभिन्न चिप्स की सरासर संख्या ने मुझे कुछ भ्रम में डाल दिया है। यह भी प्रतीत होता है कि पीआईसी प्रोग्रामिंग के साथ शुरू होने वाले लोगों के लिए अच्छे विकल्पों के रूप में कुछ साइटों पर कुछ चिप्स का सुझाव दिया गया है (या मैं अभी और भी भ्रमित हो सकता हूं)।

इसलिए मेरा प्रश्न तीन भागों में बँट गया:

  • क्या एक अच्छा तस्वीर चिप के साथ शुरू होगा?

  • मैं असेंबलर या किसी अन्य भाषा को करने में काफी खुश हूं, इसलिए आप लिनक्स के लिए क्या आईडीई / भाषाएं सुझाएंगे?

  • एक लिनक्स लैपटॉप (PicKit 2 - एक संभावना) से यूएसबी कनेक्शन पर, चिप पर कोड प्राप्त करने के संदर्भ में आप क्या सुझाएंगे? एक संभावना थी और मुझे यह करने के लिए क्या सर्किट / बोर्ड कॉन्फ़िगरेशन की आवश्यकता होगी?

संपादित करें: किट के विभिन्न बिट्स के गुणों पर कोरटुक (नीचे टिप्पणियां देखें) के साथ एक लंबी चर्चा के बाद, मैंने PicKit2 स्टार्टर किट के साथ शुरुआत करने का फैसला किया है। यह एक PIC16F690 चिप स्थापित के साथ आता है।

जवाबों:


7

मैं PIC18s से सहमत हूं, लेकिन किसी के लिए बस शुरू करने से वे थोड़े प्रखर हो सकते हैं। मैं वर्तमान में वरिष्ठ स्तर के इलेक्ट्रिकल इंजीनियरों PIC विकास सिखाता हूं और यहां तक ​​कि एक ही वर्ग के भीतर उनकी पृष्ठभूमि की सीमा अचरज हो सकती है।

मैं वर्तमान में CCS PIC-C संकलक के साथ लोगों को पढ़ाता हूं लेकिन इसमें पैसे खर्च होते हैं। यह अविश्वसनीय सरल है और इसे चुना गया क्योंकि हमारे अधिकांश छात्रों ने केवल बुनियादी विधानसभा या x86 प्रोग्रामिंग के साथ एक प्रयोगशाला सेटिंग में काम किया है।

मुझे लगता है कि एक बहुत ही सरल PIC16 एक बेहतर फिट हो सकता है, लेकिन यह आपकी पृष्ठभूमि पर निर्भर करेगा। PIC16F688 एक बहुत ही सरल PIC है जिसका उपयोग हम अपने पहले प्रोजेक्ट के लिए लोगों को गर्म करने के लिए करते हैं।


1
मेरे पास कम्प्यूटिंग में फर्स्ट क्लास ऑनर्स की डिग्री है जिसमें बहुत सारी प्रोग्रामिंग (मुख्य रूप से VB6 का बिट, कुछ कोडांतरक) शामिल हैं। मेरे पास मैथ्स की डिग्री भी है और मैथ्स को सेकेंडरी स्कूल के बच्चों को पढ़ाते हैं। मैं विभिन्न भाषाओं में प्रोग्राम कर सकता हूं (सी नहीं हालांकि) और माइक्रोकंट्रोलर के साथ खेलने सहित विभिन्न नई चीजों को देख रहा हूं।
अमोस

1
16F88 एक आदर्श विकल्प है। वहाँ एक लाख अलग PIC हैं, और मुझे लगता है कि उनमें से लगभग 50,000 शुरू करने के लिए अच्छे हैं। माइक्रोकंट्रोलर्स को प्रोग्रामिंग करना अक्सर उन लोगों की समस्याओं का सामना करता है जिन्हें मैंने सीएस पृष्ठभूमि के साथ मदद की है क्योंकि उन्होंने बिजली के बारे में कई कक्षाएं नहीं लीं, कुछ मैं चाहता हूं कि वे डिग्री कार्यक्रमों में जोड़ दें। मुझे नहीं लगता कि प्रोग्रामिंग बिल्कुल भी चुनौतीपूर्ण होगी, लेकिन यह शायद आपके विकास बोर्ड को प्राप्त करने का एक बुरा विकल्प नहीं होगा। यह आपकी मूल्य सीमा से प्रभावित होगा। microchipdirect.com/ProductSearch.aspx?Keywords=DV164120
कोरटुक

1
मुझे लगता है कि मैंने जो अंतिम लिंक पोस्ट किया है वह एक अच्छा विकल्प हो सकता है, यह आपको 50 डॉलर (-25% अगर आपके पास एक .edu ईमेल है) के साथ काम करने के लिए पहले से ही वायर्ड एक बोर्ड देगा और फिर आपके पास एक प्रोग्रामर है जिसे आप उपयोग कर सकते हैं। किसी भी अन्य चिप्स आप प्राप्त करते हैं। मैं यह सुनने के लिए उत्सुक हूं कि आपकी परियोजनाएं कैसे चलती हैं।
21

1
यदि आपको DM164120-1 मिलता है, तो मेरा सुझाव है कि आप इसके साथ आने वाले PIC का उपयोग करें। मैं किसी परियोजना के साथ किसी की मदद करने के बीच में सही हूं कि उन्हें कल कक्षा को पढ़ाने की आवश्यकता है या मैं और अधिक देखूंगा, लेकिन हर जगह मुझे आपका बोर्ड मिल जाएगा मुझे यह योजनाबद्ध नहीं मिल सकता है। मैं आपको PIC16F631 के पिन-आउट के आधार पर बता सकता हूं कि यह PIC16F88 के साथ संगत नहीं है। पावर और प्रोग्रामिंग पिन लाइन नहीं होगी। यदि आप एक देव बोर्ड खरीदते हैं, तो उसके साथ आने वाले PIC का उपयोग करें, आप काफी खुश होंगे।
कोर्तुक

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

4

PIC के लिए, JAL नामक एक ओपन सोर्स कंपाइलर है (बस एक और भाषा)

अन्य प्रोग्रामिंग भाषाओं की तरह यह आपके चुने हुए PIC को अन्य हार्डवेयर में संलग्न करने की प्रक्रिया को सरल बनाने के लिए हार्डवेयर पुस्तकालयों का उपयोग करने की अनुमति देता है। सॉफ्टवेयर आपको अपने PIC2 (या इस प्रोग्रामर के क्लोन) के माध्यम से कार्यक्रमों को संकलित और अपलोड करने की अनुमति देगा।

JAL एक पास्कल आधारित भाषा है और मुफ्त सॉफ्टवेयर है (हमेशा अच्छा है अगर आपका अभी शुरू हो रहा है)

जाल विकी एंट्री

पुस्तकों के लिए, "PIC माइक्रोकंट्रोलर, शुरुआती और विशेषज्ञों के लिए 50 परियोजनाएं" बर्ट वान डैम के अनुसार, JAL के परिचय के रूप में देखने लायक है

अब तक मैंने PIC से सिर्फ 16F877A चिप का उपयोग किया है, एक अच्छा शुरुआती चिप जाहिरा तौर पर। बहुत सस्ते और बहुत सारे पोर्ट उपलब्ध हैं।


चीयर्स, मैं एक नज़र होगा। क्या JAL लिनक्स के लिए उपलब्ध एक विशिष्ट IDE का उपयोग करता है?
एमोस

1
हाँ, इसे JAL एडिट कहा जाता है, यह आपको कोडिंग पक्ष पर सही रखेगा और एक विशिष्ट उपकरण है जिसे आप IDE के jal.sunish.net/jaledit
Justblair

दुर्भाग्य से यह केवल विंडोज है, लिनक्स के लिए एक है जिसे PicShell कहा जाता है, वर्तमान बीटा है: linux.softpedia.com/get/Text-Editing-Processing/IDEs/…
Amos

2

18F श्रृंखला पर चिप के लिए देखो, 16F के रूप में सस्ते में एक बहुत अधिक हिम्मत। 18F2550 एक अच्छी चिप है और इसमें USB भी शामिल है, उसी श्रृंखला में अन्य भी हैं। उनकी वेबसाइट पर माइक्रोचिप चयन चार्ट देखें।

सी सहित माइक्रोचिप से मुक्त आईडीई जो आपको कोडांतरक IMHO पर उपयोग करना चाहिए। यकीन नहीं होता कि माइक्रोचिप आईडीई लिनक्स पर चलता है लेकिन यह हो सकता है।

PicKit प्रोग्रामिंग के लिए अच्छा हो सकता है, पहली बार एक बूटलोडर को जलाना चाहता है फिर USB पर बूटलोड कर सकता है। Bitwacker (यह Google) उपयोग या प्रतिलिपि बनाने के लिए एक अच्छा सेटअप है।

मंचों और अन्य साइटों के एक टन हैं, बस गूगल। PIC के साथ एक समस्या यह है कि बहुत सारी भाषाएं हैं और कोई भी काफी समान नहीं है (यहां तक ​​कि सी कंपाइलर के भीतर भी) यदि आप एक अच्छा प्रश्न लिख सकते हैं, तो आप पिकवॉक पर पूछ सकते हैं, लेकिन पहले अपना होमवर्क करें। फ़ोरम सीखने के लिए सबसे अच्छी जगह नहीं है, इसके लिए ट्यूटोरियल साइटों की तलाश करें (फिर से बिटवाचर्स साइट अच्छी है, यह भी "एंबेडेड एडवेंचर्स" गूगल ने सी में बहुत कुछ किया है (लेकिन माइक्रोचिप एक नहीं)


मैंने एंबेडेड एडवेंचर्स को तब बुक किया है जब मुझे मारने के लिए एक या दो घंटे का समय मिला है, और भविष्य के संदर्भ के लिए बिटवॅकर पर एक नज़र डाली थी। चीयर्स।
आमोस

1

ड्वेंगो बोर्ड PIC18F4550 पर आधारित है, उनके पास एक कम लागत वाली PICkit2 क्लोन और कुछ बहुत अच्छे ट्यूटोरियल हैं जिन्हें आपने शुरू किया है: http://www.dwengo.org/tutorials


दिलचस्प। आप वही Wim नहीं होंगे जो ड्वेंगो टीम में से एक भी होगा?
आमोस

हां, वही ;-)
विम

1

कुछ सामानों के संदर्भ के लिए, मैंने पिक किट 2 पिकेट 1 का उपयोग करते हुए PIC के साथ थोड़ी प्रोग्रामिंग की है , मैं बुराई जीनियस के लिए 100 माइक्रोकंट्रोलर परियोजनाओं की सिफारिश करूंगा, मेरे पास कुछ ब्लॉग पोस्ट भी हैं जो इस तरह की चीजों से निपट रहे हैं

http://blog.onaclovtech.com/2010/01/interrupts.html

http://blog.onaclovtech.com/2010/01/analog-inputs.html

http://blog.onaclovtech.com/2010/02/pic-16f913-quick-reference-guide.html

http://blog.onaclovtech.com/2010/02/pic-16f913.html

मैं एक SPI अपडेट पोस्ट करने की योजना बना रहा हूं और जब मैं यह पता लगाता हूं कि कुछ माइक्रोचिप चिप्स का उपयोग करके CAN बस ट्रैफिक से कैसे निपटें, तो मेरे पास अपडेट भी होंगे।

धन्यवाद,

onaclov


दिलचस्प लगता है, जब मुझे एक मिनट मिलेगा, तो मैं आपके सामान को करीब से देखूंगा।
आमोस

मैं शायद यह नहीं जानता कि हर समय कहाँ देखना है, लेकिन
एवीआर और अरडिनो

1

यदि आप PICs का उपयोग करना चाहते हैं, तो मैं गंभीरता से 16 बिट पिक्स या बहुत समान dsPIC33 की PIC24 श्रृंखला पर विचार करूंगा। वे तेज़, अधिक शक्तिशाली हैं, कई मायनों में प्रोग्राम करना आसान है, और सबसे बुनियादी 8 बिट्स की तुलना में अधिक खर्च नहीं करते हैं। निचले छोर वाले ब्रेडबोर्ड के अनुकूल डीआईपी सॉकेट पैकेज में भी उपलब्ध हैं।

हालांकि, इंटरनेट पर उदाहरण ढूंढना बहुत कठिन है, लेकिन जहां तक ​​मुझे लगता है कि यह मुख्य नुकसान है।

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