विषयसूची:

Atmega328p साथी: 6 कदम (चित्रों के साथ)
Atmega328p साथी: 6 कदम (चित्रों के साथ)

वीडियो: Atmega328p साथी: 6 कदम (चित्रों के साथ)

वीडियो: Atmega328p साथी: 6 कदम (चित्रों के साथ)
वीडियो: $2 Arduino The ATMEGA328 as a stand alone Easy, cheap and very small A complete guide 2024, नवंबर
Anonim
Atmega328p साथी
Atmega328p साथी

ATMEGA328P साथी: बूटलोडर और प्रोग्रामर मॉड्यूल

यदि आप मेरी तरह हैं, तो आप परियोजनाओं और Arduino के आदी हैं। हालाँकि, यदि आपने मस्तिष्क के रूप में एक Arduino के साथ कई प्रोजेक्ट किए हैं, तो संभवतः आप Arduino बोर्ड को समग्र रूप से देखने, अपने प्रोजेक्ट को अव्यवस्थित करने और कुल मिलाकर केवल खराब दिखने से बीमार होने लगे हैं। जैसे, मैंने फैसला किया कि मैं Arduino बोर्डों से सिर्फ IC का उपयोग करना चाहता हूं।

एटमेगा३२८पी दर्ज करें।

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

चरण 1: बीओएम और उपकरण

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

सामग्री:

  • 1x 40x60 मिमी प्रोटोबार्ड या पीसीबी
  • 1x 6pin पुरुष हेडर (मैंने समकोण पुरुषों का उपयोग किया है)
  • 2x 14pin महिला हैडर
  • 1x 6pin महिला हैडर
  • 1x 2pin महिला हैडर
  • 2x 22pF संधारित्र (22)
  • 1x 0.1uF संधारित्र (104)
  • 1x 10kohm रोकनेवाला
  • 2x 330ohm रोकनेवाला
  • 1x एलईडी (पावर इंडिकेटर के लिए कोई भी रंग - पीसीबी डिजाइन के लिए 3 मिमी)
  • 1x एलईडी (डिजिटल पिन के लिए कोई भी रंग 13 ब्लिंक स्केच के लिए - पीसीबी डिजाइन के लिए 3 मिमी)
  • 1x 16 मेगाहर्ट्ज क्रिस्टल
  • 1x स्लाइड स्विच
  • 1x क्षणिक पुश बटन

उपकरण:

  • Arduino Uno
  • सोल्डरिंग आयरन
  • 6x एम-एम जंपर्स
  • एफटीडीआई प्रोग्रामर
  • USB केबल जो आपके FTDI प्रोग्रामर से मेल खाती है
  • अरुडिनो आईडीई

चरण 2: योजनाबद्ध/लेआउट

योजनाबद्ध/लेआउट
योजनाबद्ध/लेआउट
योजनाबद्ध/लेआउट
योजनाबद्ध/लेआउट

इस चरण से जुड़ी हुई ईगल फाइलें हैं जिनका मैंने उपयोग किया है। आप उन्हें संशोधित करने और अपनी इच्छानुसार बदलने के लिए स्वतंत्र हैं। हालाँकि, मैंने बोर्ड को डिज़ाइन किया था ताकि सभी निशान नीचे की परत पर हों ताकि एक तरफा बोर्ड के साथ एक पीसीबी मिल (यदि आपके पास एक तक पहुंच हो) पर गढ़ना आसान हो। यह नीचे भी है ताकि घटकों को एक साथ मिलाप करना आसान हो।

हालाँकि, यदि आप PCB चाहते हैं, तो अपने पसंदीदा निर्माता के लिए आवश्यक gerber फ़ाइलें प्राप्त करने के लिए CAM चलाएँ। मुझे OSH Park पसंद है क्योंकि आप उन्हें केवल बोर्ड फ़ाइल देते हैं और वे अपनी ज़रूरत की फ़ाइलें प्राप्त करने के लिए आवश्यक CAMs चलाते हैं।

