Gameduino 2 लाइब्रेरी का उपयोग EVE TFT मॉड्यूल के साथ करना
6 जुलाई 2023
जेम्स बोमन द्वारा लिखित गेमडुइनो 2 लाइब्रेरी, FT80x/FT81x ग्राफिक कंट्रोलर IC सीरीज़ के लिए डिज़ाइन की गई है और विभिन्न माइक्रोकंट्रोलर को सपोर्ट करती है। इस लाइब्रेरी में सरल "हेलो वर्ल्ड" प्रोग्राम से लेकर विजेट का उपयोग करने वाले, माइक्रोएसडी कार्ड से PNG फ़ाइलों तक पहुँचने वाले और बोर्ड गेम सिमुलेशन उत्पन्न करने वाले अधिक जटिल प्रोग्राम तक, कई उदाहरण स्केच शामिल हैं।
इस ट्यूटोरियल में, हम अपने NHD-4.3-480272FT-CSXP-CTP मॉड्यूल को चलाने के लिए Arduino Uno का उपयोग करेंगे और बुनियादी "हेलो वर्ल्ड" स्केच को कंपाइल करने के लिए आवश्यक परिवर्तनों को सूचीबद्ध करेंगे।
इस ट्यूटोरियल के लिए संगत TFT EVE डिस्प्ले
यह गाइड निम्नलिखित न्यूहेवन डिस्प्ले ईवीई टीएफटी मॉड्यूल के साथ गेमडुइनो 2 लाइब्रेरी के उपयोग को कवर करती है:
| डिस्प्ले आकार | भाग संख्याएँ |
|---|---|
| 3.5 इंच टीएफटी | NHD-3.5-320240FT-CSXP-T |
| 4.3” टीएफटी | NHD-4.3-800480FT-CSXP-CTP NHD-4.3-480272FT-CSXP-CTP NHD-4.3-480272FT-CSXP-T |
| 5.0” टीएफटी | NHD-5.0-800480FT-CSXP-CTP NHD-5.0-800480FT-CTXL-CTP NHD-5.0-800480FT-CTXL-T |
| 7.0” टीएफटी | NHD-7.0-800480FT-CSXV-CTP NHD-7.0-800480FT-CSXV-T |
हार्डवेयर और सॉफ्टवेयर आवश्यकताएँ
Gameduino 2 लाइब्रेरी का उपयोग करने के लिए, आपको निम्नलिखित की आवश्यकता होगी:
- न्यूहेवन डिस्प्ले 4.3 इंच आईपीएस ईवीई कैपेसिटिव टीएफटी NHD-4.3-480272FT-CSXP-CTP
- न्यूहेवन डिस्प्ले 20 POS FFC
- न्यूहेवन डिस्प्ले NHD-FT81x-SHIELD
- Arduino Uno
- यूएसबी 2.0 केबल टाइप ए/बी
- Arduino IDE टूल स्थापित हो गया है
- 9V पावर सप्लाई
- गेमडुइनो2 लाइब्रेरी
- ईव एसेट बिल्डर (छवियों के लिए)
सॉफ़्टवेयर सेटअप: लाइब्रेरी को अपने Arduino IDE में लोड करें
Arduino बोर्ड पर Gameduino 2 लाइब्रेरी लोड करने के चरण।
- लाइब्रेरी डाउनलोड करें: अपने प्रोजेक्ट के लिए Gameduino2 लाइब्रेरी डाउनलोड करें ।
- अपना Arduino IDE खोलें: अपने कंप्यूटर पर Arduino IDE सॉफ़्टवेयर लॉन्च करें। किसी भी समस्या से बचने के लिए सुनिश्चित करें कि आपके पास IDE का नवीनतम संस्करण है।
-
Arduino IDE में लाइब्रेरी जोड़ें: Arduino IDE लॉन्च करने के बाद, Sketch > Include Library > Add .ZIP Library पर जाएं। अपने कंप्यूटर पर डाउनलोड की गई लाइब्रेरी फ़ाइल ढूंढें और उसे चुनें।
यदि आप Arduino के लिए लाइब्रेरी स्थापित करने में नए हैं, तो आप Arduino की आधिकारिक वेबसाइट पर विस्तृत निर्देश पा सकते हैं।
- स्थापना की पुष्टि करें: लाइब्रेरी स्थापित हो जाने के बाद, यह नीचे दिए गए चित्र में दिखाए अनुसार IDE में उपलब्ध होनी चाहिए। इसकी पुष्टि करने के लिए, फ़ाइल > उदाहरण पर जाएं, और आपको Gameduino2 सूचीबद्ध दिखाई देना चाहिए। यदि यह दिखाई देता है, तो लाइब्रेरी सफलतापूर्वक स्थापित हो गई है। यदि यह वहां नहीं है, तो प्रक्रिया को दोहराएं या किसी भी त्रुटि का निवारण करें।
यदि आपकी नई लाइब्रेरी उदाहरणों की सूची में दिखाई नहीं देती है, तो Arduino IDE को पुनः आरंभ करना न भूलें। यदि आपको कोई समस्या आती है, तो सहायता के लिए Arduino समुदाय मंच से संपर्क करें।
हार्डवेयर सेटअप
कनेक्ट करने से पहले, सुनिश्चित कर लें कि NHD-FT81x-SHIELD नीचे दिखाए अनुसार Arduino Uno कनेक्शन के लिए J4, J5 और J6 को शॉर्ट किया गया है और J1-J3 को खुला रखा गया है:
अपने Arduino पर शील्ड लगाएं, फिर 20-पिन फ्लैट फ्लेक्स केबल का उपयोग करके TFT डिस्प्ले और शील्ड को कनेक्ट करें और Arduino Uno को 9V पावर सप्लाई से कनेक्ट करें।
Gameduino2 लाइब्रेरी में संशोधन करना
उदाहरण स्केच चलाने से पहले, Gameduino2 लाइब्रेरी को हमारे EVE डिस्प्ले के साथ संगत बनाने के लिए GD2.cpp फ़ाइल में कोड की एक पंक्ति को कमेंट करके संशोधित करना आवश्यक है। ऐसा करने के लिए, नीचे दिए गए चरणों का पालन करें:
- Documents > Arduino > libraries > Gameduino2 > GD2.cpp पर जाएं।
- अपनी पसंद के कोड एडिटर में GD2.cpp फ़ाइल खोलें।
- सुनिश्चित करना
//if (STORAGE && (options & GD_STORAGE))इसे कमेंट आउट कर दिया गया है। - परिवर्तनों को सहेजें और संशोधित फ़ाइल को बंद करें।
ईव टीएफटी रजिस्टर
प्रत्येक डिस्प्ले के लिए आवश्यक समय मान नीचे दी गई तालिका से कॉपी और पेस्ट किए जा सकते हैं।
| टीएफटी आकार | संकल्प | रजिस्टर मान |
|---|---|---|
| 3.5 इंच टीएफटी | 320 x 240 |
GD.wr16(REG_HSIZE, 320); GD.wr16(REG_HCYCLE, 408); GD.wr16(REG_HOFFSET, 70); GD.wr16(REG_HSYNC0, 0); GD.wr16(REG_HSYNC1, 10); GD.wr16(REG_VSIZE, 240); GD.wr16(REG_VCYCLE, 263); GD.wr16(REG_VOFFSET, 13); GD.wr16(REG_VSYNC0, 0); GD.wr16(REG_VSYNC1, 2); GD.wr16(REG_PCLK, 8); GD.wr16(REG_SWIZZLE, 0); GD.wr16(REG_PCLK_POL, 0); GD.wr16(REG_CSPREAD, 1); GD.wr16(REG_DITHER, 1); GD.wr16(REG_ROTATE, 0); |
| 4.3” टीएफटी | 480 x 272 |
GD.wr16(REG_HSIZE, 480); GD.wr16(REG_HCYCLE, 548); GD.wr16(REG_HOFFSET, 43); GD.wr16(REG_HSYNC0, 0); GD.wr16(REG_HSYNC1, 41); GD.wr16(REG_VSIZE, 272); GD.wr16(REG_VCYCLE, 292); GD.wr16(REG_VOFFSET, 12); GD.wr16(REG_VSYNC0, 0); GD.wr16(REG_VSYNC1, 10); GD.wr16(REG_PCLK, 5); GD.wr16(REG_SWIZZLE, 0); GD.wr16(REG_PCLK_POL, 1); GD.wr16(REG_CSPREAD, 1); GD.wr16(REG_DITHER, 1); GD.wr16(REG_ROTATE, 0); |
| 4.3” टीएफटी | 800 x 480 |
GD.wr16(REG_HSIZE, 800); GD.wr16(REG_HCYCLE, 928); GD.wr16(REG_HOFFSET, 88); GD.wr16(REG_HSYNC0, 0); GD.wr16(REG_HSYNC1, 48); GD.wr16(REG_VSIZE, 480); GD.wr16(REG_VCYCLE, 525); GD.wr16(REG_VOFFSET, 32); GD.wr16(REG_VSYNC0, 0); GD.wr16(REG_VSYNC1, 3); GD.wr16(REG_PCLK, 2); GD.wr16(REG_SWIZZLE, 0); GD.wr16(REG_PCLK_POL, 1); GD.wr16(REG_CSPREAD,0); GD.wr16(REG_DITHER, 1); GD.wr16(REG_ROTATE, 0); |
| 5.0” टीएफटी | 800 x 480 |
GD.wr16(REG_HSIZE, 800); GD.wr16(REG_HCYCLE, 928); GD.wr16(REG_HOFFSET, 88); GD.wr16(REG_HSYNC0, 0); GD.wr16(REG_HSYNC1, 48); GD.wr16(REG_VSIZE, 480); GD.wr16(REG_VCYCLE, 525); GD.wr16(REG_VOFFSET, 32); GD.wr16(REG_VSYNC0, 0); GD.wr16(REG_VSYNC1, 3); GD.wr16(REG_PCLK, 2); GD.wr16(REG_SWIZZLE, 0); GD.wr16(REG_PCLK_POL, 0); GD.wr16(REG_CSPREAD, 0); GD.wr16(REG_DITHER, 1); GD.wr16(REG_ROTATE, 0); |
| 7.0” टीएफटी | 800 x 480 |
GD.wr16(REG_HSIZE, 800); GD.wr16(REG_HCYCLE, 928); GD.wr16(REG_HOFFSET, 88); GD.wr16(REG_HSYNC0, 0); GD.wr16(REG_HSYNC1, 48); GD.wr16(REG_VSIZE, 480); GD.wr16(REG_VCYCLE, 525); GD.wr16(REG_VOFFSET, 32); GD.wr16(REG_VSYNC0, 0); GD.wr16(REG_VSYNC1, 3); GD.wr16(REG_PCLK, 2); GD.wr16(REG_SWIZZLE, 0); GD.wr16(REG_PCLK_POL, 1); GD.wr16(REG_CSPREAD, 0); GD.wr16(REG_DITHER, 1); GD.wr16(REG_ROTATE, 0); |
उदाहरण: हैलो वर्ल्ड
उपरोक्त संशोधन संबंधित फ़ाइल में कर लेने के बाद, अब 'हेलो वर्ल्ड' स्केच का परीक्षण करने का समय है:
नोट: निम्नलिखित परिवर्तनों में उदाहरण के तौर पर हमारे 4.3” EVE TFT टाइमिंग/रजिस्टरों का संदर्भ लिया जाएगा।
- File > Examples > Gameduino2 > Basics > Hello World पर जाकर helloword.ino फ़ाइल खोलें।
- प्रतिस्थापित करें
जीडी.शुरुआत(0);साथजीडी.शुरुआत(0,10,5);मेंस्थापित करना()समारोह। - ऊपर दी गई EVE TFT रजिस्टर तालिका से अपने डिस्प्ले के आकार के अनुसार मान प्राप्त करें।
- फ़ंक्शन जोड़ें
टीएफटी_4_3()और इसे सेटअप फ़ंक्शन में नीचे दिए गए कोड में दिखाए अनुसार कॉल करें। - अपने Arduino Uno बोर्ड पर कोड अपलोड करें। स्केच फ़ाइल अपलोड करने से पहले बोर्ड और पोर्ट का चयन अवश्य कर लें। संदर्भ के लिए Arduino IDE में स्केच अपलोड करने का तरीका देखें।
अंतिम कोड कुछ इस तरह दिखना चाहिए:
#शामिल करना#शामिल करना #शामिल करना void TFT_4_3() { GD.wr16(REG_HSIZE, 480); GD.wr16(REG_HCYCLE, 548); GD.wr16(REG_HOFFSET, 43); GD.wr16(REG_HSYNC0, 0); GD.wr16(REG_HSYNC1, 41); GD.wr16(REG_VSIZE, 272); GD.wr16(REG_VCYCLE, 292); GD.wr16(REG_VOFFSET, 12); GD.wr16(REG_VSYNC0, 0); GD.wr16(REG_VSYNC1, 10); GD.wr16(REG_PCLK, 5); GD.wr16(REG_SWIZZLE, 0); GD.wr16(REG_PCLK_POL, 1); GD.wr16(REG_CSPREAD, 1); GD.wr16(REG_DITHER, 1); GD.wr16(REG_ROTATE, 0); GD.swap(); } void setup() { GD.begin(0,10,5); TFT_4_3(); } void loop() { GD.ClearColorRGB(0x103000); GD.Clear(); GD.cmd_text(GD.w / 2, GD.h / 2, 31, OPT_CENTER, "Hello world"); GD.swap(); }
यदि संशोधन सफलतापूर्वक हो गए हैं, तो आपको EVE TFT डिस्प्ले पर निम्नलिखित दिखाई देना चाहिए:
बधाई हो! अब आप हमारे EVE TFT डिस्प्ले के साथ उदाहरण स्केच चलाकर Gameduino2 लाइब्रेरी की रोमांचक क्षमताओं का आनंद ले सकते हैं।
सॉफ्टवेयर समर्थन
कृपया ध्यान दें कि Gameduino2 लाइब्रेरी से संबंधित सभी सॉफ़्टवेयर जेम्स बोमन द्वारा डिज़ाइन किए गए हैं, और इनका निर्माण या रखरखाव न्यूहेवन डिस्प्ले इंटरनेशनल इंक. द्वारा नहीं किया जाता है। Gameduino2 लाइब्रेरी से संबंधित किसी भी अतिरिक्त सॉफ़्टवेयर सहायता के लिए, हम जेम्स बोमन के GitHub रिपॉजिटरी पर जाने की सलाह देते हैं।
संदर्भ लिंक
- गेमडुइनो2 का होमपेज
- गेमडुइनो2 का गिटहब पेज
- गेमडुइनो2 कुकबुक
- FTDI EVE उदाहरण फ़ाइलें
- इस आवेदन पत्र के नोट्स को पीडीएफ फॉर्मेट में देखें या डाउनलोड करें।
अतिरिक्त संसाधन
Gameduino2 लाइब्रेरी के साथ हमारी TFT EVE सीरीज डिस्प्ले का उपयोग करने के संबंध में अतिरिक्त सहायता या हमारे अन्य डिस्प्ले उत्पादों के बारे में प्रश्नों के लिए, कृपया हमारे किसी भी तकनीकी सहायता चैनल के माध्यम से हमसे संपर्क करें:
| ईमेल | techsupport@newhavendisplay.com |
| फ़ोन | (847) 844-8795 |
| सहायता केंद्र | न्यूहेवन डिस्प्ले सपोर्ट सेंटर |
