विषयसूची:
- चरण 1: विशेषताएं
- चरण 2: सामान जिसकी आपको आवश्यकता होगी
- चरण 3: बूटलोडर को जलाना
- चरण 4: इकाई का निर्माण
- चरण 5: योजनाबद्ध
- चरण 6: सॉफ्टवेयर ऑनबोर्ड चल रहा है
- चरण 7: मिनी ऐप 'एसएम' का वीडियो क्लिप चल रहा है
वीडियो: DemUino - होम कंप्यूटर/नियंत्रक: ७ कदम
2024 लेखक: John Day | [email protected]. अंतिम बार संशोधित: 2024-01-30 09:20
DemeterArt द्वारा एक Arduino प्रेरित कंप्यूटर अपने पुराने PS2 कीबोर्ड का अधिकतम लाभ उठाएं। सामान को नियंत्रित करने के लिए इसे एक अनुकूलित व्यक्तिगत कंप्यूटर में हैक करें! मैं हमेशा अपना खुद का होम कंप्यूटर बनाना चाहता था, एक तरह की रेट्रो-शैली, कुछ भी फैंसी नहीं बल्कि मेरी प्राथमिकताओं के अनुरूप विशेष क्षमताओं के साथ। तो, मैं इसे atmega328 MCU और Arduino डेवलपमेंट किट के साथ मिला।
मैं बता दूं कि यह परियोजना संदिग्ध अंतिम परिणामों के साथ काफी अधिक समय लेती यदि यह उन प्रतिभाशाली प्रशंसकों के लिए नहीं होती जो स्वार्थी रूप से हर किसी के उपयोग के लिए फ्रीवेयर पुस्तकालयों की आपूर्ति करते हैं। आप सभी को धन्यवाद:-)
पूरी कहानी पढ़ने और सभी प्रासंगिक फाइलों को डाउनलोड करने के लिए मेरी साइट पर जाएं
www.sites.google.com/site/demeterart
चरण 1: विशेषताएं
- 32KB फ्लैश, 2KB SRAM और 1KB EEPROM के साथ ATMEGA328 पर आधारित।
- इंटरैक्टिव और बैच मोड के लिए समर्थन
- लाइन संपादक और सूची-समय-संपादन मोड
- उपयोगकर्ता ग्राफिक्स के लिए 8 कस्टम वर्ण
- ६० प्रोग्राम चरण क्रमांकित ००,…, ९९
- 'अगर' सशर्त, 'जबकि' और 'लूप' के लिए प्लस 'गोटो' और ब्रांचिंग के लिए 'सब' स्टेटमेंट
- बुनियादी अंकगणित और गणितीय अभिव्यक्ति प्लस बूलियन परीक्षण
- सिस्टम चर समयबद्ध घटनाओं, औसत, आरएमएस, न्यूनतम और अधिकतम मूल्यों को एनालॉग पिन, आदि से अनुमति देते हैं
- सिस्टम चर और कमांड के साथ बातचीत करने के लिए 26 उपयोगकर्ता चर
- उपयोगकर्ता के पता योग्य सरणी के १०४ बाइट्स या ५२ लघु पूर्णांक
- प्रोग्राम डेटा के साथ-साथ कोड ऑन-द-फ्लाई (पी चर) को पढ़ने/लिखने की क्षमता
- छद्म ग्राफिक्स के लिए अनुकूलित पात्रों के साथ मिनी ऑसिलोस्कोप ऐप
- प्रोग्राम और डेटा को EEPROM में/से सहेजें और लोड करें
- लोड/सहेजें प्रोग्राम और चर/से पीसी
- प्रत्येक रीसेट के बाद EEPROM से प्रोग्राम लोड करने और चलाने में autoexec
- 9 GPIO पिन (SPI शामिल) बाहरी DB15 कनेक्टर पर उपलब्ध है
- ध्वनि प्रभाव के लिए बजर
चरण 2: सामान जिसकी आपको आवश्यकता होगी
पीसीबी एलसीडी कैरेक्टर डिस्प्ले (लोकप्रिय समानांतर प्रारूप) RS232 पोर्ट atmel atmega328PU Arduino डेवलपमेंट किट के लिए IDE 1.0.1 LM7805 रेगुलेटर 5V बजर ब्रिज रेक्टिफायर, कैपेसिटर, एक रीसेट पुश बटन के साथ एक पुराना ps/2 कीबोर्ड काफी मोटा है। कनेक्टर्स आदि
चरण 3: बूटलोडर को जलाना
इसलिए, एक 'खाली' atmega328PU चिप खरीदने के बाद निर्णय लिया जाना है। क्या मैं बाहरी या ISP किसी विशेष प्रोग्रामर का उपयोग करता हूं या क्या मैं Arduino बूटलोडर को जानवर में जलाता हूं और यूनिट को उसके UART पोर्ट के माध्यम से प्रोग्राम करने योग्य बनाता हूं? मैंने अपने जीवन को आसान बनाने के लिए बाद वाले को चुना! नया बूटलोडर केवल आधा किलोबाइट फ्लैश मेमोरी पर कब्जा कर लेता है, जिससे उपयोगकर्ता प्रोग्राम और स्थिर डेटा के 31KB से थोड़ा अधिक उपलब्ध होता है। Arduino साइट एक नई चिप पर बूटलोडर को जलाने के मामले को कवर करती है, जब यह वास्तव में लक्ष्य चिप को जलाने के लिए avrdude का उपयोग करने की बात आती है, तो प्रक्रिया विशेष MCU के लिए गलत आईडी का संकेत देने वाली त्रुटि के साथ विफल हो गई। तो कुछ खोज के बाद मुझे यह आदमी मिला जिसने इसे सही पाया और मैंने उसकी प्रक्रिया का पालन किया। केवल अंतर 2 कॉन्फ़िगरेशन फ़ाइलों का था, avrdude.conf और board.txt को इसे संभव बनाने के लिए avrdude और arduino IDE 1.0.1 की आवश्यकता थी। 2 फाइलों को उनके उचित स्थानों पर कॉपी करने के बाद (पहले पुराने का बैकअप लें) टूल-> बोर्ड से 'arduino328' विकल्प उपलब्ध था और avrdude फ़्यूज़ और बूटलोडर को जलाने के साथ आगे बढ़ा। अब चिप नई मशीन के भीतर से प्रोग्राम करने के लिए तैयार है!
चरण 4: इकाई का निर्माण
तांबे के स्ट्रिप्स के साथ एक छिद्रित बोर्ड का उपयोग चिप्स के लिए डीआईपी सॉकेट के साथ एक तेज़ असेंबली समाधान के रूप में किया गया था, आप जानते हैं, बस के मामले में! फिर कनेक्टर्स के लिए छेद और कट, रीसेट बटन और एलसीडी डिस्प्ले को कीबोर्ड के बेहद मजबूत और मोटे प्लास्टिक के माध्यम से खोला गया। हाँ, वह 25 साल पहले बनाया गया था! इसके बाद पीसीबी से विभिन्न बाह्य उपकरणों की ओर निकलने वाले तारों की गड़बड़ी हुई। एक अल्पविकसित निरंतरता जांच और फिर आपूर्ति को उचित वोल्टेज के लिए सॉकेट की जांच करने के लिए बिना किसी चिप्स के आबादी से जोड़ा गया था। फिर 2 IC में आया और नीचे की तरफ इसके प्लास्टिक स्नैप्स के जरिए कीबोर्ड केस को मजबूती से बंद कर दिया गया। इकाई नियंत्रक में रेखाचित्रों को जलाने के लिए तैयार थी!
मेरा सुझाव है कि MAX232 चार्ज पंपों के लिए नॉनपोलर 1uF/16V कैपेसिटर का उपयोग किया जाता है। संबंधित वीसीसी और जीएनडी पिन के जितना संभव हो सके दो चिप्स के लिए 100nF डिकूपिंग कैपेसिटर का पता लगाएँ। LM7805 रेगुलेटर के संदर्भ में पावर और ग्राउंड के लिए स्टार कनेक्शन का उपयोग करें। स्विच 2 इम्पेमेंटेशन के आधार पर एक जम्पर हो सकता है लेकिन कुछ मामलों में होस्ट पीसी से अवांछित एमसीयू रीसेट से बचने के लिए यह अच्छा है। किसी भी दर पर, Arduino IDE को लक्ष्य MCU (RS232 का पिन DTR) को रीसेट करके स्केच को जलाने की अनुमति देने के लिए स्विच को बंद किया जाना चाहिए। मेरे मामले में कनेक्शन स्थायी है (हमेशा बंद)। ड्राइविंग गेट से कई एनएफ कैपेसिटेंस को अलग करने के लिए बजर के लिए एक श्रृंखला प्रतिरोधी का उपयोग करें … आप कभी नहीं जानते.. नियंत्रक के संबंधित पिन के जितना संभव हो सके एक्सटीएएल और लोडिंग 18-22 पीएफ कैपेसिटर्स का पता लगाएं।
रेक्टिफायर ब्रिज के कारण यूनिट को एसी और डीसी पावर एडेप्टर दोनों द्वारा संचालित किया जा सकता है। डीसी के मामले में, एडॉप्टर और रेगुलेटर के इनपुट के बीच 1.5 वी वोल्टेज ड्रॉप होता है। एसी के मामले में रेगुलेटर का इनपुट एडॉप्टर के आरएमएस आउटपुट का लगभग 1.4 गुना या लोडिंग के कारण कम होता है। यदि नियामक के इनपुट और उसके आउटपुट (+5V) के बीच का अंतर बड़ा है, जैसे 7 वोल्ट, तो नियामक द्वारा खपत की जाने वाली शक्ति 0.5 वाट तक पहुंच जाती है और एक छोटे से हीटसिंक का उपयोग करना बेहतर होता है जिस पर चिप को माउंट किया जाता है (बशर्ते इसके लिए जगह है) गर्म मौसम में लंबे समय तक संचालन के लिए।
आपके बाहरी भार (DB15 कनेक्टर के माध्यम से) के आधार पर AC इनपुट फ़्यूज़ का चयन किया जा सकता है। अन्य कारक जो फ्यूज पसंद को प्रभावित करते हैं, वे हैं एलसीडी की एलईडी बैकलाइट के लिए वर्तमान सीमित अवरोधक, चार्जिंग करंट के लिए ब्रिज कैपेसिटर और आपूर्ति ट्रांसफार्मर की वर्तमान क्षमता।
चरण 5: योजनाबद्ध
चरण 6: सॉफ्टवेयर ऑनबोर्ड चल रहा है
यह वह स्केच है जो यह सब करता है… और 32KB पर्याप्त नहीं है! आप या तो इसे असंशोधित उपयोग कर सकते हैं, इस मामले में मैं अपने नाम के संदर्भ की सराहना करता हूं, या इसे इच्छानुसार बदल देता हूं और मेरे बारे में भूल जाता हूं;-)
यह मशीन के बारे में विस्तृत दस्तावेज है।
कमांड और एक्सप्रेशन का सारांश
: एक गैर-मुद्रण योग्य टिप्पणी पंक्ति
एआई: इंटरप्ट 0 संलग्न करें (पिन डी 2)
एआर: एनालॉग पढ़ें
aw: 'एनालॉग राइट' प्रति arduino या अधिक ठीक से pwm
सीए: एक सरणी में एनालॉग कैप्चर
cl: डिस्प्ले cno को साफ करता है: रिटर्न *Prgm लाइन नंबर का इंडेक्स
di: दालों की एक श्रृंखला की प्रतीक्षा करें और अवधि और समय मापें
डीएल: देरी
करो: 'क' के साथ संयोजन में
डॉ: डिजिटल कोई भी पिन पढ़ें
dw: डिजिटल कोई भी पिन लिखें
एड: पीसी / रेनंबर लाइनों से संपादक मोड / लोड प्रोग्राम
एल: EEPROM एक्सेस फंक्शन
अंत: एक कार्यक्रम का अंत विवरण
एनएसबी: सबरूटीन समाप्त करता है
es: EEPROM एक्सेस फंक्शन
fl: सरल चलती औसत फ़िल्टर
fr: अगले लूप के लिए (fr-nx)
गो: प्रोग्राम स्टेप पर जाएं
gosb: सबरूटीन के लिए निष्पादन जारी रखें
gt: उपयोगकर्ता इनपुट की प्रतीक्षा करता है
अगर: स्थिति का परीक्षण करें और कदम पर जाएं
आईओ: जीपीआईओ 1-9 बिट्स
ld: EEPROM से प्रोग्राम लोड/मर्ज करें
lp:: इंटरेक्टिव मोड में कीबोर्ड नियंत्रित लूप
ls: सूची मोड / पीसी को एक बार में एक लाइन प्रोग्राम भेजें
एमएल: समय प्राप्त करें
मिमी: मुक्त स्मृति प्रदर्शित करें
nos: संख्या को स्ट्रिंग में कनवर्ट करता है
nx: 'fr' के साथ संयोजन में
pl: प्लॉट सरणी cxx
अपराह्न: इन या आउटपुट के लिए पिन सेट करें
पीआर: एक संदेश या मूल्य या कस्टम चरित्र प्रिंट करता है
rgc: सरणियों के लिए रेंज कॉपी कमांड
आरजीएस: सरणियों के लिए रेंज सेट कमांड
आरएन: रैम में प्रोग्राम चलाएं
रुपये: सॉफ्ट रीसेट
rx: RS232 के माध्यम से एक वर्ण प्राप्त करें
सी: घड़ी और डेटा पिन के साथ तुल्यकालिक सीरियल इनपुट
एसएम: मिनी ऑसिलोस्कोप ऐप स्नो: स्ट्रिंग को संख्या में परिवर्तित करता है
तो: घड़ी और डेटा पिन के साथ तुल्यकालिक सीरियल आउटपुट
उप: सबरूटीन घोषित करता है
sv: प्रोग्राम को EEPROM में सेव करें
टीएन: बीप ए टोन
tx: RS232. के माध्यम से एक संख्या संचारित करें
wh: 'डू' के संयोजन के साथ प्रयोग किया जाने वाला एक डू-लूप लूप
चरण 7: मिनी ऐप 'एसएम' का वीडियो क्लिप चल रहा है
पूरी कहानी पढ़ने और सभी प्रासंगिक फाइलों को डाउनलोड करने के लिए मेरी साइट पर जाएं
www.sites.google.com/site/demeterart
सिफारिश की:
कंप्यूटर से कंप्यूटर पर बड़ी फ़ाइलें कैसे भेजें: 6 कदम
कंप्यूटर से कंप्यूटर पर बड़ी फ़ाइलें कैसे भेजें: जैसे-जैसे तकनीक आगे बढ़ती है, फ़ाइल का आकार बढ़ता रहता है। यदि आप एक रचनात्मक शिल्प में हैं, जैसे कि डिज़ाइन या मॉडलिंग, या सिर्फ एक शौक़ीन, बड़ी फ़ाइलों को स्थानांतरित करना एक परेशानी हो सकती है। अधिकांश ईमेल सेवाएं अधिकतम अनुलग्नक आकार को लगभग 25 तक सीमित करती हैं
DIY कदम/डीआईआर लेजर गैल्वो नियंत्रक: 5 कदम (चित्रों के साथ)
DIY STEP / DIR LASER GALVO कंट्रोलर: नमस्ते, इस निर्देश में, मैं आपको दिखाना चाहता हूं कि आप ILDA मानक गैल्वो लेजर स्कैनर के लिए अपना खुद का स्टेप / dir इंटरफ़ेस कैसे बना सकते हैं। जैसा कि आप जानते होंगे कि मैं "DIY-SLS-3D-Printer" और "जेआरएलएस १००० DIY एसएलएस-३डी-पी
YABC - फिर भी एक और Blynk नियंत्रक - IoT क्लाउड तापमान और आर्द्रता नियंत्रक, ESP8266: 4 चरण
YABC - फिर भी एक और Blynk नियंत्रक - IoT क्लाउड तापमान और आर्द्रता नियंत्रक, ESP8266: हाय मेकर्स, मैंने हाल ही में घर पर मशरूम उगाना शुरू किया है, ऑयस्टर मशरूम, लेकिन मेरे पास घर पर पहले से ही 3x नियंत्रक हैं जो मेरे घर काढ़ा, पत्नी के लिए किण्वक तापमान नियंत्रण के लिए हैं। अब यह कोम्बुचा काम भी कर रहा है, और गर्मी के लिए थर्मोस्टेट के रूप में
कंप्यूटर जॉयस्टिक के रूप में PSP का उपयोग करना और फिर PSP के साथ अपने कंप्यूटर को नियंत्रित करना: 5 चरण (चित्रों के साथ)
कंप्यूटर जॉयस्टिक के रूप में पीएसपी का उपयोग करना और फिर पीएसपी के साथ अपने कंप्यूटर को नियंत्रित करना: आप पीएसपी होमब्रू के साथ कई अच्छी चीजें कर सकते हैं, और इस निर्देशयोग्य में मैं आपको सिखाने जा रहा हूं कि गेम खेलने के लिए जॉयस्टिक के रूप में अपने पीएसपी का उपयोग कैसे करें, लेकिन यह भी है एक प्रोग्राम जो आपको अपने जॉयस्टिक को अपने माउस के रूप में उपयोग करने की अनुमति देता है। यहाँ मेटर हैं
Windows कंप्यूटर पर Linux कंप्यूटर से X प्रोग्राम प्रदर्शित करने के लिए SSH और XMing का उपयोग करें: 6 चरण
विंडोज कंप्यूटर पर लिनक्स कंप्यूटर से एक्स प्रोग्राम प्रदर्शित करने के लिए एसएसएच और एक्समिंग का उपयोग करें: यदि आप काम पर लिनक्स का उपयोग करते हैं, और घर पर विंडोज का उपयोग करते हैं, या इसके विपरीत, आपको कभी-कभी अपने अन्य स्थान पर कंप्यूटर में लॉग इन करने की आवश्यकता हो सकती है। , और प्रोग्राम चलाते हैं। ठीक है, आप एक एक्स सर्वर स्थापित कर सकते हैं, और अपने एसएसएच क्लाइंट के साथ एसएसएच टनलिंग को सक्षम कर सकते हैं, और एक