चरण 3: सोल्डरिंग

टांकने की क्रिया
टांकने की क्रिया
टांकने की क्रिया
टांकने की क्रिया

तो इस बोर्ड को बनाने के तीन तरीके हैं:

  • एक पीसीबी को आबाद करना
  • एक मिल्ड बोर्ड को आबाद करना
  • प्रोटोबार्ड को आबाद करना

पीसीबी को पॉप्युलेट करना काफी सीधा है, और आपको कोई परेशानी नहीं देनी चाहिए क्योंकि सब कुछ लेबल है।

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

अंत में, प्रोटोबार्ड को आबाद करना सबसे अधिक गहन विचार है, हालाँकि, यह बहुत कठिन नहीं है। मेरे पास इस चरण पर कुछ तस्वीरें हैं जो मेरा प्रोटोबार्ड संस्करण दिखा रही हैं और मैं सब कुछ कैसे फिट करता हूं। ध्यान दें कि LM7805, दो 4.7uF कैपेसिटर और स्क्रू टर्मिनल आपके बोर्ड पर नहीं होंगे। मैं इस विचार के साथ खिलवाड़ कर रहा था कि इसमें बाहरी रूप से संचालित होने की क्षमता है, लेकिन एक बार जब मैंने इसके बारे में सोचना शुरू किया, तो मैंने फैसला किया कि यह अंततः बोर्ड की जगह की बर्बादी है।

चरण 4: बूटलोडिंग

बूटलोडिंग
बूटलोडिंग

बूटलोडिंग Arduino की स्थापना:

तो यहाँ वह जगह है जहाँ आपको अपने अन्य Arduino की आवश्यकता है। सबसे पहले यहां जाएं और इस आदमी से फाइलें डाउनलोड करें। इस बिंदु पर, फ़ाइलें कुछ वर्ष पुरानी हैं, लेकिन वे अभी भी बढ़िया काम करती हैं। एक बार जब आप उन्हें डाउनलोड कर लेते हैं, तो optiLoader.ino खोलें और आपका Arduino IDE आपको इसे एक फ़ोल्डर में डालने के लिए प्रेरित करेगा। ऐसा करें और फिर optiLoader.h फाइल को.ino वाले फोल्डर में डाल दें। अब आप उस स्केच को अपने बूटलोडिंग Arduino पर अपलोड करने के लिए तैयार हैं। मैंने एक Arduino Uno का उपयोग किया है, इसलिए मुझे पता है कि यह उसके साथ काम करता है, लेकिन मुझे यकीन है कि यह अन्य बोर्डों के साथ भी काम करेगा।

एक बार जब आप अपने Arduino पर optiLoader.ino अपलोड कर लेते हैं, तो यह कई अलग-अलग Arduino चिप्स को बूटलोड करने के लिए तैयार हो जाता है। मैंने इसे केवल atmega328p के साथ किया है, हालांकि, लक्ष्य MCU का पता लगाने और सही बूटलोडर को फ्लैश करने के लिए कोड सेट किया गया है, जो बहुत अच्छा है। तो अब, जब भी आप इस Arduino को Atmega Companion बोर्ड से स्थापित चिप के साथ जोड़ते हैं और इसे चालू करते हैं, तो यह स्वचालित रूप से पता लगाएगा कि लक्ष्य एक atmega328p है और उपयुक्त बूटलोडर को स्वचालित रूप से फ्लैश करता है। कोई रीसेट जंपिंग नहीं, कोई अजीब सामान नहीं; बस प्लग एंड प्ले।

बूटलोडर को कंपेनियन बोर्ड में वायर करना:

[बूटलोडर Arduino] [Atmega328p साथी बोर्ड]

  • D10 रीसेट / पिन 1
  • D11 MOSI / पिन 17
  • D12 MISO / पिन 18
  • D13 SCK / पिन 19
  • 5 वी वीसीसी / पिन 20 या 21
  • जीएनडी जीएनडी / पिन 22

पिन आईसी के पैरों को ही संदर्भित करते हैं। यदि यह भ्रमित करने वाला है, तो बोर्ड चित्र को योजनाबद्ध/लेआउट चरण से देखें क्योंकि साथी बोर्ड पर पिन लेबल किए गए हैं।

बूटलोडर चमकाना:

अब जब आपने optiLoader.ino स्केच के साथ बूटलोडर Arduino सेटअप प्राप्त कर लिया है और यह अब आपके कंपेनियन बोर्ड को भी वायर कर दिया गया है, तो सुनिश्चित करें कि साथी बोर्ड स्विच "अपलोड" के बजाय "बूटलोड" पर सेट है, और फिर अपने प्लग इन करें एक कंप्यूटर के लिए Arduino। आपको अपने Arduino और Companion Board दोनों पर रोशनी कई बार फ्लैश करते हुए देखना चाहिए। कुछ सेकंड के बाद, दोनों को अंधेरा हो जाना चाहिए और फ्लैश नहीं करना चाहिए। इसका शायद यह मतलब है कि इसने आपके atmega328p IC को बूटलोडर के साथ सफलतापूर्वक फ्लैश कर दिया है। यह सुनिश्चित करने के लिए कि सब कुछ ठीक हो गया, इसे अपने कंप्यूटर में प्लग करें और Arduino IDE और फिर सीरियल मॉनिटर खोलें। बॉड दर को 19200 में बदलें। फिर, यदि यह स्वचालित रूप से पुनरारंभ नहीं होता है, तो अपने Arduino पर रीसेट बटन दबाएं। स्क्रिप्ट क्या कर रही है, इसका वर्णन करते हुए आपको टेक्स्ट का एक गुच्छा देखना चाहिए। अंत में, इसमें कोई त्रुटि संदेश नहीं होना चाहिए और आपको सूचित करना चाहिए कि प्रक्रिया पूरी हो गई है।

यदि आपको कोई त्रुटि मिलती है, तो अपना स्विच जांचें और सुनिश्चित करें कि आप "बूटलोड" पर हैं। यदि आपको अभी भी इस समय त्रुटियाँ मिल रही हैं, तो अपनी सभी तारों की जाँच करें और सुनिश्चित करें कि यह सही है।

चरण 5: अपलोड करना

अपलोडिंग
अपलोडिंग

यह आसान कदम है।

पिछले चरण से सभी तारों को डिस्कनेक्ट करें और स्विच को "बूटलोड" से "अपलोड" पर फ़्लिप करें। अपने FTDI मॉड्यूल में प्लग इन करें। मुझे Adafruit CP2104 और SparkFun CH340G मुख्य रूप से पसंद हैं क्योंकि वे अपेक्षाकृत सस्ते हैं और पिनआउट साथी बोर्ड से आने वाले FTDI पिन से मेल खाता है।

एक बार जब आप अपने FTDI को अपने साथी बोर्ड में प्लग कर लेते हैं, तो आगे बढ़ें और इसे अपने कंप्यूटर में प्लग करें। वहां से, यह सुनिश्चित करने के लिए ब्लिंक उदाहरण स्केच अपलोड करें कि बूटलोडर सही ढंग से फ्लैश किया गया था। बोर्ड मेनू से Arduino/Genuino Uno चुनें। एक बार ब्लिंक स्केच अपलोड हो जाने के बाद, आपको ब्लिंक एलईडी ब्लिंक करना चाहिए, जैसा कि अपेक्षित था। यदि वह काम करता है, तो आप अपने स्वयं के कस्टम स्केच को IC पर अपलोड करने के लिए तैयार हैं, जैसे आप किसी अन्य Arduino के साथ करेंगे।

चरण 6: भविष्य का कार्य

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

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

सिफारिश की: